7 ms·
The case against CS master's degrees
- HeyLaughingBoy 6y agoAnd then there's my old manager who found a negative correlation between a programmer's ability and them holding a PhD in CS. FWIW, he had a MS in Software Engineering himself and he said that the correlation only seemed to hold for CS PhD's, not PhD's in other sciences. My department had a number of PhD's, but only one in CS and that one was hired a few years after that manager left. Correlation isn't causation and all that, but it does bias you a certain way.
- supercasio 6y agoIt's sad that his page about self-studying CS [1] does not include any book specific to the Theory of Computation and Computational Complexity. [1]: https://teachyourselfcs.com/ https://teachyourselfcs.com/
- xhkkffbf 6y agoI hate to be super-negative, but I'm not even sure a bachelors in CS is a good idea. Oh sure, you learn a few good things along the way, but then the professors start dragging you down their favorite theoretical paths. I'm all for philosophizing and navel gazing, but there's not much practical in things like lambda calculus, NP-completeness and some of the other topics. To make matters worse, these pursuits can confuse the brain. I know one fancy CS major who dismissed a problem as unsolveable because it was NP-complete. He missed the fact that the dimensions of the problem were such that a quick heuristic did perfectly fine. The sad thing is that large parts of the curriculum aren't that valuable. Data structures used to be my favorite, but today it's not that important because we stick everything in hash tables or database tables. We rarely use LISTS! The same goes for compilers. No one writes a compiler any more. Apple just repurposed LLVM when they made Swift. But all of the undergraduates have to pull their hair out making toy compilers and for what end? Most of the CS curriculum is pretty extraneous. This is why many companies are deliberately hiring technically competent people from tech fields like physics or chemistry. They learn practical skills to analyze their data-- the kind of practical skills needed by corporations not theory heads.
- NotSammyHagar 6y agoHow many people will get your sarcasm? Why, I could add to your post that even hacker news no longer serves its purpose to be at the central core of computing ;-)
- bobbyz 6y agoIn my experience, the biggest reason doing a bachelors in CS sucks is because it's a massive waste of time, leaving little to no time for side projects. Programming assignment questions tend to be vague and come with poorly scoped requirements. Usually the professor also forgets to tell you several essential details or has made several errors in the code. An average assignment can take upwards of 40 hours, with 10 or more of those hours spent because the professor was too lazy to check over their assignment for 30 minutes before handing it out. The saying that A students work for C students really makes sense in this context. A students never got the chance to work on what they wanted!
- bdcravens 6y agoI'm only being partially snarky when I say that sounds like a great preparation for working in a production environment.
- bobbyz 6y agoEvery time I make this point someone says something to this effect. If you spend your career writing garbage for a ransomware gang or an outsourced app development agency you probably won't have too high an opinion about software development. It's just a difficult thing for me to believe that this happens in large amounts at the best companies.
- bdcravens 6y agoMost jobs aren't at either of those two extremes (garbage vs best companies). There's a lot of work in the middle, where your job is to use your tools to facilitate a business outcome; if your boss has to tell you how to do it, the company probably hired the wrong person.
- _wldu 6y agoThe Georgia Tech OMSCS program is very good and affordable (10K or less). It's also the 7th ranked CS program in the world. And, you can and do interact with professors, not just TAs. I'm an OMSCS grad. I would do it again and strongly recommend it. I think programs like it are the future of higher education.
- daniel-thompson 6y agoOMSCS student here. I agree with the parent. However, the one downside of the program is that since the marginal cost of admitting an additional student is very low relative to the tuition amount, GT has an incentive to not be very selective about who they let in. From a democratization-of-educational-opportunities perspective, that's good: if you can hack it, then you can hack it, regardless of what formal qualifications you might be missing. But this program is the real deal courseware-wise, and that results in a lot of those under-prepared students taking classes that they just can't keep up in. Lots of those students end up washing out of the program... after paying GT a semester or two of tuition. Example: in the Intro to OS course I'm about to finish, we started with 700+ students and are now down to about 340. The projects are typical schoolhouse stuff for systems programming: C programs that manage memory, use sockets, IPC constructs, pthreads, RPC libraries, etc. One of the guys on the class slack just posted that when testing & debugging the projects, he just printed stuff to stdout... for the whole semester... because he doesn't know - and didn't bother to learn - how to use a debugger.
- throwlaplace 6y ago>One of the guys on the class slack just posted that when testing & debugging the projects, he just printed stuff to stdout... for the whole semester... because he doesn't know - and didn't bother to learn - how to use a debugger. Lol that's like the best way to debug C
- yks 6y agoyep, 10+ years in industry and that's how I usually debug (and I know how to use a debugger).
- gedy 6y agoI really enjoyed Electrical & Computer Engineering, and took CS classes as electives. Felt the math and engineering courses grew my brain, and the CS courses were enough to get me into software. The CS majors I knew seemed to enjoy their choice less!
- bryal 6y agoNot everything has to be about work and employability. Some of us actually enjoy learning and exploring the more theoretical topics in CS.
- theamk 6y agoSounds like you should be doing PhD then? At least in my university, MS students were usually paying full tuition, with the understanding that they'll take classes and leave for (presumably) high-paying job. On the other hand, PhD students were usually paying no tuition at all -- instead, after getting their masters-equivalent, they were expected to do the research for a few years and therefore "pay back" by advancing the science. (of course the fun fact was that one could drop out half-way from PhD program and get a MS degree.. but this did not happen very often)
- bryal 6y agoIndeed, I've been considering getting a PhD. The situation in Sweden is quite different to yours however. To begin with, all university education is free, and we further get a student grant of ca. $300 USD / month and access to an almost free student loan for up to 6 years. PhD students all get a salary of ca. $3k USD / month. Also, here you don't get a PhD "instead" of a master's -- a master's is rather a prerequisite to getting a PhD, in practice if not formally. Generally, the path to a PhD in Sweden is: 3 years for bachelor's degree -> 2 years for master's -> 4 years for PhD.
- commandlinefan 6y agoWhat masters degree (or even undergraduate degree) is any of that not true of?
- Rury 6y agoYeah, past a certain point you realize how shallow degrees are, as they're merely an organization's approval that you studied something and demonstrated some level of aptitude of it. Which is to say, you don't need a degree to study/learn things. Though that approval is helpful in opening doors to employment when you're young, it again is not needed when your history of experience, abilities, and work can do the same later in your career...
- alexktz 6y agoMy CS masters completely changed my life. Would 100% recommend if you are open to learning a bunch of cool stuff.
- liquidify 6y agoI did a non-cs undergrad to cs grad path... It was hard. I wasn't admitted to the program without fulfilling almost all the core CS undergrad classes. This meant that between the prerequisites and the actual grad classes, I took over 120 credit hours of pure math and CS classes over the course of 5 years. Obviously not every school has the same demands as others, and there are certainly a lot of degree farms that take foreign students money and funnel them though, but I'm not sure that the authors points ring very true... certainly not for everyone.