Ask HN: Should I study CS or Law?

6 points by Max_Ehrlich ↗ HN
In high school, I was doing the International Baccalaureate Diploma. There are two Maths there - one that was really difficult, and one that was easy.

I began with the higher-level Math, but it was really difficult. I also didn't really have motivation to study it - not intrinsic ("I love and am really good at Math!") or extrinsic ("I will die to become an engineer").

The English students hardly studied, so I searched what lucrative career I could have if I took English instead.

That was Law. So I happily dropped this higher-level Maths. I have admission to Law at a prestigious London university.

Then I was conscripted in my country. This taught me the value of freedom. I swore I would never be any country's bitch ever again. Multiple citizenships became a priority. I didn't ever want to be any country's bitch ever again. From what I understand, Law is heavily regulated. If I am an English lawyer, I am stuck in England or dependent on my employer to send me (a fresh-faced college grad with no experience) abroad whenever they see fit.

My outlook on career and higher education is just sive.rs/balance + getting rich as the "do what you love [your art]". I want to become a millionaire. Everyone wants to talk about passion and whether I will "enjoy my career", but I think of it just as a head choice. I think the passion comes after you start getting good. Law, as you saw, is not my "passion". I just thought it would be fun. My real passion is acting, but I don't want to taint it by making money off it.

CS seems like the only field where I can make good money, it's a white collar job, solid future, and it will even increase my chances of getting rich. I think the clearest (but still not easy) route to riches is going to Silicon Valley with a startup.

Another key thing with the "never again a country's bitch" is, I've got a green card waiting for me as soon as I land in the USA. So the clock starts ticking the moment I land. Within five years, including university, I could become a citizen. So that's just one year of real time. I won't get such an opportunity ever again in my life (unless I get rich of course).

So CS seems ideal. Everything fits in perfectly.

But I have never in my life done anything related to CS or shown any "passion" for it. The most I've ever made is a static HTML personal website written by hand [which I enjoyed doing very much, for what it's worth].

I am also not great at math. But I can learn. I have clear extrinsic motivation (getting rich).

Right now is US application time, so I don't have the luxury of sponging around dabbling in CS to see whether I like it.

