Remix.run Logo
Completing a Computer Science Degree on Coursera(notesbylex.com)
61 points by lexandstuff 2 hours ago | 40 comments
angarg12 an hour ago | parent | next [-]

I got a Bachelor, Master, and PhD in Computer Science, with a total of 11 years of education. It's the biggest waste of time of my entire life.

As I progress in my professional career I'm more convinced that pretty much everything in tech is on-the-job learning, and universities are little more than a social club. Nowadays you can learn everything you do at university and far more online and for free.

Universities (elite ones particularly) still give you credentials that have some value getting a job. However I wonder for how long that will still be true. Learning by doing and building a portfolio sounds like a better way of getting in the industry today than getting a multi-year degree with nothing or little to show for it.

Nowadays I wouldn't recommend anyone to get a tech degree in a university unless it's a world class one. And even then, I would focus on networking and finding like-minded people rather than necessarily getting good grades.

zerobees 25 minutes ago | parent | next [-]

Computer science is a weird degree because it was meant to produce computer scientists. Theory of computability, graph theory, discrete math, formal logic, etc. But the world just doesn't need as many computer scientists as it needs people who know JavaScript.

Over time, many CS degrees shifted toward producing software engineers, and it sounds like this person's experience was closer to that. But the problem is that as an engineering discipline, software engineering is just profoundly underwhelming. There are basically no universally-respected design best practices, no governing bodies, no calculations of safety limits, no nothing. You grab left-pad from npm and run with that. Or, now, Codex does that for you.

So CS is weird because it's what you're supposed to get if you want a job at Google, but it's also not very useful. It's a very inefficient and expensive way of testing if you're "serious enough", can complete assignments on time, etc.

jimmaswell 16 minutes ago | parent | next [-]

My day job is relatively boring JavaScript components and SPA's, but even there I find things I learned in my Computer Science degree valuable. "Hey, this looks like a finite state machine.." "This could be a simple domain specific language, good thing I had to write compilers in college and I can easily make a simple lexer/parser.." "This other thing is easy to parse if I ingest it into a lexer-resembling state machine.." And I would think the value of understanding algorithmic complexity and so many other fundamental things is obvious, no matter what someone is doing. And you won't waste your time accidentally trying to solve the Halting problem, among other things. Obviously there's nothing a university can teach you that you couldn't theoretically learn somewhere else but I'm seriously not convinced that a Computer Science degree is useless or a poor signal even for someone doing run of the mill React apps.

aleph_minus_one 10 minutes ago | parent | prev [-]

> But the problem is that as an engineering discipline, software engineering is just profoundly underwhelming. There are basically no universally-respected design best practices, no governing bodies, no calculations of safety limits, no nothing.

I somewhat disagree: there exist a lot of deep questions in software engineering, and there do exist some (very, very partial) answers.

The problem rather is that most people don't want to listen to and/or do deep literature research about the few answers that we do have, but rather want to aggressively push their private political agenda about how they want software to be built. With some literature research, it is often not too hard to disprove the "foundations" on which this political agenda is built. But this does not make you admired because you showed serious knowledge about software engineering, but rather near to an outlaw.

TLDR: the problem is not software engineering, the problem is organizational politics.

sky2224 4 minutes ago | parent [-]

What questions in particular are you thinking of that's purely about the engineering and ultimately not the political agenda?

aleph_minus_one a few seconds ago | parent [-]

- If it's about gaining a deep understanding of the topic involved for the pursuit of knowledge, it's science or engineering.

- If it's about manipulating people, it's politics.

none2585 an hour ago | parent | prev | next [-]

I think the biggest thing is most software "engineering" jobs are in no way engineering and are closer to a trade like being a mechanic or (imo) a doctor.

It's fairly rote - you need good judgement and to stay current in latest state of the art but generally speaking you're not researching (nor should you be) cutting edge algorithms or anything.

Add a new button, add some parameters to this analytics call, implement dark mode. These are the things that everyone is doing at their six-figure tech jobs.

unlikelytomato 8 minutes ago | parent | next [-]

and yet, the collective industry has still continued to expand for decades because people overwhelmingly cannot consistently do these tasks without their code collapsing on itself.

imagine if people regularly had tires fall off on their way home from the mechanic. or regularly having to get bones rebroken to set them correctly.

