The Continuing American Decline in CS
abb_road writes "America's recent dismal showing in the ACM Programming finals may be more than just a bad year; a BusinessWeek article suggests that the loss is indicative of the US's continuing decline in producing computer scientists. Despite the Labor Dept's forecast of a 40% increase in 'computer/math scientist' jobs, planned CS enrollments have plummeted from 3.7% in 2000 to just 1.1% last year. Other countries, particularly China, India and Eastern Europe, are working hard to pick up the slack, with potentially serious long-term effects for the US economy. From the article: 'If our talent base weakens, our lead in technology, business, and economics will fade faster than any of us can imagine.'"
Counterstrike is old.
This is your boss, I demand that you lower your rates or I'll hire less-expensive overseas developers.
ACM contest is fun but that doesn't mean that the winners are the world's best CS people. Nope.
*Of course, this is assuming that the U.S. has an actual shortage and the study isn't some ploy to get cheap code-monkey labor for Microsoft, Intel, et. al. I'll let my fellow slashdotters belabor that point.
If a CEO makes $147,000 per day, well that's market forces. If technical people start to break into 6 figures annually, well that's a threat to our global competitiveness which must be remedied.
It's certainly never been "cool" to be a programmer, but for a while there it looked like that was the way to go to earn massive $$$. Dot Com crazyness was in full swing and many of the students who would normally get MBAs tried the CS route instead in the hopes of getting some of that fat venture capital and possibly ride the bubble.
Those days are over (for now) and those students have gone back to pre-law or MBA courses. Also, the fact of the matter is that in a CS cirriculum (like engineering), you're going to work twice as long as your English/History/MBA friends who are always out partying and never seem to study. You'll be taking the "hard" math courses while they're learning how to draw graphs incorrectly in Economics. They'll have plenty of time for shmoozing with girls while you work on two projects until late in the night. When you graduate, they may very well make more money than you (or they'll end up broke and living with their parents, depending on how good their network is by the time they get out of college).
On the other hand, you'll be creating something that will be useful to people. Those guys will often only manufacture bullshit for the rest of their life.
I read the internet for the articles.
You have the wrong perspective on the education. CS is applied logic and mathematics. Read this carefully changed copy of your post if you don't understand:
"Because the field is undefined. What is a mathematician? What do they do after they graduate?
I earn my paycheck doing accounting, in all that encompasses. I went to college for a year and half before I realized that the education I was getting wasn't going to prepare me for my chosen profession.
The schools get math majors ready to be theorists ( bad ones at that ). That's it. There is a huge gap between what the schools teach and what businesses need from their accounting personel.
I'm more valuable now than I would have been had I stuck around and graduated."
Now, you can't teach problem solving, but it's hoped after 4 years in school you have some idea of how to be useful. Learning technical trivia is easy; anyone can do it. It doesn't take a genius to change an oil any more than it takes a genius to administrate a small network. However, understanding the deeper concepts (CSMA/CD!) and other principles is very useful if you are a computer scientist.
The difference between a degree and a certificate from a trade school is exactly what you mentioned; people go to a trade school to learn how to do 1 job. People go to University to learn how to solve a superset of problems, which they can apply to any job they want from a particular perspective. I can attack problems of compiler theory, networks, operating systems, programming language theory, etc, because I'm well grounded in the theory behind these concepts, and have experience (both in class and with jobs and projects I've worked on around school).
In 20 years, the tools you use will have changed dozens of times. In 20 years, Dijkstra's algorithm for finding the shortest path on a network will likely be just as useful for link-state routing models as it is now. So your final sentence, "I'm more valuable now than I would have been had I stuck around and graduated." is probably wrong, because you didn't understand why the education was useful. Maybe you weren't cut out for it, or maybe you just wanted money now. That's ok. Just don't preach it like it's the gospel truth on Slashdot.
--
Internet Explorer (n): Another bug -- that is, a feature that can't be turned off -- in Windows.
Its a sad comment you are making here. The worst part is that, yes, this is the belief. But I believe that following in the wake of CS as "uncool" jobs is engineering, I mean the moneys just not in it for engineers right?
While business "believes" that CS workers are foundry workers. Most CS workers are creating new things every project, they don't forge the same hunk of steel over and over. As much as business wants CS to be a production job, its really a creation job, and the business leaders don't get it.
All this reverence in this country for business degrees is going to really come back to bite us. Innovation and invention is on the decline in this country, and without the new things and the technological innovation, all those business people will be left with nothing to manage, because eventually with all the creation going on overseas, enventually overseas companies will take all the companies (and their management) with them.