I'd really appreciate all you smart tech guys' advice on what to do with my life [I'm 20].

28 comments

[ 3.1 ms ] story [ 73.0 ms ] thread
Do Cs
Thank you for your reply, do CS because of money, balance, chances of getting rich or everything at once?
Do CS. I also did the IB program, and now am studying a double Major in Math + CS while only having Standard level Math. Im 22. I have worked internships and it's mad fun too. Law seems so boring to me, just paperwork if you ask me. I know it's more than that but it's difficult to become a Barrister.

I must add, try not to focus on the money aspect. It is important but try to study CS out of enjoyment of the material rather than the prize. It's about the journey not the destination.

Thanks a lot for your comment, it's really reassuring to know someone else in my case.

Honestly Law isn't really my "thing" either. It was just convenient and well-paying.

You're right, I was just terrified that I'll hate my life if I do CS

not to mention, with CS you have the freedom of easy to go anywhere in the world to work, granted you have a visa or a work permit of some sort. With Law its more tricky since different jurisdictions require you to pass exams first to make sure you know how the law works in that particular country. Just something to think about.
That. Is absolutely what I want and have been thinking about. It could be worth doing CS just for this alone. The only high-paying field that doesn't need you to chain yourself to any place.

Thanks a lot, this is a crucial point and good to hear it from someone with the same background as I.

I faced the same exact question (I'm from the UK), and I have decided to study law. So I'm studying law now and support myself as a web developer. You don't need a degree to be programmer, but if you intend to study anything then law is something usefull and interesting (to me at least).

I don't think money is everything as a barrister you can actually do something that's really usefull for the community if you chooses.

I still love to code and enjoy what I do.

But it's only my opinion, do what your heart tells you.

Thanks. But if I study in the USA, I get citizenship fast and easy + law is not an undergrad degree over there. So maybe it would be worth studying CS instead.

As a barrister, I think maybe I would be doing something useful for the community but what I really want is to become a millionaire

Many U.S. law schools have LL.M. programs if you do get an LL.B. Such a degree, if from an ABA-accredited law school, would then entitle you to sit for the bar in the United States.

That said, I was admitted to the bar 12 years ago, and I often wish I'd taken the CS route. Your mileage my vary.

> would then entitle you to sit for the bar in the United States.

Note that there is not one set of requirements to “sit for the bar exam in the United States”; each separate jurisdiction in the US has its own bar exam requirements, which typically include more than just what law school you go to. See, https://www.americanbar.org/content/dam/aba/publications/mis...

And the gravamen of those requirements is to have a law degree from an ABA-approved law school. Some states (e.g., California) do not have that requirement. All states I'm aware of also have a character and fitness requirement. But it is nevertheless the case that the biggest hurdle for the vast majority of people, before they can take the bar exam, is having a law degree from an ABA-accredited law school.

Which is why the link you provided highlights only those two requirements...

I have seen a lot of people "in it for money" and they are just horrible software engineers because they don't actually care about the profession. These folks rarely excel at the position and have to side-step into other titles (PM, business analyst, etc.) that require less technical knowledge. That is perfectly okay, I don't look down upon people or anything like that, just observations.

I also work with excellent software engineers that don't have CS degrees. The basics of what someone needs to know to be a good software engineer is available freely online to self-learn. If you don't have any interest in just taking an online free CS class or figuring out how things work without a financial incentive then maybe this profession isn't for you. Constant learning is part of the career. Try some CS classes before committing to a decision.

> I swore I would never be any country's bitch ever again

Seriously research visa programs for the US. You may be in the same scenario, just a different country. Or if the visa program is smooth for university you may end up "be a company's bitch" because then a work visa requires sponsorship by a company. There are many companies (typically smaller, like startups) that won't hire on visa's because they don't have the legal or financial capacity to sponsor. Heck some of them restrict their hiring to one or two US states because they don't have the HR/payroll side of things setup for other states.

Thanks for the advice.

For the country's bitch part, I've got a green card waiting for me in the USA if I choose to study there. I fly in, and I'm already a permanent resident and then a citizen in five years. So hopefully that should work out

Don’t.

A lot of people in CS are passionate about what they’re doing. They start early (in their early teen), and just love it. They breath and live for it. You’re never going to measure up to them cause it’s all very technical, and quite boring to most outsiders.

You also need a certain mindset to be good at it, which you can’t know cause you’ve never tried it.

If you’re not excellent at it, you won’t get rich at all. You’ll get middle class, which is fine for most, but you won’t retire in your 30 and pursue an acting career.

If what you really want to is acting. Do it now. Acting requires a lot of training. And when you’re 30, it’s kind of late to get in the game.

If you want to do acting for fun while making money with a full time job, go and work in finance. It’s a little complicated but not too much, and you’ll find most people there are in it for the money. With some work, you’ll get good salaries quickly.

And honestly change your attitude. You’re coming across as an entitled brat who thinks everything is easy for them and you could be just as good an engineer as you’d be an actor. Life ain’t that easy.

Passion verses Money – a different story

When I graduated university, with CS, I had a number of friends who were biology majors. Myself I had a passion for CS so I was fortunate in that way.

My friends who were biology majors all had a passion for biology. To them their choice was as obvious as mine.

We all obtained jobs after university. Mine was a 50 to 60 hours a week doing SW development, which I loved. The biology majors, at that time and location, could only find a job at the waste processing plant. Sadly their pay was just above minimum wage. All of them lamented to me how they regretted their degree and wish they had been like me and had a degree in something that paid well.

Roll forward a few years and I am working at another company and I, and half the other software engineers get laid off. Went from 200 to about 100. Of the 100 of us let go, about 30 of the people, who had been in SW development for a number of years, all cried, “Thank GOD! I have always hated this”. This surprised me. I naively assumed everyone would do what they loved.

End result (TL;DR):

Step 1 – what will make you enough money to make you happy – (need to really analyze what you need to be happy, the answer of a 6 figure salary is too flippant to be accurate).

Step 2 - List those jobs that pay enough.

Step 3 - Of those jobs trim out jobs you would hate or are incapable of.

Step 4 - With the remaining apply a financial delta based on how much it is worth to you to do a job you love verses a job you are willing to do.

Having said all of that I am looking to taking a lesser job soon as I do not enjoy my current type of work as much as I thought I would.

Thanks a lot for that anecdote. What is a financial delta, though? Is it calculating risk?
Do something you like. If you do, there is a good chance you’ll rise at the top 30%

If not, you risk being at the bottom 30%.

That is true, just that I think in CS the bottom 30 is still earning more and has more geographical mobility than an English major, say.
There is a field called "international law". It pays pretty well. And you wouldn't have to reside in any particular country to do it.
I didn't think about that. Thanks I'll research about it
Research if you can get rich in your country with cs. In The Netherlands you can’t, unless you’re top of the 1% in the HFT space.

I did cs for the money. I was also mildly interested in it. A few things I have noticed.

1. CS is not math, I suck at math but am ok at CS, including datastructures and algorithms

2. It’s a lot of step by step thinking. I didn’t know that beforehand and I like step by step thinking.

3. It’s also wrapping your head around a “world”. Example: I had a lot of difficulty understanding what servers were. In part, it’s because I am Dutch and “server” sounds like “waiter” and I would then ask why a computer needs to be a waiter. The better you are at English, the easier it is. And god forbid that I understood what caches are. I am so thankful I learned about geocaching (a game) on HN. It made it a lot more clear.

4. Following HN while learning cs makes it a lot more fun

5. Hacking is not cs. Try it, you might like it. Also, reverse engineering feels really different to other forms of hacking

For all intents and purposes, CS is a kind of math, it's just a different flavor than, say, differential equations. The amount you need to know to get a job is just pretty low compared to the depth available for study.
If the amount I need to know to get a job is not as that available for study, then that is a great relief. Thanks
Yes. I’ve been working in SV for 6 years. I’m more formally educated than your average coder, and still, when I open most CS whitepapers I just see hieroglyphics.
Regarding 3, server means waiter in English as well. It's so named because both are similar; much as you would ask a restaurant server to bring you stuff, so too do you ask the computing server to bring you stuff, and it does.
Thanks a lot for your advice. Interesting that you can't get rich with cs in all countries, but I think that in the USA at least I should be able to launch a business or something.

Thanks for the reassurance and sharing that you did it for the money and were only mildly interested like how I am right now. Hell, from what you've described it even sounds like I might enjoy it o.O

Neither. If you want to become wealthy - study business skills (sales, marketing, negotiation, market research, media buying, etc.) and look into starting doing something business-y as soon as possible. As a starting point it could be small-scale freelancing, such as making spokesperson or demo videos for brands, which would also help your aspiration to become an actor. Look into location-independent ways to make money online, but watch out for predatory fake gurus out there.

Be careful with your expectations to become rich in software if you have written zero lines of code (HTML doesn't count) at this point. You may hear about six-figure salaries and lamentations on the supposed developer shortage. However getting from zero lines of code to six figure SV salary (or even any kind of paid developer position) will be a significant challenge, especially if you don't have an intrinsic motivation to do technical work. Software is a bit of gold rush right now and extrinsic motivation can only take you so far when you try to practice dry-as-fuck theoretical CS puzzles in order to pass the interview, or when debugging a gnarly bug.

Lastly, employment is not that good of a way to become wealthy, as it entails making money on someone else's terms. It is in their best interest to pay you as little money as they can get away with. On the other hand, being self-employed enables you to offer your work to market on your own terms, at the price you decide. There's no upper (or lower) bound on how much you can make.

Thanks for this, I agree with everything you've said here. I agree that business skills will ultimately lead to wealth, but I would like to have a degree and be a graduate first.

I know it's going to be a struggle, and I hope I enjoy it at least a little bit if I follow through with CS. Employment is definitely not a good road to wealth, but with CS maybe I will learn those technical skills to make something of value later on.