I can agree that much of the work is not true "engineering" but most of what I've seen produced over the years is closer to fraud than anything else.

none2585 7 minutes ago | parent [-]

Ha, definitely agree well said :D

echelon 31 minutes ago | parent | prev [-]

It doesn't have to be like that.

This is choose your own adventure. You can be writing any kind of code you want, including stuff at the frontier.

yodsanklai 18 minutes ago | parent | prev | next [-]

> Nowadays I wouldn't recommend anyone to get a tech degree in a university unless it's a world class one.

I'm in Europe where education is mostly free or inexpensive so it may be different in the US, but it sounds like terrible advice. In most fields, it will be virtually impossible to get a job without a degree, and even in tech it'll be hard. I work in a big tech company, and as far as I can tell, most SWEs do have a degree of some sort. I'm sure there are exceptions, but they are rare.

apsurd 11 minutes ago | parent [-]

causality direction violation. is it because of the degree that people get jobs or is it because everybody tells everyone that they need a degree that they get a degree to permit themselves to apply to get the job?

the productive takeaway is that of course its safer to come with a degree but it’s hardly proof that one needs the degree. Nobody is going to risk their or their kids livelihood on being the variant for the a/b test though.

austin-cheney 19 minutes ago | parent | prev | next [-]

I have always recommended people get an MBA and self teach the development skills. There is a value to higher education:

Bachelors - You can communicate in writing.

Masters - You can plan and prepare business documents for planning and proposals

Doctors - You can do research

To me uneducated people can still have skills, but their utility into management becomes questionable even though education certainly does not make anybody a better manager. I do however question the future value of education if most young people have never read a book or cannot write a simple essay without AI.

For me the ability to communicate is the most important skill, because programming is a form of writing. So, if I were hiring for a software team manager I would have absolutely no reservations about putting them on camera and watching them hand write a 5 page essay within an hour. It’s one of those don’t waste my time and I won’t waste yours kind of things.

aleph_minus_one 18 minutes ago | parent | prev | next [-]

> I got a Bachelor, Master, and PhD in Computer Science, with a total of 11 years of education. It's the biggest waste of time of my entire life.

I disagree: I have fond memories of my university time. I also do really like programming. The problem rather is that there are hardly any job where what you learned and loved at the university (and why you studied - in this case - computer science) is of much use. Keep in mind that your degree was a huge part why one was selected for the job.

I honestly ask myself quite often why employers are so fond of university degrees for programming jobs. If they put much less relevance on this criterion, employers would have a much bigger group of applicants among which they can select - and this means employers could use this to level down salaries.

eager_learner 17 minutes ago | parent | prev | next [-]

Antony Trollope says in 'Eustace Diamonds' that he feels in a lot of professions, experience creates more competent people than mere learning. (Rough paraphrase). In other words, you don't get to be truly competent unless you are earning that experience!

annzabelle an hour ago | parent | prev | next [-]

I got a math degree with mostly pure math courses, and did a few CS and data analytics courses on the side. I used to feel a little behind that I didn't do a proper CS degree, but I found math to be a lot more fun and less time consuming.

After a few years in the workplace I don't feel behind at all, and I'm grateful that I have more potential back up plans and won't be just another unemployed CS major if there's a real contraction in the job market. I've been considering pivoting to being an actuary, or possibly teaching high school.

chorkpop an hour ago | parent | prev | next [-]

Unfortunately a degree required if you don't want your resume immediately filtered.

echelon 29 minutes ago | parent [-]

You can do the Georgia Tech online masters in CS. It's rigorous, demands a lot of time, but carries the full prestige of the on-campus degree.

jimmaswell 25 minutes ago | parent | prev | next [-]

What kind of work do you do now that you feel is entirely unhelped by your time in higher education?

alephnerd 43 minutes ago | parent | prev | next [-]

> Nowadays I wouldn't recommend anyone to get a tech degree in a university unless it's a world class one

This is horrible advice. Hiring is a zero sum game, and a college education is treated as a table stakes requirement which won't change.

When trying to get hired, you are competing against other candidates, and if a tiebreaker is needed, the less risky option will always be hired.

Additionally, where you get your degree doesn't matter too much, but getting one is critical. It can be a BSCS from WGU for all that matters, but getting one is important. Additonally, bootcamps are useless now. Don't waste money on them.

