General Question

stevenelliottjr's avatar

What is the value of a computer science degree?

Asked by stevenelliottjr (295points) February 14th, 2010 from iPhone

I am a computer science major and it seems like a lot of my classmates are total morons. I mean, I love to write software, learn about language theory, and everything in between. I spend all of my free time, well maybe not all, programming. I also work full-time as a software engineer. Most of my classmates couldn’t even tell you how a the JVM works let alone write a decent java app. Just the other day I read something from a compsci student that said he couldn’t hand in his assignment because he couldn’t install the JDK on his system. What the hell? If this is what compsci programs churn out why am I wasting my time? I’m already more passionate and probably a hell of a lot better programmer than these guys will ever be. What’s the point

Observing members: 0 Composing members: 0

22 Answers

nisse's avatar

The degree alone will give you a 25–50% immediate increase in salary for doing the same job, not to mention the salary raise as you grow older.

I am also a comp sci major (will be done in 1 year), and i totally agree with what you are witnessing. 80% of my classmates are complete illiterates in atleast three of the following areas: Programming, maths, spelling and grammar, personal hygiene, not being socially akward.

Truth is college is not the best place to learn either computing, programming or any other “real world skill”. It’s a place to be fostered into the engineering discipline, to learn logic, maths, and proper thinking, and to drink yourself shitfaced, meet your future coworkers, peers and employers, as well as to rarely pick up the occasional tidbit of cool knowledge about the actual subject.

You will probably learn some cool computing concepts if you persist. Year three was a real eye opener for me, as i had an algorithms course which really taught me there was alot more to programming than i had previously thought, and brought up stuff i probably would not have figured out by hacking away on my own.

My advice to you is to try to stick it out, for the security, salary and bits of cool stuff you get towards the end of the education. In the end, you are really just in it for the paper, keep your eye on the degree and keep plodding along, it will be worth it.

You will not be happy if you are a degreeless codemonkey at the age of 50, the degree really gives you the freedom to do so much more.

lilikoi's avatar

Did you really mean to ask a question here or were you just looking to rant?

CyanoticWasp's avatar

@lilikoi there’s some validity to the question / rant if you broaden the question to “What is the value of a BA / BS degree in general?”

I quit college after my junior year; I have no degree and don’t plan to get one. I take various courses from time to time and read a fair amount, but I have no interest in a degree. (I’ve been lucky that it hasn’t hurt me employment-wise so far.)

It always seemed to me that “a degree” was a sign to a prospective employer that “this person has been able to put up with about four years of various academic bullshit; he should be able to take some from us for awhile”. I work with degreed individuals all day long, many of whom are absolute morons.

rottenit's avatar

DOES NOT COMPUTE

stevenelliottjr's avatar

Not a rant at all. I guess I’m at the point where I feel like I’m done with all the BS. Everyone says you just need the paper to get the job. I already have a great job which I got before I started taking classes. I was really just hoping to learn more but I haven’t learned Jack. I have read about all this stuff before because I was interested in it, not because I had to pass some professor’s half-assed class. Most of my professors have never written anything in an enterprise or software company but they can rock out a bubble sort alg with the best of them. I don’t know I guess I’m just feeling a little disparaged as if late.

Tenpinmaster's avatar

I know people with computer science degree’s that can’t seem to get a job in the field. It’s the reason I started doing schooling for something else. One person is doing tech support for Boston Market (phone operator), one is in real estate because they couldn’t find a job for what they went to school for so they “re tooled” themselves, and the other works at an ice cream distribution center doing tech support. I don’t have a degree at all and still making more then all of them in call center management.

borderline_blonde's avatar

Brains + degree = money. Ignore your classmates – they’re either campus filler to make tuition quotas or they’re in the wrong major. A BS is the minimum requirement for a lot of jobs and employers won’t even look at your resume without seeing that first. But actually having the brains to back up that diploma is what’s going to get you hired and prevent you from getting fired.

stevenelliottjr's avatar

Thanks for the responses… I will stick with it and keep on dealing with the idiots! I’m almost done anyway and I was planning on moving on to a Masters. Maybe the Masters Degree program will be a natural selection process for students in the program.

Thanks!!

nisse's avatar

Best of luck to you.

Some advice that was given to me that has helped me keeping to the path towards my degree when the road felt bumpy (i have felt that way more often than i can count on both my hands, or maybe more in the spirit of this discussion: it would overflow a 3-bit counter):

Try not to think about your education longer than week by week, if you look any further you’ll give yourself vertigo. The key word is “plodding”.. keep plodding along and before you know it you will be done.

noyesa's avatar

College is what you make of it. I’ve felt exactly the same way you feel—like no one else really cares enough to have anything more than passing knowledge about the subject. There are generally three kinds of computer science majors: people who love it, people who don’t yet know they hate it, and people who hate it but stick with it anyway because it’s high earning. Or so they think.

