News for hackers. Stuff that matters.
Re:10000 things all CS students should do before graduating by raffi on Friday June 24, 2011 @01:33PM (#2693048)
I'm a computer scientist, not a web monkey (FOOTNOTE). I'd say these are not the things all CS students should do before graduating. The field has much more to it.

How about:

1) add or modify a significant feature of a working kernel

2) write a toy programming language

3) program in a programming language with concurrent constructs (e.g., erlang)

4) study some theoretical area, develop a practical application based on the theory

I don't know, these are some things a CS student should aspire to. Setting up a WordPress blog and configuring a basic Apache instance? Yeah, good stuff--but I would in no way attach computer scientist to these activities. It's like calling the Best Buy Geek Squad folks electrical engineers.

(FOOTNOTE let me caveat that I do on occasion, work as a web monkey.)

Re:10000 things all CS students should do before graduating by illumin8 on Friday June 24, 2011 @02:51PM (#2693397)
Please allow me to use a car analogy:

If you want to get a job as a mechanical engineer and design car engines for a living, you don't necessarily need to know how to be an auto mechanic, however, if you spent a summer rebuilding a classic car engine, you might be surprised to learn a few things along the way that help you to design better engines when you do get a job.

I think this analogy works very well for simple web monkey tasks. Sure, building a simple LAMP application will not help your CS chops like writing your own toy programming language will, but you might learn something along the way about Apache, PHP/Python, Linux, or MySQL that will help you in your career. It also gives you a chance to question some of the fundamentals that have been with us for years - why do we use SQL for so many things? Maybe a key/value store would work better for certain apps.

Just like a mechanical engineer might be able to design an engine that is easier to work on if he rebuilt an engine in a garage once or twice, a software engineer might be able to write code that is more easily maintainable if he installed WordPress once or twice. Learning the difference between a good and a bad install procedure can at the very least help you write an installer that doesn't suck.

Re:10000 things all CS students should do before graduating by rednum on Friday June 24, 2011 @01:55PM (#2693157)
Concurrent programming (#3) is covered in most CS courses, as well as studying some theoretical areas (#4). Many universities seem to also include courses that include both writing some level stuff (#1) (like OS course) and writing at least a toy compiler for some given language (#2). The point of post is to give students tasks that are not required in their courses, but may give some knowledge/skills valuable in their future work. However, I think that your points are valid too - all of the things you mentioned are something worth spending a longer while when studying, not just being a homework assignment you forget about the day you submit it.

(Also, please don't use asterisks (* ) to indicate footnote or put a whitespace after each one. See http://news.ycombinator.com/formatdoc)

Re:10000 things all CS students should do before graduating by demian on Friday June 24, 2011 @04:48PM (#2693804)
Those sound like engineering problems, not science problems.
Re:10000 things all CS students should do before graduating by raffi on Saturday June 25, 2011 @01:09AM (#2694991)
I have a bias towards the systems side of computer science. I didn't mean to neglect my theoretical brethren. Maybe we can both agree that the OP is off the mark.
Re:10000 things all CS students should do before graduating by demian on Saturday June 25, 2011 @11:13AM (#2695806)
Completely off the mark. It seems to embraces the popular distortion of the term, when we are suppose to correct it.
Re:10000 things all CS students should do before graduating by tassl on Friday June 24, 2011 @10:57PM (#2694800)
In the original link there are useful problems for a web developer, but they are far from being science problems.
Re:10000 things all CS students should do before graduating by demian on Friday June 24, 2011 @11:18PM (#2694829)
True, I didn't mean that to say they were, but only to clarify that what's considered computer _science_ problems, sound more like engineering ones.
Re:10000 things all CS students should do before graduating by wisty on Saturday June 25, 2011 @01:16AM (#2695004)
Surely these are already in the course. Unless the course is bogged up with useless crap like OOP, COCOMO, XML, SQL, and so on.

There is a case for CS courses to be nothing but algorithms and compilers; but that's not the way they work in the real world.

Re:10000 things all CS students should do before graduating by rubergly on Saturday June 25, 2011 @02:24AM (#2695091)
I go to a small liberal arts college, so our CS department is rather lacking in course breadth (although that is made up in 1-1 interaction), and so I haven't been privileged with being able to take classes on web technologies. Are you saying that all courses on things that aren't web-based are bogged down with useless crap?
Re:10000 things all CS students should do before graduating by Game_Ender on Saturday June 25, 2011 @02:52AM (#2695129)
He is actually saying the opposite. He is saying that your CS department is doing you a disservice if it hasn't covered the basics listed by the original poster (OS hacking, theory, making a toy language, etc.). My schooling covered all of that, and they even had a web development elective (separate from low level networking and database classes). I was also told by my professors that when the CS college first started, OS, compiler, networking and database classes were mandatory (now they are just part of a large pool of electives), so this is pretty standard stuff.
Re:10000 things all CS students should do before graduating by tdignan on Saturday June 25, 2011 @01:50PM (#2696128)
Agreed, this stuff is lame.

Most CS students worth a dime could write programs to do these things.

Re:10000 things all CS students should do before graduating by presidentender on Friday June 24, 2011 @01:48PM (#2693131)
Stuff on the list gets you jobs. Your stuff doesn't.
Re:10000 things all CS students should do before graduating by pvarangot on Friday June 24, 2011 @02:12PM (#2693222)
I think you are being a little shortsighted. You may mean it doesn't get you jobs in the specific area that employs most of the people you share online/offline time with.

I'de bet most of the guys that programmed the operating system you were running when writing that post got paid for they job. The same goes for people developing compilers or VMs, like, you know, the one Python/PHP runs on... and don't get me started on database servers.

Re:10000 things all CS students should do before graduating by presidentender on Friday June 24, 2011 @04:05PM (#2693664)
That is definitely true. But how many compiler and VM jobs are there? How many web monkey jobs are there? It's like automotive engineers, as opposed to mechanics and drivers.

Now, I realize that we're being trained as automotive engineers, but most of us get jobs driving. I think the blog post's advice is much more useful for that.

Re:10000 things all CS students should do before graduating by demian on Friday June 24, 2011 @05:23PM (#2693945)
Good analogy, but then developers are more mechanics than drivers.

You can use your cool and deep automotive engineering knowledge to "do mechanics", but most of the time is not efficient cost/benefit wise. Most of the time it's more important to get the thing running in order to start the business.

Re:10000 things all CS students should do before graduating by presidentender on Friday June 24, 2011 @05:52PM (#2694046)
That is what I am trying to say.
Re:10000 things all CS students should do before graduating by urwrong on Friday June 24, 2011 @02:00PM (#2693176)
Umm... I don't think so. If you are thinking of CS as in Computer Science then that is CS and what the list mentions is what someone who wants to work in IT would need to know. Computer science is much more than just web technologies and many many people on HN will testify they got jobs because of knowing what this list mentions I am not denying that there are many others who would say they got jobs by knowing stuff on the list in the link, but hey its just plain wrong to say these things do not get you jobs. Many university professors have this as a minimal requirements for their job, thats one example.
Re:10000 things all CS students should do before graduating by presidentender on Friday June 24, 2011 @04:09PM (#2693677)
Indeed, university professors, programming languages researchers, compiler and IDE developers and others do certainly need theoretical knowledge.

Could you speculate for me as to the number of job openings for compiler writers as opposed to the number of jobs for web monkeys like me?

Re:10000 things all CS students should do before graduating by ryansde11 on Friday June 24, 2011 @04:45PM (#2693793)
The skills learned from writing something like a compiler or operating system can be applied to any type of software development job and are more valuable than anything on the OP's list.

College isn't a vocational school where you learn X so you can get a job doing exactly X. The idea is to learn a broad range of CS, Mathematics, and general problem solving skills. Doing so will allow you to write any type of software.

Re:10000 things all CS students should do before graduating by presidentender on Friday June 24, 2011 @04:55PM (#2693826)
You believe that a toy compiler or operating system (which are common in CS curricula) will teach you more about software development than a toy LAMP application?
Re:10000 things all CS students should do before graduating by ryansde11 on Friday June 24, 2011 @05:07PM (#2693878)
Yes. Absolutely.
Re:10000 things all CS students should do before graduating by stephen_g on Friday June 24, 2011 @08:20PM (#2694480)
Don't you? Of course you would...
Re:10000 things all CS students should do before graduating by artmageddon on Friday June 24, 2011 @02:00PM (#2693174)
I know people who do stuff on the parent's list won't find the number of job postings as plentiful as the ones who do the items in the link, but let's face it, those are hard to come by skills.

If a recent grad finds himself lacking in confidence with his or her abilities, then taking "baby" steps like those outlined in the link are perfectly fine. I know I could stand to try some of those myself. The hope though is that should a person have the drive, that they can eventually be able to do the computer science tasks.

Re:10000 things all CS students should do before graduating by GrooveStomp on Friday June 24, 2011 @02:02PM (#2693183)
I would be wary of confusing the idea of pursuing an education with that of getting a job. There's a correlation between the two, for sure, but they're not the same thing. I think universities themselves have been pushing this correlation, but I don't think it's necessarily the right idea to push. raffi's point is a very good one. If you're a computer scientist, then study computer science. If you're a professional programmer, then practice programming that you'll need for your job. It's like comparing technical institutes with universities.
Re:10000 things all CS students should do before graduating by notJim on Friday June 24, 2011 @10:16PM (#2694716)
Isn't the distinction kind of academic? Most people study computer science with the goal of getting a job as a professional programmer.
Re:10000 things all CS students should do before graduating by arethuza on Saturday June 25, 2011 @04:22AM (#2695251)
I don't think it is academic at all - CS is pretty much irrelevant to most programming jobs in the same way that theoretical physics is irrelevant to a plumber or electrician (both very skilled jobs) - it's not that the subject is inapplicable, it's just not very useful.

Note that I did a CS degree and have been lucky to have jobs that built upon that foundation (in order: research, start-ups, industry) - if you want to do fundamentally technically difficult stuff then a CS or engineering degree may help, but that is the exception not the rule.

Re:10000 things all CS students should do before graduating by dkersten on Saturday June 25, 2011 @01:56PM (#2696141)
Wait, are you saying I can't get jobs? I wonder whos been paying my bills all this time!