The only exceptions remain veterans from the armed services assuming they were trained in the right MOS.

lvl155 an hour ago | parent | prev [-]

To be fair, you do research at school.

bfung 17 minutes ago | parent | prev | next [-]

Congrats!

> Group projects were also a common complaint. You were randomly assigned a group, but it was often unclear if the participants were even doing the course - many people were in completely ghost groups.

I see that nothing has changed in 20 years. Even when attended the courses physically in person, group project usually had 1 or 2 people doing all the work and the rest nowhere to be found, or just hanging out. :p

AFF87 2 hours ago | parent | prev | next [-]

Congrats on sticking with the impulsive decision and congrats with your first class!

lexandstuff an hour ago | parent [-]

Thank you!

drnick1 an hour ago | parent | prev | next [-]

> The exams themselves are done remotely using Inspera proctoring software.

Then it's almost trivially easy to cheat with a VM, or, failing that, a KVM switch with real hardware.

HoldOnAMinute an hour ago | parent | prev | next [-]

Pure computer science, you can teach it on a chalk board, without ever touching an electronic device.

DenisM 2 hours ago | parent | prev | next [-]

How do employers perceive such diploma? I would try to find out before spending time or money. Did you?

HoldOnAMinute an hour ago | parent | next [-]

I always saw motivated people taking the "road less travelled" as a HUGE green flag.

colechristensen an hour ago | parent [-]

There's a stark difference between self motivated curious people and certification collectors even though on the surface they can look very similar.

alpinisme 29 minutes ago | parent [-]

Yeah but writing detailed blog posts about the experience is usually a signal pointing toward the former group

aleph_minus_one 7 minutes ago | parent [-]

> Yeah but writing detailed blog posts about the experience is usually a signal pointing toward the former group

Writing detailed blog posts about the experience is rather usually a signal that the person is an annoying self-promoter. :-(

doezi an hour ago | parent | prev | next [-]

So… obligatory not in HR and also not a manager. But I’ve helped hire a couple engineers over the last 5ish years. Seems that HR at my companies filter for college degrees, and basically require 2 - 4 more years of experience (sans degree) or pedigree at their last couple companies. Maybe this depends more on the size of the company, but, for <1000 at each of them, HR is strapped for time and shortcuts the interview process with filters like this. I work with a great data engineer who never finished college and is fully self taught, and we’re currently navigating a recent "degree’d" data scientist hire who appears to have lied on their resume and used AI in the interview. Note, they lied about experience and title, not the degree or the companies. So not something a background check would catch.

Kinda sucks that the first barrier to interviewing at most companies is HR, and they generally are the least qualified or motivated to properly assess candidates. I don’t fully blame them, as there are just too many resumes and interviews to go through for the limited time we have in a work day, but great candidates can come from any background and demographic. Edit: Sample size of 1 here, so take with an appropriately sized (whale?, school bus?) grain of salt.

dominotw an hour ago | parent [-]

Lying seems to be the only way to get a job these days

scrame an hour ago | parent [-]

True, because lying is the currency that HR and Recruiting traffics in.

alephnerd an hour ago | parent | prev [-]

I've hired non-trad candidates. We'd treat them as any other hiring candidate.

OP would just put "BSc Computer Science from Goldsmiths, University of London" on his resume and LinkedIn.

jalalx an hour ago | parent | prev | next [-]

Congrats!

lvl155 an hour ago | parent | prev [-]

CS degree is not all that fun. You’re better off doing math and just learning to code on the side.

annzabelle 38 minutes ago | parent | next [-]

If you like math, this is the best advice. I did math with a CS minor, had a great time in college, and I seem to go in the same pool as people with a CS degree for hiring on any team I would actually want to work with. It also opens up a different set of backup plans or potential career switches if you don't want to or can't stay in software long term.

heresie-dabord 36 minutes ago | parent | prev [-]

Further to this point, it's quite common to favour a candidate with a strong STEM degree who has learned to code as an adjacency.

aleph_minus_one 3 minutes ago | parent [-]

> Further to this point, it's quite common to favour a candidate with a strong STEM degree who has learned to code as an adjacency.

... because they know less about programming, and thus think much less deeply how a novel abstraction could look like which solves the problem much more elegantly.

In other words: these applicants more obediently do their work instead of regularly questioning whether there could be a better way and thus rocking the boat too much. :-(