The problem is that a degree only says a little bit about who you are and what you can do. The college-happy mindset of people today is that everyone should go to college, and these people aren’t going to college to explore their interests, they’re going there to get a degree that’s going to make the money for them. It’s a very common theme in academia for people to treat a degree as a store of value that you can cash in later, rather than interpreting earning a degree as a validation of your knowledge and skill. Many people interpret college as some sort of hazing ritual, as if you just have to put up with this for four years and then it’s smooth sailing. The reality is that it never gets any easier and computer science is a challenging field that requires constant retooling. They don’t realize they actually have to know the material that their professors are explaining to them to be competent at their jobs.

It’s not all quite so black and white either. I remember taking my first computer science class. By the end of the semester, we were covering object-oriented programming, and it made absolutely no sense, but I did the work to earn the grade. Since my freshman year, I’ve become completely absorbed with my studies (it’s my 24/7 hobby and my part time occupation as well). I’ve had lots of real-world experience with computer programming and I’ve learned a lot about object-oriented design. Going back over the notes I took that semester, I realize now that everything I consider to be trivial, simple, and rudimentary about the subject (and others) was all presented to me back then in a very straightforward way.

Computer science is not necessarily something, even the intellectually inclined, learn in a classroom. It’s both a theoretical and an applied science, and application is the best way to learn it. There is simply no substitute for a few well-spent hours in an IDE putting your knowledge to work for you. In school, it’s easy to appear knowledgable without havign much practical knowledge about the subject. I’m running circles around my classmates, yet most of them are getting grades nearly as good as mine (I’m that asshole who’s already a C++ expert taking 2–300 level classes full of people who only have one or two semesters of programming… every class has one). Beyond college, they either wisen up or look for a different job in a different field.

stevenelliottjr's avatar

@noyesa

Thanks for the reply!

I totally hear you. I am just about done now but I have thought about dropping out so many times because I just can’t deal with the stupidity of some of my classmates. When I started writing software professionally I thought I was going to be badass because I could write a mean merge sort algorithm. Then I got to work and they asked me to build a relational database and write a .NET desktop application in C# on top of it that did X, Y, and Z. I didn’t really know what to do. I’ve never worked with a real database before and had to go and gather requirements from users and figure out what to do with my project. I was lost, but the senior software engineer on the team guided me through it and taught me how to proceed. My code sucked, duplication everywhere, nothing in the db was indexed, it took like 40 seconds for the dataset to load up. Man it was a nightmare.

I made that project my baby over the next 6 months after it was up and running and eventually I got good at refactoring and optimization and eventually started earning the respect of the other developers. Then I decide to take CS classes and I have to listen to these dumbass students talk about best practices and what not and none of them (including the professors) have ever written ANYTHING for an enterprise. I work as part of an in-house corporate development team. Timelines are short and expectations are high. I believe it forced me to become a better developer.

Sure, learning theory is very important and you need technical depth. However, there is more to developing good software than just being a coding guru. You need great communication skills and the ability to change directions quickly. Not to mention take criticism and learn from it. If I criticize my classmates they get all in a huff and start flaming me. Suffice it to say I am not liked at my school. Oh well, whatever. Once I finish I will never have to see these losers again.

The other thing that I have to say, is that NONE of them work on open source projects or hack in their spare time. Everyone talks about a pay day and where can i get a job that pays decently. The thing they don’t realize is that most employers in the software development industry want to see work experience. Its nice you have a degree but when they say, “Can you build me an xyz system in Python in x number of days” either you can do it or you cant. your ability to show off your big O notation isn’t going to get you too far.

noyesa's avatar

@stevenelliottjr I definitely agree with what you’re saying, but those theoretical things are very important too. Software developmen tis not just the creation of something that works, but a disciplined approach to creating software that meets requirements, is delivered on a budget, and in a timely fashion.

In the grand scheme of things, many of the “best pratices” that they talk about in college classrooms aren’t do-or-die stuff, but there’s a reason for it and when those things are engrained at an early stage of a beginning computer programmer, they become an afterthought in the future. Many new grads will get entangled with the trivial things covered in their education, but they’ll wisen up to the demands of real life on the other side of the gate. They’ll be apt to suggest things like… rewriting the entire codebase using hungarian notation or reformatting oodles of existing code. Good stuff to have if you have it, but not life threatening or productive work at all.

I can sniff the complexity out of an algorithm. That’s the practical benefit of understanding complexity and identifyin which class of algorithms and ways of solving problems tend to perform in a particular way. I don’t need a pad of paper and a source code listing to figure out that an algorithm is log, linear, quadratic, etc.

