[HN Gopher] The case against CS master's degrees
___________________________________________________________________
The case against CS master's degrees
Author : yla92
Score : 53 points
Date : 2022-07-15 21:03 UTC (1 hours ago)
(HTM) web link (ozwrites.com)
(TXT) w3m dump (ozwrites.com)
| kache_ wrote:
| I was about to write a blog post against CS masters degrees. I'm
| going through a pretty ambitious gauntlet autodidact process.
| Some background: I already have a CS undergrad degree.
|
| - I've found all the online courses I would ever need, alongside
| high quality video courses (MIT, standford, 3b1b) + books
|
| - A masters costs money & too much time (my time is better spent
| than getting an application together) (Opportunity cost of not
| working is too great)
|
| - Arbitrary wait time (I have to apply like, 8 months in advance
| to starting? https://en.wikipedia.org/wiki/Mathematics is
| available right now)
|
| - I already know 80% of the stuff in a CS masters from building
| systems and learning how they work (looking at the syllabus of
| various online masters degrees)
|
| - My employment history is much better for future employment
| opportunities than a masters ever would be. Getting a FANG job
| not only pays you, comparatively to a masters degree. It's also a
| much better signal than "cash cow online masters program"
|
| - I can publish papers at my company if I wanted to (Not being
| gatekept from becoming a researcher)
|
| - My workplace has a mathematics "guild" who I can outsource
| questions to whenever I want. Otherwise, I can go to /sci/'s math
| general or stack exchange.
|
| In university, I learned the computational algorithm to pass the
| lin alg exams, and that took _eight months_. Being an autodidact,
| I relearned the true essence of lin alg in _two weeks_. Now, I
| can derive any computation lin alg operations from first
| principles. I 'd even argue that _undergraduate_ degrees are a
| waste of time. Mandatory electives? Give me a break. After going
| through this autodidact process, I 'm actually offended by how
| much time I've wasted in HS & uni.
|
| I'm basically redoing an undergraduate math degree + a CS masters
| + building real projects throughout it, all in the fraction of
| the time frame. At my current speed, I'll be finished learning
| all what I want to learn in ~2 years, while maintaining a pretty
| demanding FT SWE job. The knowledge provided in both highschool
| and university can be obtained in the fraction of the time, on
| your own. At the end of the day, the only thing that matters is
| what you can engineer & build with your knowledge.
|
| Universities are a meme in 2022. They're largely mechanisms to
| filter out the "peasant non-educated" class, through a proving
| function that can only be passed by coming from a family with
| enough resources.
|
| I'm DONE being slowed down by institutions
| ModernMech wrote:
| Sounds like you're very smart and self motivated, and you're
| good at figuring things out without any help. As a teacher,
| this describes about 1% of my students.
|
| Your post here really isn't an indictment of higher learning
| institutions, so much as it reveals you aren't the target
| audience for master's programs. That it's not for you
| personally doesn't mean it doesn't work for others.
| zeckalpha wrote:
| Any discussion here needs to factor in access of immigrants and
| under represented people to tech jobs.
| rootusrootus wrote:
| IMHO the best reason to get a master's is because you want one.
| For you. Not to fill a spot in a resume or check off a box on
| some application. You can go learn all of it yourself with self-
| study if that's what you're after (much of the curriculum and
| lectures are freely available), and I really think the value to a
| potential employer is fairly limited aside from some narrow
| corner cases. And if you fall into one of those cases you
| probably know it already.
|
| So get it if you think the feeling of satisfaction and
| achievement is worth it. The major cost by far is not money, but
| time, be aware.
| coletonodonnell wrote:
| I'm currently getting my BS in Computer Science with the
| University of Florida's Online Program, and I think that there is
| a duality between academic CS and applied CS, where the overlap
| is massive but college isn't particularly required. I find that
| many courses and tutorials online cover the topics well. Although
| these non-degree courses may not be of equal rigour, I leave them
| understanding the fundamentals needed to succeed in say an
| internship. By self teaching, I have proven that I know enough in
| my Freshman year of college to acquire an internship.
|
| That being said, I think that someone with CS knowledge is always
| going to be more valuable than someone without. I really like
| teachyourselfcs, while in high school I skimmed a lot of the
| material preparing for what I had in store. I think that it's
| entirely possible to get good at CS with this method, but the
| issue is feedback and the stress associated with self teaching.
| Self teaching isn't always so glamorous as it is made out to be,
| a lot of people need the backbone of an actual program with
| structure than be thrown into a text book with courses that may
| go along with said text book. I think that entirely dismissing
| degree programs is equally as unwise as saying they're required,
| there is a lot of gray between the lines and I think that people
| should approach the issue with their strengths and weaknesses in
| mind.
| muh_gradle wrote:
| Doing the OMSCS program for Georgia Tech and interviewers always
| comment on how that's impressive. It's a rigorous program, and I
| definitely think it's helped me grow as a developer.
| pm90 wrote:
| On the Contrary: A Masters Degree is often _easier_ than an
| undergrad degree. You get a lot more freedom to do whatever the
| fuck you want. In most Universities, Masters students can teach
| /do research and get tuition forgiveness.
|
| If you want the experience of being in a college campus for a
| while without the bullshit involved in {undergrad, phd, jobs},
| Masters degrees are the perfect middle ground.
|
| I did a Masters degree. I didn't do very well on some courses,
| really loved others, learned how to read academic papers and what
| research would look like if I wanted to do a PhD. But I also had
| enough free time to make friends, hang out and go on road trips
| and parties. It was a lot of fun!
| xwdv wrote:
| This is pretty much the real reason I'd consider pursuing a
| Masters degree. Being in an academic environment for a while
| sounds fun, even if the resulting degree is fairly useless or
| redundant. I'd love a second chance to be exposed to people who
| could become new friends, while also learning a thing or two
| maybe.
| groestl wrote:
| I can second that - exactly my experience, and I did my Masters
| in Austria.
| havblue wrote:
| Personally, my undergrad was in electrical engineering so I
| always felt a little behind as a software engineer. Getting an
| accredited Master's in software engineering from Harvard
| extension gave me more confidence in a lot of the classes I would
| have taken in undergrad. Not to mention, development has moved on
| in the time since I took my undergrad, so it was kind of a mid-
| career refresher. There are definitely jobs that like seeing a
| Master's as well. So in my case I think it was worth it.
| fortran77 wrote:
| I have a CS masters. I got it because my undergrad degree is in
| math and I wanted to round off my skillset with some CS. I don't
| know if I needed it, but I enjoyed getting it.
|
| The only problem with CS masters is that there's a CS Ph.D. So it
| really doesn't have a lot of value when competing for jobs.
| denvercoder904 wrote:
| The author of the article should replace software engineer with
| software developer. Not being a gatekeeper but this is the proper
| term for the role described in the article.
| hiram112 wrote:
| Maybe 10 years ago I would have been impressed with any candidate
| with a masters from a legit CS department.
|
| However, in the last 5 years I've worked with numerous engineers
| with masters from both "prestigious" universities and also the
| typical "cash-cow" degrees that are so common today.
|
| One of my previous devs had a masters from a "public-ivy" in
| computer science, and he honestly was not qualified for anything
| more than basic CRUD "enterprise". Hate to say it, but he was
| obviously pushed through the system due to his race and the need
| for these schools to fill diversity quotas.
|
| Also, I knew a public school middle school teacher - she was
| bright but had no formal math or engineering or CS education
| beyond basic algebra with her teaching degree, no programming
| experience, etc. But she had been able to obtain a masters in CS
| from a top 10 program via some "Masters in CS for Public School
| Teachers" program. I also took a few masters courses from this
| university, and they were extremely difficult, even for me who
| has a lot of experience and a solid CS bachelors.
|
| For example, some of the qualifying courses included programming
| MIPS in assembly language, binary numbering systems, algorithms
| with assumed knowledge of Big O, data structures, dynamic
| programming, etc. There is _no way_ anyone without both a good
| undergrad CS degree and some dev experience could legitimately
| pass these courses, especially when the program was meant to be
| done by professionals who were already experienced developers at
| night / weekends - so I assume she was pushed through with a
| "wink wink" from the administration.
|
| Finally, the hordes of foreign students getting degrees from
| cash-cow programs in order to remain in the US or obtain OPT
| visas ensure that nobody respects a Masters in CS anymore. Now
| that most of these are online, they're even less legit as you
| know these programs are plagued with cheating, fraud, etc.
| nkozyra wrote:
| > For example, some of the qualifying courses included
| programming MIPS in assembly language, binary numbering
| systems, algorithms with assumed knowledge of Big O, data
| structures, dynamic programming, etc. There is no way anyone
| without both a good undergrad CS degree and some dev experience
| could legitimately pass these courses
|
| What? Of course you can. Like any other subject it takes study
| and practice.
|
| What happens very often in school, though, is you focus full
| throttle on the subject matter to get a good grade. That
| knowledge is extremely fragile, likely to be lost to the wind
| within weeks.
|
| Day-in, day-out experience solidifies that knowledge, but you
| can pass nearly any CS class with bare minimum Python and
| surface level linear algebra / calculus knowledge.
|
| I have an MSCS in machine learning and am not practicing daily,
| so if you ask me to do linear regression without a library I'm
| gonna be in trouble.
|
| I'll probably struggle with Big O on some algorithms without
| putting a lot of thought into it.
| m_nyongesa wrote:
| My experience: I was interested in machine learning and was
| working in industry with no CS background. I was accepted to an
| MS in CS based on my undergraduate work and also programming
| experience. The program was in-person, not online. Through the
| courses and contact with professors both in CS and in other
| departments (Mathematics, Statistics) I developed a far better
| understanding of the field than I would have without being at a
| university.
|
| All of the courses were the same regardless of whether or not you
| were an MS student or a PhD student. Professors actively
| encouraged MS students to continue on to the PhD.
|
| The article says "If your undergrad degree was in some other
| field, you can get through an MS in CS without ever taking an
| algorithms or data structures class." In my department you had to
| take a minimum number of courses from a few categories. For the
| category that included the Algorithms course, I would say at
| least 90% of all students took that course rather than the others
| on offer. It followed CLRS and moved really quickly for someone
| with no undergrad background like me. The course had no
| programming in it so I have no idea what the author is talking
| about when per mentions programming experience.
|
| I think if the program were online it would have been harder to
| have the multidisciplinary experience I got in-person. But for
| people who didn't want that aspect of it, I think an online
| program might work just fine.
| itsmemattchung wrote:
| The author is correct: you do NOT need a (masters) computer
| science degree to advance your career. I've worked with plenty of
| stellar principal software engineers -- some with Phd degrees in
| CS, some with no formal education, most in between.
|
| And while I am a life long learner and continue to self-teach
| myself a range of topics that pique my interest, Georgia Tech's
| OMSCS masters in CS was such a pleasant experience, a rigorous
| one at that.
|
| Hard to beat the sticker price < 10k too.
| f17 wrote:
| I'm guessing the OP is bashing OMSCS based on Reddit comments
| from people who tried a course, found it difficult (because,
| hello, it's _actual graduate school_ at a real university),
| gave up, and are now spreading negativity on the internets
| about something they only gave a half-assed try.
|
| Sure, there are negatives of learning at-scale. Grades are
| going to be exam-driven (noisier) because papers/independent
| projects don't scale as easily, which means there's a chance
| that you do everything right and get a B. Sure, some of the
| videos are a couple years out of date. Overall, though, I've
| taken two GT OMSCS courses and so far the quality has been very
| high... and the professors, in my experience, are also
| constantly trying to make the experience better and more
| flexible.
| itsmemattchung wrote:
| Great to hear. Which two courses have you taken so far and
| have you decided on your specialization? I had specialized in
| computing systems and the courses -- especially compilers --
| was top notch.
| f17 wrote:
| GIOS Spring '22, AI Summer '22.
|
| Really excited about Compilers. I've heard it's very good.
| Haven't decided on a specialization yet; I'm still in that
| phase where everything looks interesting. TBH, there are
| ~20 courses that appeal to me, although if I still feel
| like I want to press on after 10, I'll probably look into
| pursuing a PhD.
| dieselgate wrote:
| For the most part I agree with the author and have heard similar
| sentiments from people with an undergrad cs education. I wish
| people would talk more or elaborate on what it "means" to be
| "self taught". To me, taking a course on a subject is basically a
| subscription to being exposed to a defined set of material.
| Whether an individual learns that material is up to them (is this
| considered "self teaching"?). Formal education (with or without a
| degree tied to it) can lower the activation energy of learning.
| But it is by no means the best way to learn for everyone.
| anewpersonality wrote:
| I would do a masters degree if it could help me be more creative
| and synthesize new ideas.
|
| Does OMSCS do this?
| nix0n wrote:
| Most new ideas build off of existing ideas, so if you want to
| make new ideas, one way is to learn all of the existing ideas
| in a particular field (and a few ideas from other fields) so
| you can reuse those ideas in novel ways.
|
| If you have some idea of what you'd like to have ideas about,
| research in that field is definitely something you can do as
| part of a Masters. I can't speak to the OMSCS specifically, but
| many in-person Masters actually require research.
|
| Don't get suckered into a PhD program, though.
| dwrodri wrote:
| Lots of valid criticisms here against academia, but I'll take
| this time to get on a mini-soapbox about communication skills.
| The biggest value-add I honed over the course of my academic
| career is my ability to communicate technical topics. Now, that
| isn't to say every master's student or CS degree holder is
| definitely better than a bootcamp grad at tech comm, in fact the
| winning combo there would be a communications/english degree +
| bootcamp for entry-level positions.
|
| And this isn't just making presentations and writing
| documentation. It's making effective use of your time in
| standups. It's conversations about your future relationship with
| your employer. It's knowing how to ask the right questions to
| weed out bullshit when digging through other technical
| documentation respectfully. It's taking a bold new idea that
| entered your head and figuring out _which_ way would be the best
| to envangelize it at your organization.
|
| I think in an ideal case, a master's degree in a computing
| discipline hits the intersection between intense training on a
| subfield of computing that can be difficult to break into (e.g.
| statistical machine learning, robotics, formal methods,
| cryptography) and your demonstration of your "mastery" is taking
| a cutting edge concept in that subfield and demonstrating mastery
| through effective technical communication in the form of a
| project/thesis.
|
| A master's degree isn't guaranteed to make you a "better"
| programmer, but I would really hope that it would make you much
| more familiar with the field, and also teach you how to take that
| familiarity and leverage it to become a more effective
| communicator.
| f17 wrote:
| _It 's making effective use of your time in standups._
|
| If you have an advanced degree and your job is making you do
| standups, you should get another job.
| distrill wrote:
| most of the eng on my team have masters degrees, and we have
| standups. this is common where i work and i assume other
| faang
| f17 wrote:
| You should aim for a research environment where you don't
| have to justify your existence to some "product manager"
| every 24 hours. Take it from me as an old person: if you
| work in stupid environments in stupid ways on stupid
| stuff... what happens is exactly what you'd think would
| happen.
| sirmoveon wrote:
| Common to you means right? That was a good point, an
| olympic swimmer trains to swim not to explain how to swim.
| lmm wrote:
| Standups are the worst way of doing status updates except for
| all the others. For me an environment without standups is at
| least a yellow flag.
| adamrezich wrote:
| previously: https://news.ycombinator.com/item?id=22937759 (April
| 2020, 25 points, 45 comments)
| t_mann wrote:
| Someone without a formal CS education who's selling programming
| courses telling you that formal CS courses don't necessarily
| teach you programming (duh).
|
| He has a point that if you do a Master's you _might_ be going
| without the extremely useful basic algorithms and data structures
| courses, but that is easily avoided by choosing a program that
| lets you take that. For other topics that aren 't strictly
| programming, eg AI, ML, game theory, cryptography, quantum
| computing, probabilistic methods, optimization,... it would take
| a significant amount of dedication to match the amount of
| understanding that a rigorous course with problem sets can give
| you in self study.
| kache_ wrote:
| > _For other topics that aren 't strictly programming, eg AI,
| ML, game theory, cryptography, quantum computing, probabilistic
| methods, optimization,... it would take a significant amount of
| dedication to match the amount of understanding that a rigorous
| course with problem sets can give you in self study._
|
| You mean, the same amount it would take to do it through a
| university program? I fundamentally don't believe the material
| is unavailable. If you've done a CS undergrad at a respectable
| university, you should have enough instinct to build a
| curriculum to become well versed in those subjects
|
| I am going through the autodidact process for all of those
| subjects (except quantum computing) (yes, it's brutal,
| especially alongside a FT job). But with the amount of MIT open
| courseware, books, and frankly, just wiki pages available, it's
| been _easier_ than doing it at the pace of a university course
| f17 wrote:
| _For other topics that aren 't strictly programming, eg AI, ML,
| game theory, cryptography, quantum computing, probabilistic
| methods, optimization,... it would take a significant amount of
| dedication to match the amount of understanding that a rigorous
| course with problem sets can give you in self study._
|
| Also, you're going to have an _extremely_ difficult time
| getting to work on that stuff without a degree, given that even
| PhDs often end up on regular business bullshit.
| iskander wrote:
| My experience: The first two years of my CS PhD program, which
| overlapped significantly with the MSc program, were extremely
| engaging and pushed my intellectual boundaries much harder than
| OCW or any other online content.
| armchairhacker wrote:
| CS degrees give you an academic understanding of CS: theory and
| how the things you use actually work. This can be useful
| knowledge but isn't necessary. So CS masters degrees are good but
| also shouldn't be necessary for getting a job.
|
| However you should still require at least a basic "academic"
| understanding of CS, since that is discrete structures and
| recursion and other stuff you pretty much need to know to write
| good software
| master_yoda_1 wrote:
| I fell for this bullshit before i read the last line "This is
| what we have designed the Bradfield Computer Science Intensive to
| be."
| blabla1224 wrote:
| The IT bar to entry the industry is lower than it used to be so
| you really do not need CS degree to become a developer, I think
| that with a time as the supply of these workers increases the
| value of University degrees will be restored as well as the
| meaning of a term of engineer.
| turns0ut wrote:
| Things must be well engineered and they can be without calling
| a person an engineer.
|
| IMO we should focus on defining what well engineered means in
| contexts where a thing must be engineered, not handing people a
| sigil of power to exploit.
| hooloovoo_zoo wrote:
| Worth pointing out that both the author and the lead quote are
| selling alternatives, and neither have actually done a masters in
| CS.
| szundi wrote:
| I think the article has a sentiment that academia is wasted time.
| On the contrary. Of course it has its points, I agree.
|
| I am a self-taught programmer who got later a CS degree. Also a
| self-taught entrepreneur who later (almost) got an MBA.
|
| My experience is that these are much more valuable for people who
| already know how to do the stuff but missing the jargon and
| thoughts of a crowd of exceptionally brilliant people lived
| before us. I am talking about the scientists, inventors of
| algorithms, math, bookeeping, all the concepts. How faster you
| can tell complex thoughts when you just have the vocabulary to
| use. How do you even present a spectacular idea if you have to
| spend half an hour explaining something that you should have
| known has a name.
|
| I never understand how some people get the hubris to think they
| can do better without all this. Of course if they feel they could
| not have used all these in their professional lifes - probably
| getting a degree would have been a waste of time for sure. Some
| of these folks of course are quite capable and can and will do
| big things. Also sometimes you have situations when you have to
| choose between your startup company and the degree. We know some
| successful dropouts. Still, I think there is big value here.
| blamazon wrote:
| I think it should be noted that the Georgia Tech Online Master's
| in Computer Science (known as OMSCS) mentioned in the article
| costs about 7,000 USD, all-in for a 5-semester program. [1] This
| seems to me an amazing bargain for a Master's degree from a
| respected institution in the USA.
|
| [1] https://omscs.gatech.edu/prospective-students/faq
| Whinner wrote:
| They also have an ms of cybersecurity. Depending on the track
| you take, it can end up being 9/10 the same classes needed for
| the CS degree.
|
| I'm currently enrolled and will say the networking is the best
| part. I've found a group of about 50 people in a private slack
| scattered all over the world. We all bounce things off each
| other.
| chrisseaton wrote:
| > Unfortunately, MS programs are nominally designed to build upon
| corresponding BS programs, so most CS master's programs will
| expect you to already know the very things you'd like to learn.
|
| Does the author know about conversion masters?
| sahila wrote:
| This post seems light on any actual data between the difference
| on individuals who have a CS masters and not, and instead argues
| against getting one on a few aux points:
|
| * Opportunity cost
|
| * two tweets of HM saying they don't find it useful
|
| * cs masters aren't geared towards non-cs college grad students
|
| * professors don't know how to handle online teaching
|
| * programs are cash cows (mentioning two non-top-cs programs)
|
| To address the core point about whether those with a masters from
| a top CS program (say top 20) vs self-taught _on average_ do know
| more about programming, in my experience they do! Topics like how
| programs work (interpreted vs compiled languages, memory
| management), how a program talks to the OS and underlying
| hardware, and even topics on AI/ML and how to do deep learning.
| Whether that makes them better at their job depends on what their
| role is - if it's making a web application or working on
| underlying infrastructure in C.
|
| So I guess to provide an alternative view to the author's, there
| are good online programs like UT Austin and Georgia Tech where
| students don't have to take time off work as they can do it at
| night / weekends, both programs are low-cost (~$10k), and do have
| professors who do understand online teaching. I think it's
| important to make sure you pick colleges and classes geared
| towards learning, not go with the intention of specific "job
| training", and likely you'll come out ahead having done it.
___________________________________________________________________
(page generated 2022-07-15 23:00 UTC)