Slashdot Mirror


Is Computer Science Still Worth It?

prostoalex writes "Is it a good idea to go into Computer Science? Yes, there are certainly pending labor shortages as Indian companies outsource to the United States, but speakers of Stanford Computer Forum generally agree that it's a good career choice. From the article: 'To ensure job security, students must learn business, communication and interpersonal skills, Vardi recommended. The personal touch will become as important as technological expertise, he said. "There are jobs galore," agreed Suzanne Bigas, assistant director of the Stanford Computer Forum.'"

18 of 434 comments (clear)

  1. CS Degree = no sunlight by From+A+Far+Away+Land · · Score: 4, Insightful

    It's great being a CS degree holder. You can sometimes get flexible working hours, decent benefits, and an ungodly low level of sunlight in the year. Given the carcinogenic effects of solar radiation these days, coupled with toxins in diet softdrinks, it's probably best that white collar workers live and work indoors though.

    Work for talented programmers will never end. But work for programmers in general will not be as common in the coming years when everyone and their dog can make a website on My Space.

    1. Re:CS Degree = no sunlight by Medgur · · Score: 4, Insightful

      Computing Scientists are not all Programmers. Not all Programmers are Computing Scientists.

    2. Re:CS Degree = no sunlight by Marxist+Hacker+42 · · Score: 4, Insightful

      If we had more programmers with SE degrees we'd have fewer crappy websites. A CS degree doesn't give you the engineering knowledge neccessary to keep your code clean or your site loading fast.

      --
      SJW: a person who perceives an injustice, and while correcting it, commits a greater injustice.
    3. Re:CS Degree = no sunlight by gosand · · Score: 5, Insightful
      Computing Scientists are not all Programmers. Not all Programmers are Computing Scientists.


      THANK YOU. I was about to post the same comment. But let me expand on this concept that people don't seem to understand (especially programmers).


      We need more CS people in general. Why? Becuase the CS degree will give people a decent technical background and understanding of computer related technology. I would much rather have a project manager with a CS degree than a marketing degree or communications degree. But I have yet to see one. Programmers tend to think that the only thing you need is a good programming staff. While that will get you pretty far, there are many other pieces of the software puzzle besides programming. I have been doing software testing and QA for 13 years. I made the choice to go down this path instead of programming. However, many programmers think that I am somehow some kind of "failed" programmer. And no, ex-programmers don't make the best QA people, no matter what Google thinks.


      I think that the more people we have in the software industry with CS degrees, the better. I guess I had better qualify this with the statement that I have no real idea what CS degrees these days are like, I got mine back in '93. There was only 1 software engineering class, the rest was math, hardware/circuits, or programming. I hope that these days they have added more to the curriculum that deals with the process of developing software.
      (taking a few writing classes wouldn't kill you either)

      --

      My beliefs do not require that you agree with them.

    4. Re:CS Degree = no sunlight by DuckDodgers · · Score: 5, Insightful

      My software engineering degree required a lot of presentations, a handful of written papers, and a lot of discussions on software development models, good design procedures, formal verification of code, testing practices, and so forth.

      Now that I've been in the workforce 5 years, a lot of what I learned is very valuable. But for the first two years out, most of it was useless - I needed a background in actual application development at the low level in the trenches. I had the Computer Science, but no programming foundation to build it on - fine if you want to do testing or management, crap if you wanted to actually design and program.

      Smart colleges should offer courses that cover bug tracking, source control, learning how to find the information you need in technical documentation, and especially how to read other people's code. Give a class a 50,000 line application with 20 or 30 known, non-trivial bugs in it and spend the semester showing them how to find the bugs. Give a class some applications which have very poor code reuse and show them how to break out common code into separate libraries which are easier to document, track, and debug. etc... etc... After getting my MS in Software Engineering, I was like a mechanic who could diagram the variable valve timing in a Ferrari but couldn't change a tire.

    5. Re:CS Degree = no sunlight by Anonymous Coward · · Score: 4, Insightful



      To me that sounds like the kind of territory that technical colleges/polytechnics should be covering. University is where you go to learn the science behind the discipline - if you want to cover the practical applications then I suggest you are looking in the wrong place.

      The day universities shift their focus to creating ready-made programmer automatons for the business market is the day your C.S. degree becomes worth less than the paper it's printed on.

      Computer science *should* be about karnaugh maps and logic optimisation; about algorithms and data structures; about mathematical proofs and combinatorial logic; about compiler theory & design; about all of the things that give a person a grounding in the basic fundamentals of the discipline.

      Suggesting that it should be reduced to a basic preparatory course for "life in the business world" involving little more than bug fixes & refactoring is missing the point entirely. Those are things that you pick up later - things that anyone with the proper grounding should be able to learn with little or no trouble at all.

      At the end of the day, computer science/programming in general is one of those subjects that no one person is ever going to be able to understand in it's entirety. Just when you think you're at the top of your game, someone releases a new library/language/compiler/interop technology/whatever that shifts the boundaries again. Having a good grounding in the underlying theory gives one an immeasurable boost in ability to keep up with these changes.

      I would argue that a graduate with a computer science degree that has a basis in unchanging mathematics & the fundamentals of computer science is going to be much more valuable to an employer in 10 years than someone who has a more practically focussed 'diploma' who has been taught little more than how to find & fix bugs in a language that could potentially be obsolete.

  2. Other fields? by Anonymous Coward · · Score: 5, Insightful

    Is studying philosophy worth it?

    Yes, if you love it.

    1. Re:Other fields? by dubbreak · · Score: 5, Insightful
      Yes, yes, yes. Do NOT repeat NOT go into a field you are not interested in. There is no point in going into CompSci for the money at this point, even with the possibility of labour shortages. I am a few months away from gradding with a major in CSc and my best recommendation is: don't do it unless you love it. I know too many students that hate programming, and generally dislike everything in the field other than playing with computers. They got into it because they thought it would be easy and pay well. If you sound like one of those people, don't do it, you'll hate doing the degree and when you are done you won't want to work in the field for the amount of money you are going to be starting at (which will be low since as an unmotivated student your abilities will be lacking to say the least).

      Do go into computer science if:
      • you love math (I don't mean you did well at it in HS, I mean you enjoyed it and would learn more on your own)
      • you have programmed and found it fun and interesting (not you tried it and thought it was easy, or did pretty good in some course)
      • you are a strong problem solver

      If you want to make money, go into business. Sciences are best suited for people who love the science and aren't worried about the wage. If you aren't sure, take a few courses first year in different areas and see what inspires you.
      --
      "If you are going through hell, keep going." - Winston Churchill
  3. Yeah by bahwi · · Score: 4, Insightful

    Yeah, it's still good, you just have to add that twist. Biology seems to be popular these days, business, marketing, others like that sure are helpful. Straight computer science? Well, you'll probably be just a code monkey. Learn statistics if math is your thing, we're always looking for people who can turn numbers into useful statistics, but program it to make it flexible. You don't have to have a double major, not that that ever hurts, but a minor or even a few electives.

    VoIP stuff seems to be a big thing, especially in developing countries(ever wanted to travel?), learn codecs, learn how to program codecs, learn how to hack Asterisk and SipX and some of ht eothers, play with Asterisk@Home.

    Oh, this isn't an Ask Slashdot? Sure looks like one.

  4. Re:LOL by 2nd+Post! · · Score: 5, Insightful

    You confuse computer science with computer programming.

    That is like confusing music theory with music composition, something I would hope you would be aware of.

    Computer science deals with algorithms, complexity notation, predicate calculus, proofs, and grammars, most of which you will not pick up by just being a programmer.

  5. need good people by flynt · · Score: 5, Insightful

    I think there's always room for good people in CS. If you're a type who goes to Stanford/MIT/others and gets a degree in CS because you love learning about computational processes and have a natural drive and curiousty, my guess is that there are plenty of firms willing to hire you.

    If, on the other hand, you want to learn CS to get a 'good job' after school, and end up going to a second-rate university where they teach you specific software instead of abstract ideas, you might not have such a good future after college.

    I'm sure both types of students attend all universities CS departments, don't get me wrong. I think your attitude going into it is what matters most, if you love CS and work hard, I bet you'll be just fine. If possible, don't choose your major based on what's in fashion, do what you want.

  6. Re:You'll never be able to buy a house by Marxist+Hacker+42 · · Score: 4, Insightful

    If you're a really good programmer, you can probably make a go of it on your own doing freelance work.

    I tried that between 2001 and 2003. What you need for that isn't good programming- it's good business sense and a fair amount of ESP. You need to be a good enough judge of character to know who will pay their bill and who won't when you present that final invoice. Far too many failed to pay that final invoice- and no business can survive a 50% decrease in revenue in a single month unless you were independantly wealthy going in.

    Unfortuneately most programmers- me included- went into this because we *don't* have good interpersonal skills, otherwise we would have been playing sports in high school instead of messing with computers.

    --
    SJW: a person who perceives an injustice, and while correcting it, commits a greater injustice.
  7. Re:LOL by DragonWriter · · Score: 4, Insightful
    But much of which you can pick up without going after a degree, if you have the ambition (and talent with mathematics) to do so.


    That's really true of most degrees, nevertheless, the structure of a formal academic environment helps many people to maintain the discipline to do it, often provides access to skilled instructors that make gaining understanding easier, generally increases the diversity of equipment and resources you have access to in the learning process, may, as a degree is something people often take note of, increase the material reward you get from it, and may make you eligible for additional financial assistance (which may or may not make up for the additional cost) and other benefits.

    Whether those benefits are worthwhile for any particular person interested in getting an understanding of the field will, of course, vary from person to person.
  8. Learn to sell by ClosedSource · · Score: 5, Insightful

    As a professional software programmer for over 20 years, I'd advise anyone who wishes to still be programming professionally in their 50's to spend a summer selling used cars. Being able to sell yourself will be much more important in the later years of your career than your technical knowledge will be.

  9. Please excuse my rant... by g1zmo · · Score: 5, Insightful

    I'm tired of {system-,network-,db-} administration, programming, and every other trade skill getting equated with Computer Science. CS is a branch of theoretical mathematics and has very little to do with anything you can sit in front of, type into, click on, or reboot. And I don't mean this as a (serious) troll. I just hate to see the term misused, much like engineers cringe when they hear the building maintenance staff referred to as 'engineers', as in "we'll have an engineer bring some buckets up to put under that leak in the roof."

    /End of Friendly Math Snob Rant

    --
    I have found there are just two ways to go.
    It all comes down to livin' fast or dyin' slow.
    -REK, Jr.
  10. Re:Experience degree by TheRaven64 · · Score: 4, Insightful
    Where abouts in the UK are you? And what classification of degree did you get? By the time I graduated (from Swansea) I had had several job offers, quite a few from local companies and a few from England. Eventually, I decided to turn them all down and go back into academia, but if you can't get a job in the UK with a CompSci degree I would guess one of the following applies:
    1. You got a poor quality degree (either from an institution with no reputation, or a low 2.2 or lower classification).
    2. You haven't done anything interesting with your time at university (join / run any student societies, etc).
    3. You haven't taken the opportunity to get any work experience (most universities run summer placement programmes, if you can be bothered to sign up).
    You get out of university what you put into it. If you're just there to get a piece of paper, you will just get a piece of paper and it won't be much use to you.
    --
    I am TheRaven on Soylent News
  11. WTF? by Palshife · · Score: 4, Insightful

    Is this supposed to suggest that we're somehow "done" with computer science? Application is great and all, but it has basis in constantly evolving theory, just like in any basic science.

    Don't be fooled. Application is important, but try doing your physics homework without understanding the underlying theory and see how far you get. If you want to be respected in the industry, and if you want to find a lifetime in computer technology fulfilling, get a degree in computer science.

    If your career aspiration is "high paid code monkey," then ignore this post.

    --
    Attention deficit disorder is a complicated issue, spanning several major... HEY LET'S GO RIDE BIKES!
  12. Crappy needs to be defined by zerosix · · Score: 5, Insightful
    I'm a software engineer and currently getting my CS degree part time. Frankly there are two aspects to websites, The apperance and the backend. Not very many programmers are good at apperance, ie colors, ect. While I hate creating websites I do like writing backend components for websites(ASP, PHP). Frankly, I wouldn't even consider creating a webpage programming from the fact that it's not required to use anything other than HTLM for a webpage and still have it be well a webpage. Simply knowing HTML does NOT make you a programmer.

    So if by crappy you mean design, I don't think a degree in computer science will help. If you mean crappy as in functionality, a degree in computer science might help.

    --
    Only two things are infinite, the universe and human stupidity, and I'm not sure about the former. ~Albert Einstein