Joel Gives College Advice For Programmers
An anonymous reader writes "Joel on Software explains what college students should do with their lives. Interesting to note is how he justifies such trivialties as GPA scores and well-roundedness, the very things comments here tend to think are overrated. In short, learn to write English, learn to write C, and don't worry about India!"
nteresting to note is how he justifies such trivialties as GPA scores and well-roundedness, the very things comments here tend to think are overrated.
The anti-intellectualism here on Slashdot is extraordinary. I must admit to being rather surprised whenever I see comments like "PhD's dont know nothin" (sic), or a recent post saying I hate college with poor grammar and spelling. Responses to it basically stated that a college degree was worthless.
Amazing.
Visit Jonesblog and say hello.
I'm being a bit sarcastic here, but I've heard from too many people that punching out code all day at work makes them very hesitant to even touch a computer at home. For those who are currently computer programmers/engineers, would you say you really enjoy your job, or does it get extremely old and tedious after awhile?
Non-math courses help develop a personality and there's no shortage of need in that department, where I've worked. Learn some general psychology, socialogy and language. A well exercised brain is more creative than one that only dwells on one aspect or type of challenge.
I found many formulas and ideas from classes outside CS contributed greatly to offering information and processes which normally may not have occured to me.
In short, you're in school, make understanding the concepts behind your classes your main focus, socializing and entertainment when you can fit it in, not the other way around.
A feeling of having made the same mistake before: Deja Foobar
You have your whole life to work. Even if you think all you ever want to do is program, nothing beats those college summers for traveling, working interesting jobs like at summer camps, outdoor guides, etc. Live a little, you have your whole life to work. Obviously Joel is stressing internships for selfish reasons anyways. There's more to life than just your job. I love programming and I love computers, but I also loved those college summers I spent working with kids at summer camp, teaching swimming, camping, and hiking, traveling with my friends, going to the beach. Enjoy it!
"Karma can only be portioned out by the cosmos." -Homer Simpson
I know several folk who had 4.0 through at least their undergraduate years, and some through a Masters or PhD. The majority of them are real people, not ubergeeks. They communicate, they have fun, they can make jokes with or without computer references, they get along with just about everyone short of Osama.
Anyone who ignored these peoples' resumes because of the 4.0 would be an utter fool.
Yes, I've known a couple of the types the parent referred to, but only a couple. Of course, now that s/he avoids 4.0 people like the plague, s/he will probably never meet another, and thus the percentage of 4.0s that are weenies will remain fixed in this person's experience, as a self-validating proof.
Beware the stereotype!
Joel's assumption seems to be that every CS graduate wants to be a working programmer and a clone of Joel. Look at where Joel is in life and think twice about whether you want to be there yourself. He's running a software company producing bug tracking software, one of dozens such systems. And occasionally, he preaches his depressing philosophy of how to add more messy code to existing messy code. Sure, it may bring home the bacon, but it seems pretty meaningless to me.
Perhaps Joel's problem is that he doesn't see how exciting computer science can be. If all you do for a living is reimplement tired old ideas and trying to make the best out of inferior tools, I suppose that's not surprising. I'm sorry that a course on "dynamic logic" scared him away from grad school, but his poor choice of courses for his interests isn't the fault of grad school.
My advice is: do what excites you. Think about what you want to look back on in a few decades and say "this is what I accomplished". If you merely want to make a living, sure, just follow into Joel's footsteps and re-implement the wheel; that's a pretty safe bet for making money. But if you want to do something meaningful, you'll have to use your head and take risks. The choice is up to you. But you do have a choice--you don't have to become a little Joel clone.
However, in the years since, I have grown in wisdom and have discovered that book knowledge will only get you so far and that personal experience will also, only get you so far. Taken together, a person can go places that having only one alone would be near impossible.
Now, reaching my 30's, I am kicking myself in the rear working towards obtaining a college degree to build upon and further my career goals.
If I had an opportunity to peform a 'do-over' the only thing that I would change in my life is completing at least an Associate's Degree the first few years after completing High School.
If you ignore the other uses of a tool, does that make the tool less useful, or you less useful?
As an advertising/marketing student, the most important thing i've learned is "KNOW YOUR AUDIENCE". It is a philosophy that applies to every aspect of your life, since you always have an audience. If you know your audience, you know how to approach things with them, and can get better results.
Wonder how this can help you? Well..for starters, with building your resume, talking on the phone, and landing an interview, and then hopefully nailing that interview.
And remember the ever important 80/20 rule. Its 80% WHO you know, and 20% WHAT you know. And while I wish it weren't true, it is, and the sooner you learn that and accept it, the sooner you will go further in life.
Buy Steampunk Clothing Online!
If you're in the position to hire personnel and are looking to staff a position... take your stack of applications and divide them in half at random. Take one stack and throw it into the trash.
Avoid hiring unlucky people.
Speak truth to power.
Probably the most talented debugger I've ever known is not coincidentally a somewhat poor programmer. His ability to understand complexity and obfuscation is second-to-none, but those same skills work against him when he writes his own code, because what he sees as "resonable complexity" ends up resulting in unmaintainable code for the rest of the programmers.
Knowing what happens under the hood is a good thing. Writing code like you're under the hood isn't.