Few or none of your classmates have the work experience you do so it’s a little unreasonable to expect them to have the same sense and intuition that you’ve built up with your work experience. Writing code for a professor and writing code for your boss are two different situations that entail two completely different modes of thought. You’re likely never to have a discussion with a co-worker about whether to use a quicksort or an introsort—ultimately it doesn’t matter, as long as the software works reliably. The time to think about those things is when you’re in college.

stevenelliottjr's avatar

@noyesa

Yeah, I know you’re right. I still am plodding along with my degree and I have learned some useful things. Sometimes I just get frustrated is all. Anyway, thanks for taking the time to write.

malevolentbutticklish's avatar

@stevenelliottjr: If you can learn programming on your own you are 100% wasting your time. Consider dropping your computer science degree at once and switching to something which will help you more.

stevenelliottjr's avatar

The thing is that I already know how to program – I have been doing it professionally for the past 8 or 9 years i think or something like that. The main reason for the degree is the security of being able to land bigger and better jobs if need be at a later date. I don’t really find the value in a lot of the classes that I am taking with rare exception. Things like algorithms and data structures are great but I already know how to use them. I just feel like its taking time away from me being productive with other things.

noyesa's avatar

@stevenelliottjr You’ve been programming professionally so you have a lot of the experience that you’re not expected to have when earning an undergraduate computer science degree. I have 3 years of industry experience and even my masters degree isn’t all that difficult, and much of what I’m learning I already know. There’s always going to be a lot of overlap.

An undergraduate degree is worth it for a lot of reasons, namely job security and job availability. Computer science is not about learning programming as @malevolentbutticklish is implying. In fact, in my undergrad education I had only three programming classes, the rest was much more focused on methodologies and more abstract thought about computers; they took our ability to program for granted.

How far along are you in your degree? I can almost guarantee that eventually you will learn something new and be better for it. Stay involved and keep learning on your own. You can’t expect them to teach everything, just the basics which is the start of your own learning.

stevenelliottjr's avatar

@noyesa I’m just about done now – I’ve been through all the bloody classes like Algorithms, Discrete Data Structures, Language Theory, concurrent programming and Calc I – III. I am in a BS degree because I never went to college after HS. I went straight to work so I am playing catch up. I’ve got a 4.0 as of right now and I think that’s good; I will probably go on to a masters because I think that its something that will give me great security in the future and possibly open up new doors into more interesting work. I think my biggest problem is just dealing with the morons that are only in it for the job at the end of the day. I was so stoked when i started college because I thought I would find a bunch of like-minded people that loved computer science, programming, etc. like I do. But i was disappointed and when i saw these imbeciles were going to get the same degree as me it turned me off big time. That said, I have decided just to see it through because I’ve invested so much time and am hoping that at the masters level I will find more impassioned people! Thanks for the reply!

noyesa's avatar

@stevenelliottjr College is your education. Just because other people aren’t taking it seriously doesn’t mean it can’t be taken seriously. I go to a very large college and I’ve met plenty of people who didn’t seem at all invested in the work they were doing. They’ll get jobs, but they don’t have the passion for the craft, so they won’t climb ladders and reach new levels, both existentially and salary wise, that you will.

malevolentbutticklish's avatar

@stevenelliottjr @noyesa: The notion that you may learn something getting your degree therefore it is a good idea is flawed. You have to subtract from whatever you learned all the things you didn’t learn because you spent the time on the degree! Then you have to subtract out all the things you would have learned anyway. Then you have to subtract out all the money you didn’t make. They you have to subtract out the cost. Then you have to subtract out the liability (what if you were forced to move or drop out half way through your degree and that time was wasted entirely. Since << 100% of people who start graduate liability is large). Then you have to subtract out interest payments on anything you borrowed (interest can add up). Then you have to subtract out whatever gains you would have had if you just invested your earnings. Many Many people lose money going to school vs if they just worked. Even more lose valuable learning time by spending their hours on busywork and duplication instead of covering new material on their own.

noyesa's avatar

@malevolentbutticklish Anyone can learn anything on their own. The point is it’s very hard to be taken seriously without a college degree, and you need the undergraduate work to go on to graduate school, which will take you even higher.

malevolentbutticklish's avatar

@noyesa: stevenelliottjr has nine years professional experience. If he isn’t taken seriously then I suggest the company doesn’t take merit based hiring and promoting seriously. I don’t know if I would want to work for a other-than-merit based company. In those companies it isn’t just do you have a degree but did you get it from the same college as the person promoting you, do you share the same political beliefs, etc.

Answer this question

Login

or

Join

to answer.

This question is in the General Section. Responses must be helpful and on-topic.

Your answer will be saved while you login or join.

Have a question? Ask Fluther!

What do you know more about?
or
Knowledge Networking @ Fluther