Forgot your password?
typodupeerror
Programming Education

Does Learning To Code Outweigh a Degree In Computer Science? 546

Posted by samzenpus
from the most-bang-for-your-buck dept.
jjp9999 writes A college degree may not the best route when it comes to jobs in coding. Jobs for computer science majors flow aplenty, yet employers (and job-seekers) often learn quickly that the college grads don't have the skills. "This is because the courses taught in virtually all computer science curriculums focus on theory, and they only dabble in teaching practical programming skills," says Cody Scholberg on Epoch Times. This ties into a unique factoid in the world of programmers. Nearly half of the software developers in the United States do not have a college degree. Many never even graduated from high school. Instead, many aspiring programmers are turning to open source learning materials, or to the new programming bootcamps popping up around the United States. While theory does have its place, the situation raises the question of whether colleges are teaching the right skills people need to join the workforce, and what its place is amid the rise of open source learning.
This discussion has been archived. No new comments can be posted.

Does Learning To Code Outweigh a Degree In Computer Science?

Comments Filter:
  • Probably not. (Score:4, Interesting)

    by Richy_T (111409) on Wednesday September 03, 2014 @03:11PM (#47819127) Homepage

    I wouldn't say learning to code outweighed a college degree. But having the mentality that would lead one to want to learn to code... That's a sure bet. Of course, that mentality might lead one to attend college but it's my contention that that is less advantageous for many (certainly it turned out to be a time sink for me).

  • by 140Mandak262Jamuna (970587) on Wednesday September 03, 2014 @03:15PM (#47819167) Journal
    In India many colleges and universities offer Master/Bachelor of Computer Applications degrees. It started out teaching simple Word, Excel, dBaseIII, FoxPro. Now a days they have added PeopleSoft and Oracle too. Some colleges add things like Ansys, ProE, ProSteel, Fluent, Ansoft HFSS etc.

    These are the graduates who end up in USA via H1-B process most of the time in HR, IT, banking projects. Quality of the graduates vary significantly. But they all make decent salaries in USA, comparable to high quality engineering grads from US schools on salaries. I have seen these programmers of questionable abilities pulling 100K to 140K a year easily.

  • by RedMage (136286) on Wednesday September 03, 2014 @04:00PM (#47819737) Homepage

    We've been arguing this for more than 20 years. Not much has changed, and it's not a new question. Code Slinger vs. Book Knowledge. College of Hard Knocks vs College of Ivy. I'm a greybeard now, and while I won't pretend to answer the whole question, I will provide some perspective...

    I was a code slinger type - Right out of high school with some programming knowledge, some commercial success (with the C64), and whole lotta balls. I did some college, but it wasn't for me at the time. It didn't connect with what I wanted to do, which was code. I joined a contracting house, and they sent me all over the country. I learned more in 10 years doing that than any college would ever teach. Databases, Integration, GUI's, network programming, mulithreaded programming, and real-world problems, both programming and political. C, C++, Cobol, Fortran, BASIC, assembly (various), and eventually Java.

    In the late 90's, I went back to school. Why? Not to learn programming - I was already at the top of my game. I went back to learn all the other stuff, and to do other things. I took psych courses, math courses, art classes, electronics, music, law, languages (Living: French, Dead: Nahuatl) ... I did it on my terms (Harvard Extension, no time limits.) I will graduate next year.

    Do colleges teach some basics? Sure - Data algorithms and Graphics programming were very useful. Are they realistic? Not really - sometimes horribly so. Massively Parallel Programming was a mess of math decomposition problems I dropped quickly. Did I need them to enter a career of commercial programming? Nope.

    I would say college education is not a prediction of coding ability. Having a college degree when you are entering the field can be useful, but having a CS degree IMHO is not any more useful than a general BA or BS. If you go to college, go to get a general education, learn how to think critically, expose yourself to some interesting things - but it is NOT a training program for coders. Technical schools are a whole 'nother thing, and I would avoid them like crazy. My experience is that they do train you, but the training is narrow and short-sighted. In the end, it would be throw-away time, and the student would have very little gained.

    College? Sure - go do it. You will be a better person, and you will have some great social experiences. But if you want to code, you need to put the time in yourself and learn the skills. College won't teach you that.

  • by Anonymous Coward on Wednesday September 03, 2014 @04:04PM (#47819785)

    With someone that just codes, runtime equals XXX ms, with a comp. scientist, runtime equals big O notation for time and space.

    In fairness, anyone who actually learns to program on their own can muddle through with a couple of printf's and a stopwatch to see where things are slow. the De Morgan's comment way up there is a good example. I don't care if it takes 1ns or 10ns to compute if I'm doing it a couple times. Honestly, even if I'm doing it a on a million items, O(N^2) vs O(N) isn't a big deal - hardware is cheaper than my time. If we're talking about something taking hours instead of minutes or even minutes vs seconds for most things, it might be worth seeing where the bottleneck is, but in most cases saving someone a minute a week is not worth spending an hour up front to expedite things, even if there was no possibility of unintended consequences in changes a working, if suboptimal program.

    Life and death, nukes, flight control, e-trading, billion dollar companies? Sure, they'll spend the extra cash, but getting everyone an extra 4GB or SSD will make things a lot faster for the typical small business than spending those resources on any DB or other optimization.

  • by RavenLrD20k (311488) on Wednesday September 03, 2014 @04:09PM (#47819855) Journal

    You may have a BS in Comp Sci, but I'll tell you one thing: I'd really hate having to read your Implementation Docs or code comments if they look anything like the post you just made.

    Your post also brings into question exactly how good of a programmer you really are as well. You see, English, much like programming, has a structure and a syntax. While you may have syntax, there is no structure. You may not have to compete for a job with someone who doesn't have a BS in CS, but you will most certainly have your cover letter compared to another person with a BS in CS who actually puts structure into his correspondence.

  • by unimacs (597299) on Wednesday September 03, 2014 @05:21PM (#47820547)
    That seems to be the question. Personally I'd rather have somebody with experience AND a CS degree. ;)

    I've been in the field awhile and have worked with many people who are self taught and either have no degree or a degree in another field. I've also worked with many CS grads. It's anecdotal but in my experience the CS grads in general will pretty quickly surpass the non grads in programming acumen, - all else being equal (and they seldom are). They often grasp concepts quicker and develop a larger set of tools to draw upon. There are many exceptions of course and I've hired and worked with good software developers that don't have a CS degree. It's not a pre-requisite for working for me but I consider it a strong plus.

    It's not surprising to me that half the programmers in the US don't have a CS degree. That's partly because historically programmers have been in high demand. A more interesting statistic would be which group tends to be more successful in tech careers over the long haul.
  • by Hentai (165906) on Wednesday September 03, 2014 @06:01PM (#47820933) Homepage Journal

    As someone without a BS in anything, I've actually found the opposite.

    Yes, people who are self-taught often have gaps in our knowledge, but we tend to be *much* faster at filling those gaps. Also, the fact that we acquired all the knowledge we did without a college degree indicates that we are motivated to fill those gaps ourselves.

    It is very likely that there are things we have not been exposed to, even if we match your 15 years' experience as a software engineer. However, upon exposure, I am willing to bet that we will beat you soundly at rapid acquisition and assimilation of knowledge - especially since, if you've been in the field for 15 years, your degree is over 15 years old. Which means that plenty of things which are new to me will be new to you, too.

    You're absolutely right that you'll never have to compete for a job with someone that does not have a bachelor's degree. I, on the other hand, have to compete with people like you for the right to do my damn job all the time, because you're absolutely convinced that four years in a university beat four years actually in the field working on real-world problems, while voraciously consuming papers and books, and while corresponding with experts in the field - because unlike you, my tools were not handed to me by a university; I had to build them myself.

    None of which translates well to a bureaucracy-approved stamp I can stick on my resume, so you're right - good on you. You'll get fast-tracked to management, where you'll continue to pretend like you know what you're doing more than I do, where you continue to ignore my explanations of why your harebrained ideas won't work, and where you'll continue to get me fired when they fail in exactly the way I warned you they would. You've certainly got it all figured out.

    Except how to fucking code.

To get something done, a committee should consist of no more than three persons, two of them absent.

Working...