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.'"
More demand for me! I'm raising my rates!
Never go to sea with two chronometers; take one or three.
Counterstrike is old.
What is America coming to when we can't even win @ Counter Strike?!
For shame, for shame...
I graduated in 2000 when life was sweet for Computer Science majors. When the bubble burst, there was a false impression that computer related fields were doomed. I always found that amusing because our whole society is based on technology and will always need people to run it. Media reports and articles on websites like this didn't help either. They gave the impression that Computer Science wasgoing the way of the dinosaur when it truly was healthy.
http://religiousfreaks.com/Nobody smart in their mind would go for a CS/engineering career path. So, obviously, the smart people are doing other things.
In the US, we are motivated by one thing - Money.
If CS Majors made as much as doctors or lawyers, more people would take math and Computer science courses.
Because the field is undefined. What is a computer scientist? What do they do after they graduate?
I earn my paycheck doing network admin, 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 CS majors ready to be programmers ( bad ones at that ). That's it. There is a huge gap between what the schools teach and what businesses need from their computer personel.
I'm more valuable now than I would have been had I stuck around and graduated.
Mod me down with all of your hatred and your journey towards the dark side will be complete!
Your coding abilities are not going to be of much use if you don't have the ability to power your computer system.
This is just more of the H1B lobbying to raise the cap on IT staff which is wanted to keep the price of IT staff depressed.
If you look in USA, everywhere but the Valley has an oversupply of IT people, my own employer just recruited a load of experienced staff in Portland, many excellent programmers too.
ACM contest is fun but that doesn't mean that the winners are the world's best CS people. Nope.
Who wants to play around with a general purpose computer when they can be sued for just about anything under the DMCA? Seriously, the reason I got into CS is because I had a computer to play with and a computer systems lab in high school. These days everyone is expected to just consume what's already been developed instead of creating something new.
Besides, with the DMCA and all the vague patents out there, the risk of law suit is quite high if you dare try to write some cool software. Innovation is dead, and I feel sorry for everyone growing up in school now. The opportunities to learn and explore are severely limited now in the fields of advanced technology, which seems to me is opposite of what you would actually want.
I made a MythTV box to watch TV. Every day that goes by I feel more and more like a criminal.
--- witty signature
I majored in computer science, but I don't feel comfortable entering it as a career field. I spent five years in the military, so I am not as cutting edge as I should be, not to mention a complete lack of experience despite being 27 years old. I buy books and keep up with things well enough to be a good hobbiest, but it is rough being in the tech world post-boom. I will go to law school, and hopefully provide a much needed technical viewpoint to the legal system that is currently strangling technological innovation in this country. I think some of the first things that law makers could do would be to reduce restrictions on people who want to study technology, such as the DMCA. As long as India and China can provide competent coders for less money, we will continue to lose jobs. That is part of globilization, and is no different than factory workers losing theirs in the last century. The key is to find the jobs that Americans can do for less opportunity costs, or that other countries can not do at all yet. Globilization is a good thing overall, as the standard of living will rise throughout the world, but it is very painful now, especially for people in the computer industry.
http://bgcommonsense.blogspot.com
The last attractive geek-slash-role model was Denise Richards. If they don't put Misha Barton, or Eva Longoria wearing glasses in front of a keyboard, pencil-behind-ear-or-in-hair-with-requisite-coffee -mug look, with hot grits, this decline will continue.
Those chicks in front of HW in 24 were hot, too. And they saved Bauer's ass. Well, most of them did.
Maybe the reason people are not going into CS is because most companies in the US are farming off the stuff a comp sci major whos starting out in the field would do to these 2 dollar workers because its cheaper.
People go where the money/oppertunity is, right now, unless your lucky I dont see either around here, in particular on the east and west cost. There is just no job security in those fields, not where Hao Yang can take the job for no benifits.
"Slashdot, where telling the truth is overrated but lying is insightful."
the problem? who's to blame?
graduate school admissions for computer science.
"oh you went to harvard and studied anthropology, sure, you're better than the kid who went to a small state school and studied computer science. okay we'll take you."
the current attitude of admissions for grad school is so bad that this is the actual truth. someone once tried to justify why harvard anthropology kid (straight out of undergrad) was better than midwest comp sci kid.
honestly, academia is behind this decline.
When I was applying to grad school in the midwest ... I was told by a pair of CS Department Chairs and my own undergrad advisor that I had a an excellent chance at getting in ... simply because there aren't many good young white american applicants anymore.
... I got in, and quickly became a prof favorite ... but there weren't many others around the department like me.
End of story
*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.
It can't be both that the programming field is in danger because we're outsourcing all our programming work, leading to no jobs for programmers, AND be that we're in danger of not having enough new programmers.
1. People still smarting from the tech-bubble popping? Check.
2. New home machines much less accessible to proto-hackers than machines like the C64? Check.
3. Popular culture that denigrates "geeks" and "nerds" and makes it a social crime to get A's? Check.
And people are confused about a decline in the number of student engineers?
Clear, Dark Skies
As a long-time computer professional and contractor, when I went to grad school to get a masters in computer science, the tax law gave me no break whatsoever. I cannot deduct my tuition as a business expense. On the other hand, if I took some vendor-specific courses from Cisco or Microsoft, I could take a business deduction. How messed up is that?
It also seems that there are not very many Americans in my CS courses either, but there are many students from China and India. Does anyone have any comments on the fact that China and India sponsor education in their countries, whereas we in the US barely support it?
Perhaps Americans are instead signing up for MBA programs combined with courses in Hindi, Tamil, Urdu, and other languages needed to effectively manage software projects when a great number of your programmers/coders live on the Indian subcontinent.
My sig is too lon
Let's see if we can figure this out. American kids aren't going into CS -- why? Perhaps because:
Did I leave anything out?
GetOuttaMySpace - The Anti-Social Network
Does the percentage mean number of collage students entering the field? Personally I've noticed that the colleges are mostly full of computer stupid students. I've tried two colleges over the past two years and I was disappointed with the level of the computer science majors. Some of my high school friends have noticed that and already dropped out and are working in computer related fields so I think those numbers don't show much. On another note have they ever though that maybe those of us who have skill enough to be in the programming challenge just didn't feel like it, didn't have time or some other excused that we all tend to come up with in the computer field.
You have to actually look at this like you do stats about Apple Computer:
... a lot more. Therefore the actual number of enrollments may actually be HIGHER.
... but individual unit sales are 2X because there are more people buying computers
There are MORE college students today than 6 years ago
Apple Computer:
Marketshare is lower to flat
Yell & scream & rant & rave... it's no use... you need a shaaaave ~ Bugs Bunny
Look around, how many software packages are available to encourage, enable and are targetted to 8-12 year olds. NONE. There was a point where schools were attempting to teach that age group fundamental computing. Not script writing for games or website design. Basic computing. Heck schools aren't teaching the other stuff either. More n more of the materials to learn computer programming is being geared for and designed for college students and professionals. You have to inspire kids to want to do programming. I think the trend towards fewer programmers has less to do with competition from India but rather from the failure of the industry to develop tools and materials for the age of child that can best be inspired to dream of that career path. Waiting until college is a wee bit late. The age to inspire is the 8-12 year olds. That is when I learned to program. Things were simpler then but the core documentation was readily available and affordable. Not so anymore. The trend toward fewer CS majors began 10 years ago when materials suitable for the 8-12 year old began to disappear.
As a graduating computer science student (and long time professional), I was interviewed on this topic by George Mason University's student newspaper. I also wrote a little piece of my own on the declining number of CS students:
I have two perspectives on this -- one, as a veteran software engineer, and two as a computer science student.
I chose computer science because it seemed to make sense, given my job as a software engineer. However, many years of interviewing and hiring have shown me that a computer science degree is not necessarily going to be of any use to a software engineer. The position "software engineer" could mean any number of things. At my company, it requires a wide domain knowledge of different applications, almost none of which are addressed in GMU's computer science program. The computer science program teaches programming at the most rudimentary level, and is not even remotely adequate for a job that requires programming. However, a computer science degree does introduce important concepts that are necessary for understanding the underlying principles of working with computers (even if it isn't presented that way), and also teaches logic and problem solving, which are fundamental to any technical job.
As far as students not choosing computer science, I think there are a number of reasons. At GMU (and my previous university) I used to hear all the time, "oh, there's too much math required for a degree in computer science, I'm switching to a degree in information technology or business information systems, because there's not as much math." Also, when the Internet "bubble" burst, I think a stigma developed, where people don't think they'll be able to find a job in the computer industry when they graduate, or that they won't be able to get the kind of pay that they would like, or have job security.
I think it's a sweeping generalization to say that the US is lacking computer science students. What the US is lacking is individuals who are sincerely interested in developing their technical skills and solving interesting problems for their own sake, rather than people who are trying to find the easiest way into a high paying position that they care very little about -- having worked with both, I'd choose a British Literature major who does programming on her own, just for fun, over a Computer Science major who hates computers, but just wants a high paying job.
--brian
I think this is a direct result of our colleges encouraging mediocrity and making it very difficult for advanced students to, well, "advance". Colleges are built around helping out the most mediocre students get a passing grade, and just letting the gifted students learn on their own. It is the same thing that happens in our high schools.
My girlfriend is just finishing her degree in Education, and it is horrible just how bad it has gotten. They have dozens of programs designed to helping out disadvantaged children and poor performing students, while the gifted students are left to their own devices. My boss is from Europe, and their schools (at least in Sweden in the 1980s) encourage their best and brightest. The gifted students are the ones that are going to make the biggest difference in the workplace, while the struggling students are simply going to fill up the jobs that dont take much skill.
If we want to keep up in a technologically advanced world, we have to start caring about our gifted students, not just helping the below average ones pass school.
--
-- All that is necessary for the triumph of evil is that good men do nothing. -- Edmund Burke
As a student at a major university (the University of Michigan), I must say that our CS department is extremely lacking. Computer Science must be taken either in the form of Electrical Engineering and Computer Science (EECS) - where CS is combined with EE (lots of useless info) or through the School of Literature Science and Arts (LSA) where the CS program is more direct, but students are required to take the EECS classes. One of the biggest problems is the use of the most basic programming class as a 'weeder' class instead of an actual learning tool. The class is made excessively difficult to weed out students (even though the students may simply take more time that 2 weeks to get acclimated to programming). The problem might be with curricula.
It's not only the Decline in CS, is the decline in everything : http://www.imdb.com/title/tt0090985/
Ceci n'est pas une Signature !
Who in their right mind would enter a computer science course today, knowing that innovation is not rewarded any longer, but legal paperwork is? The shift from spending money on R&D to spending money on IP attornies that started en-masse around the time of the dot-com crash is one of the main causes for lack of interest in hard-core Computer Science.
Seriously... I did CompSci in 1980, but today I'd much sooner go for a career in IP law. Better security, more money, nicer cars.
Kill software patents, and the spirit of innovation may come back. But it may also be too late. It takes a full generation (25 years, or more) for a strong IT culture to grow and flourish.
A result of the sensationalist junk about poor job prospects for IT professionals.
I am not sure what some will think about this but I think one of the reasons that there are not as many CS degrees being given out is people are realizing they do not need a degree in CS to get a job in computers. As one poster already put, he did not even finish his degree because he did think it benefitted him, I will not argue that just point out that there are not many other "professions" that you do not need a degree in to get into the business.
I do not know how many people I've met in my 7 professional years that either a)said they did not have any degree at all or b)said they got a degree in some other program and many of them not even in a technical profession. I think this is the larger problem. Our industry is one of a few where they want highly talented individuals, but also want a break on price. Easies way to do this is let anyone in which drives cost down because it is not specialized. For those of us that are CS Majors think how much more we could demand if someone from outside of the degree program could not come in and take our job. Also think how much more weight might be given to us in project management as well. If someone knows that this person really knows what they are talking about because of his education and experience perhaps those ridiculous deadlines might be fewer and fewer.
Hehehe! That's great news for skilled students wanting a shot at living at the U.S. of A.!
--
Slashdot captcha of the day: SODOMY.
What differentiates them from the rest is that they actually prepare very hard for it-- with actuve faculty and school encouragement
Maybe in preparing for the ACM contest they actually *gasp* learn something about CS. And it's great that they have school encouragement, we should only hope to see more encouragement out of the universities in America.
Most others just show up, expecting to have fun.
Bit of an unfair generalisation. I'm sure everyone tries hard to win. Nevertheless, the Russians and Chinese have been winning these contests of late and you shouldn't discredit them by (effectively) saying: "Us Americans didn't try".
"Dewey, you fool: Your decimal system has played right into my hands!"
Perhaps the reason that the US is experiencing a decline in producing computer scientists has to do with the decline in employing them? It's a little difficult to believe that the "concerns (of losing your job to outsourcing) are overblown" when those of us in the industry saw almost every single one of our peers lose their job in the last 5 years.
Even the article qualifies the security of tech jobs:
Programmers with leadership and business skills will do just fine.
Translation: You can be a programming manager, but you can't make a living doing the technical work.
Dear American Business(tm): You want technical people? Take legislative steps to protect their employment prospects. Otherwise, stop whining about how nobody wants to go into a technical field.
I studied CS in college and got my BA. I got out school and was immediately bombarded with hundreds of requests for 3-6 month, low-paying contractual positions for programming/systems administration/etc. What wasn't being offshored was being outsourced at ridiculous levels. I took a look around and realized the only people with truly stable positions were IT management. I talked to others and they agreed. So I went back for my MBA. When I graduate I'm going to be looking to leave the programming/administration side entirely.
When you're faced with poor, unstable job prospects and declining salaries due to offshore competition, what do you EXPECT us to do? The smart ones are realizing management (unfortunately) is the way to go. The rest will wither and die, unfortunately.
Computer Science is exactly that, Science.
You don't go to school for 4 years if you want to go be a code monkey, just like you wouldn't get a Ph.D. in Chemistry if you were going to enter pharmacutical sales. A Computer Science degree allows for study in the area of new algorithms, new computing paradigms (grid, neural net, et al.), and other RESEARCH oriented goals.
Computer Engineering on the other hand allows people to gain the skills needed to participate in industry, leading teams of developers and (hopefully) using methodologies taught in school.
Code monkeys go to ITT Tech for 2 years, get a cert in Java or something, and then go on to be programmers. The reason it's easy to outsource programming is because almost anyone can do it for cheap. I'm not trying to undermine the responsibility of programmers in any way, but when you can get a guy for $10,000 a year who has a full fledged degree, vs Joe Nobody from ITT Tech, you're going to do it and save the big salaries for the managers (not PHBs, but smaller scale tech managers with degrees in software engineering).
Perhaps, the current number of the practitioners of this particular Art reflects the demand?
The articles talks about the number of new CS-majors "in pipeline", but how many have exited the workforce in the same time?
In Soviet Washington the swamp drains you.
That'll be a good first start.
If I were going to college and I saw a glut of underpaid foreign workers holding H1-B visas, I'd think twice about CS.
'cause here, schools figured out that they can make a VERY GOOD living from milking students---and almost literally making them work for them a few years of their lives.
Education isn't supposed to be amount $$$, but often times, it seems that's the -only- thing it's about. Schools want tuition dollars... students just want the damn diploma (worthless paper in itself)...and that's how you end up with lots of seemingly educated folks who cannot do anything... yet still have to work for 5 years to pay off their diploma.
Note that the countries mentioned as `progressive' have relatively cheap education that's mostly based on merrit and not on financial standing... Also places where a `diploma' itself has very little meaning.
Computer Science != Software Engineering. CS is more research oriented, basically an applied math degree. CIS, IS, Information Management and Software Engineering are more where your day-to-day programmers should be coming from. Unless they are lumping these areas under CS then the statistics may be meaningless. Are we looking for researchers or people who will apply the technology?
Stalin said "Quantity has a quality all its own", which may have been valid in an industrial economy. What is not apparent is whether it is valid in a service economy. I strongly suspect, and some of the numbers I have heard about the best programmers being 10x more productive than the average programmer reinforces this, is that it is not valid to use an industrial paradigm in a service industry. But I think most managers, political leaders, economists and average Joes just don't get this. Too often projects fail beacuse to save money the work is given to the lowest common denominator in programmers and managers. Whether in-house, out-sourced or off-shored. And make no doubt about it, software is a service industry.
Finally I say, good riddance. This is as good a way to filter out the riff-raff as any. Let those who love the field be the ones who enter it and stay in. They are the ones more likely to develop the tools needed for the next generation of development, both in terms of process paradigms as well as actual software tools.
putting the 'B' in LGBTQ+
True, but when we the Chinese, Russians or Indians kick our asses in any business activity, it's easy just to say, "Oh, they're just hungry and took it too seriously. We just wanted to have fun."
Well, wake up. These people *are* hungry, the one's who manage to get to the top in their highly-competitive nations do take business and technology very seriously, and unless we do too, they're going to kick our asses.
When America is a 2nd rate nation (won't be long if the Republicans get one more term) saying, "those other countries just take things too seriously" will be pretty pointless.
Just as it is now, while we watch them catch up.
I mean, duh.
With a huge budget deficit, neverending wars, a corrupt Congress & White House, outsourcing at every level, a growing gap between rich and poor, and stagnant wages, I would say the US is in decline - period.
He who knows best knows how little he knows. - Thomas Jefferson
It's kind of funny that Computer Science is on the decline, despite the fact that software engineer is considered the best job in America.
Badass Resumes
Keshto hit the nail on the head. My university offers a 1-credit course called Speed Programming. It consists of a 2-hour a week pseudo-competition with old ACM problems. The next year, the people who enrolled in that class the previous year can try out for the team, if they desire to. That's how we recruit and prepare our 3 person ACM team and this is at one of the best universities in the nation. Now, compare that to some of our competitors. My professor mentioned that he talked to one of the coaches of some team from Shanghai who had recently won the event. He said that they prepared all year long, had the 3 teammates move in together, did practice problems and research every day and had a special lab just for them to work in. The coach also mentioned that this is not at all uncommon for other teams.
With all that said, how do you honestly expect the US to compete against tactics that we couldn't possibly dream of employing? Furthermore, that should expose how absurd it is to say that because we are not doing well in the ACM competition, we are not producing top-notch CS grads. I see a bunch of innovative and talented people around here every day who are much more interested in doing something truly special rather than banging out shitty code to solve random problems as fast as possible.
These constant doom and gloom articles about CS are really starting to annoy me.
Hear, hear!
I have also participated in the ACM programming contest (only got to regional competition, but it was fun). I had the unusual experience of having a programming-related job while I was still in college, and I can certainly confirm the parent's description of ACM programming contests being far from real-world earning-an-income coding. It's clear when you realize that an 8 to 5 desk job is much different than you remember from the contests in college, but it's really clear when you've already got a programming job and you go to an ACM programming contest.
The really successful coders are the ones that can learn new APIs and languages over a weekend. They're the ones who can communicate with non-technical people. They're the ones who can write a design for an application that will take a team of twelve developers a year to implement. The ACM programming contest compares to real-life CS work in the same way that a lumberjack competition proves a person's suitability for work in the logging industry. In both cases, the two sets of skills (contest vs. real life) overlap very little.
I pity the foo that isn't metasyntactic
...I am sure it will be said in this thread many times, but I bears saying for reinforcement, just incase some corporate type actually sees the thread.
Its damn simple why go into CS when most CS jobs are getting outsourced/offshored for cheaper rates. This is causing a Glut of talent in the market and cuasing the rates that a company will pay for CS talent to go down. It sucks as a job course in life.
If US companies cut the crap and word gets out that they are willing to pay for talented CS people at decent rates and the workers don't have to be concerned with having the job cut out from underthem, then the enrolements will go up.
Power Corrupts,Absolute Power Corrupts Absolutely, leaving one person(group)in charge is absolutely corrupt.
When I was in high school, I ran track (poorly), played hockey (poorly) and dated (poorly). Then I got to college and was mightily impressed by all these kids who had been in the International Chemistry Olympiad or Physics Olympiad or whatnot.
Check back a few years later and I seem like a much better hockey player, now that I only play against other researchers. Meanwhile, the former Olympians have never done anything that's reached my notice. Maybe they quit and went to hedge funds and have been succesful there, but certainly not in chemistry or physics.
What I'm listening to now on Pandora...
Out of the small May, 2005 class of ~20 computer science students at a small state university in the midwest, I know two that are still working part time in unrelated fields, looking for work related to their degree. The only people I knew that were working immediately after graduation were the ~50% that were working before they started the degree program and three students that grabbed the only three internships in the area.
There are tons of listings for sysadmin and programming jobs in Indiana, Kentucky, Illinois, etc., but you almost never see any entry level positions. It took me six months to find something, and that was a fluke.
Are there any places (other than Cali) where recent graduates are quickly hired? I'm certainly not aware of any.
With this smaller field you get fewer high performers. Why is it we in the UK are useless at sports when compared to the US - we have fewer athletes so the chances of people being off the top end of the bell curve are slimmer.
So the net result is that we have both a shortage of IT posts as they're being outsourced to India and a shortage of high performing IT specialists because the supply pool is smaller.
Where you're spot on is that we won't change anythign by wingeing.
init 11 - for when you need that edge.
My rates are back to where they were in 2000, before the dot-com bust. Not the insane levels of 2000/2001; but the more normal levels. Hopefully we'll not see the insane levels again for some time.
You know it's sad when you read the title and immediately thought CS meant counterstrike.
Look no further than the book pubishing Industry. The way that mathematics is taught in America is a product of a system based upon publishing. The resultant fragmentation, complexity and discontinuity of the material for the sake of satisfying bureaucratic guidelines and upping page counts negatively affects outcomes. Mathematics is the largest and heaviest book in the backpack. Its rediculous.
Disclaimer:: this is purely anecodotal and from one univeristy...
I was a computer science major for 3 years, but was always taking classes outside teh department "for fun". Half of my profs were non-native speakers which made difficult subjects even more difficult. For example, a friend of mine went an entire semester of assembly trying to figure out what the hell a regis was. The professor was simply referring to registers, but never bothered pronouncing the whole word.
In computer architecture, the book came with a cd full of power point review slides. Because the prof couldn't converse in English, she just read the slides offered by the CD. OK, great. But when you don't get what the book is talking about, the review slides/therefore class notes are in the direct language of the book, and the professor can't converse in English-- you are screwed.
My point isn't that CS profs have accents. My point is, Universities aren't hiring based on teaching skills and the students pay for it. I don't need fluent speakers, but I do need someone who can explain difficult concepts in understandable terms.
When you live in a society that advertises to kids that playing some sport is more important than learning or creating something new. It's even worse when some guy who runs around throwing a ball to another guy makes millions while your average computer person (who has spend around 100k going to school for 4 years) will maybe make it to middle class after 5 more years of working in their chosen profession. I'd have to say what pisses me off the most is that some white trash chick like Britney Spears can become one of the most popular with our kids simply because the RIAA uses her looks and sexuality to sell CD's. Hell, it's not even about the music anymore. Basically we tell our kids it's more important to be pretty or famous than to be smart and hard working.
This is a pretty small sample, and might be just random: In all my CS classes thus far in the last three years, I have had only 4-8 other students taking the same class (not that big of a CS school). However, apparently, they are expecting to have the first fully enrolled (intro core) CS classes next year for the first time in a number of years.
The traditional way to recruit more people into a profession is to up the ante: more money, better benefits, more chance at career advancement. Trouble is, the offshore competition makes this route less desirable. Why would a company jack up their expenses to hire locally when they can outsource and save money? I know this is very simplistic, but don't hold your breath waiting for that 20% raise or big fat hiring bonus.
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.
Sounds like the .COM crash. Problem is we're lazy but at the same time, no one wants to sit and code for 8 hours a day.
[%] Cingular Ringtones
America's recent dismal showing in the ACM Programming finals may be more than just a bad year
Duke sends a bunch of ill-prepared, second stringers to a programming competition, gets crushed, and I am supposed to worry about the decline of CS? I think an A teams from one of many elite US institutions would do better. I also would like to remind people of some outstanding recent domestic achievements. Maybe things aren't that bad.
an ill wind that blows no good
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.
ACM contest is fun but that doesn't mean that the winners are the world's best CS people.
:)
Certainly true, but then again, that could also be said about almost all other such and similar competitions. Nevertheless, trying to discredit those people by simply stating that "we didn't go there to compete, but to have fun" is just silly, to say the least. If you go to a competition without the wish to win, you shouldn't be there, do something more fun, or someting more productive. At the end, they were who won the competition, and whatever you say, after the race all it counts is who came out winning.
Prior to highschool (yes, before highschool) I also was at some local, even regional programming contests, and we had to solve quite good and challenging - now thinking back to them - problems in a few hours. Even when I knew that I won't be able to solve one in time, I tried to come up with some tricky solutions. It was fun, even if some other way of fun than your fun
All in all, these contests have nothing to do with real life problems or with real life work, or whatever. Still, quick problem solution and a special algorithmic and mathematical (and combined) way of thinking can be very useful in both (i.e. real life and these competitions). Neither winning nor loosing such competitions means much in the real world, still, it can be a measure. And this is for college students, which means those that can find their fun in such coding, they will have fun. The rest can find their fun time someplace else.
I am putting myself to the fullest possible use, which is all I can think that any conscious entity can ever hope to do.
Computer science and computer engineering are not the same. Computer engineering is related to electrical hence the reason why they are usually combined into dual majors. Even your university made that distinction and my universtity does also.
Ooo man the floppy drive is broken. No wait. The computer is just upside down.
When people talk about Computer Science, they usually mean "programming." There is a difference between CS and programming. Are the companies complaining about a lack of programmers, or research & development Computer Scientists?
I'm about to graduate with a BS in CS, and frankly I don't think it's what people expect. I'm not a *really* qualified programmer, I do have experience with programming, but I've got no industry certifications -- I'm not a software engineer. However, I have been prepared to move onto a Masters in CS, which is when the interesting work starts. A BS by itself doesn't do much, it's too general. But, without it, you couldn't do any of the real CS work.
I think one of the biggest problems with Computer Science is that most people don't know what it means. "Computational Science" is a much better name, since the field is really about finding ways to solve problems. Given information, can you answer a question. That's about as broad a definition as I can think of. Notice there's no mention of code, programming, or computers.
There's a famous quote, "Computer Science has as much to do with computers as Astronomy does with telescopes." I suspect this isn't verbatim, but the meaning is there.
There are rare exceptions. Most of my employers have had an 'expert' career track where you become a highly specialized crack coder that can be quickly offloaded to a high-priority project. But if you're goign to do that, you may as well contract.
There's other factors. First, about 75-80% of new job posting (in my area, anyway) are for contract work. Guys with wives and kids and mortgages tend to be less interested in temporary employment, and once you live from contract to contract with no group health coverage for a few years, you get sick of it and bail.
The industry changes rapidly, so you spend a lot of time either keeping up with new technology or you languish and become a relic who is stuck maintaining legacy code rather than doing new development. Again, if you've got a wife and kids you may not be all that interested in spending your evenings in classes or learning some new language. Few employers will pay you to learn a new skill that you only need so you can find a new job somewhere else.
We teach "computer science" classes that are really about "software engineering," but we have a bunch of theorists and scientists teaching an engineering discipline. The result is a bunch of really shitty engineers who don't know how to build anything. Computer science needs to be a scientific examination of computing, and it's a degree that maybe 2% of programmers actually need or would use. The bulk of the curriculum can be learned from books with minor guidance by most students. Comp sci should be renamed to Software Engineering and should be moved into engineering and taught as engineering discipline, both in terms of software construction and UI ergonomics. Most engineering deparmtments have at least some kind of ergonomics group, and software ought to be a part of that. Some schools have already moved in this direction.
Programming jobs are readily outsources, and easy to cut when the budget tightens. The aisles of grocery stores and the counters of GameStops across the nation are manned by guys in their mid twenties with $50,000 of college debt and a 4-year degree in a science.
You can hire one great programmer for $90,000/year, or two entry-level programmers for $45,000. Sadly, the guy making $90,000 doesn't do twice as much work. He may produce less buggy code, and do it faster, but businesses like warm bodies. And most compaines have hired enough "experts" at $90k who busted out and didn't produce much of anything that they'll roll the dice on the guy with 2-3 years of experienc who they can slightly underpay. If he doesn't wise up and leave after 3 years of a 1.8% raise, they'll have a guy with 5 years of experience who is SEVERELY underpaid. It's a win-win situation for HR.
It's not a lifestyle for everybody. Granted, I'm generalizing a LOT here, and there's a good deal of variance depending upon what industry you're in. I've worked in finance, medicine, telecommunications, marketing, customer relationship management, administration, all kinds of fields. The career is just not for me, and I was a lifelong programmer. Started when I was about 11 years old using GW-BASIC on an XT clone running DOS 3.3.
This is not a slight against those of you who are still in comp sci careers and love it, but most of the people I know who are very intelligent and very talented have moved out of the field. They've found a way to make more money doing less work and wit
"I have never won a debate with an ignorant person." -Ali ibn Abi Talib
Of the kids who I have seen drop out of CS, most go into something "easier": liberal arts, advertising, MBA.
You are correct that many kids get weeded out at an early point in their CS program and move to something easier, liberal arts, yes, MBA, no. I have BS and MS degrees in CS and I'm now working on an MBA. I am tempted to say the MBA program is more difficult but I am probably biased since I am in the midst of its heavy workload. I understand your impression, I used to have it. I took lots of history classes for fun, getting an A or B+ took nearly no effort. I expected topics like marketing would be just as easy. However I am now in a marketing class and using more advanced math than in nearly all my CS classes. I studied CS in the University of California system, the MBA is also at a UC campus so I think I the CS / MBA comparison is fair.
Programmers do algorithms, developers put something in the hands of the end-user to actually use, have fun, and make money with.
Now, most universities abroad are filled with programmers that are dying to get a job in the next Microsoft, HP, or Intel campus that opens up in their country, to sit back in a cubicle and code algos for the forseeable future. And there's a place for that, but for the money, I prefer the all-round developer any day.
Newsfollow.com
The latter notion reminds me of the book Bait and Switch: (The Futile Pursuit of the American Dream) by Barbara Ehrenreich. In it, she fluffs up her resume and goes searching for work that pays a minimum of $50,000 with benefits. She attends workshops, seminars, coaching clinics, and other things to improve her likelihood of finding work. Months later, she fails to reach this goal and in turns calls the American Dream a pointless pursuit. I realized this is not true, but that she was just too damn picky. Nobody can realistically expect a job paying $50,000 annually without qualified skills and plenty of experience.
Is this a reality of American developers? Perhaps indicative of why fewer students graduate with CS because they are not as qualified as they could be if they graduated in other disciplines?
For he today that sheds his blood with me shall be my brother.
The problem with non-immigrant guest workers is that the richest people in American get to pick who comes here as indentured servants.
Should't we have a reasonable quota of citizenship track immigrants not tied to being indentured to wealthy corporations?
Why does Bill Gates and Steve Jobs get to pick what jobs are targeted for special competition by people who can't change jobs or form a union?
America has become addicted to cheap labor, H1-Bs, and illegal aliens.
It's about time to fix this mess and go with more reasonable, front door, citizenship track immigration programs.
I don't see why CS is inherently a US discipline. It seems to me a lot of the US strength in CS/IT comes from historical reasons ( such as many of the advances which actually brought us computers in the first place of course ), and that it also happens to be where a lot of the money is. Consider how technology has spread around the world - there is no reason why other countries shouldn't feature more prominently in CS. History is just that - history. Things change and the US doesn't have a right to dominate CS/IT. When the US was building code breaking computers in the 1940s, was there even a similar sort of computer in India ( not counting it as part of the British Empire as it then was ;-) ? Of course other countries are going to get stronger in CS and the US is going to lose out to them to some degree.
;-). Decent developers yes, computer scientists no. My brother has an MSc in Marine Biology, he agrees that just having a BSc doesn't make him a scientist and he didn't really start to learn how to be a scientist until he started on his MSc.
/. and it helps to be clear about these things :-).
I work in the computer graphics field. From reading research papers, SIGGRAPH proceedings and the like I know that many, many people not from the US are doing a great deal of research. In fact it might even be the majority. Of course many of those people actually work in the US, and that is a large part of what has made the US strong in CS - so many foreigners are working in the US. The US is very lucky it has been able to attract those people away from their own countries to contribute toward the US dominance of the field to date. As someone not from the US myself I can't help feeling maybe the home countries might have been better off if those people hadn't gone to the US ( not that I'm judging those who've made that choice, by any means ).
Of course something else to consider is how many people actually studying and graduating in CS are what you could really computer scientists. I mean, a CS degree is just what you do to get a development job, it's a prerequisite for so many jobs. I don't have much formal CS training myself, but I've worked with people who have CS degrees and I think it would really be pushing things to say they were computer scientists
Another thing is that the drop is compared to 2000, which is still bubblish times for CS/IT. I used to work in the boatbuilding industry in New Zealand. When I was training NZ won the America's Cup and that caused a massive amount of interest in the marine industries. The year after mine was filled with people who thought they would train to become boatbuilders because there would be so many jobs available in the near future. Many of them had just a vague interest in boats, and some didn't seem interested at all. A fair few didn't even finish the course. My point is, as others have said, whenever there is a "bubble" in some industry you always get a fair number of people looking to enter the industry who are after the job and not really in it because it's what they really want to do. BTW, in case you're wondering I'm no longer in the marine industry due to health problems, but my plan was to work as a boatbuilder ( something I'd already been doing as a hobby ) and gain wider practical experience before moving on to yacht design.
Personally, as a non-US member of the IT industry, who works with lots of other talented non-US members of the IT industry, I'm not sad to see countries other than the US progressing toward the forefront of things. I'd also like to emphasise I feel no ill will toward my colleagues in the US, because, you know, this is
I also apologise to actual computer scientists for using "CS" so loosely in the above...
Regards,
Jo Meder
I look at the garbage that passes for entertainment and I can't help but think how stupid we've become. I look at how everything in our lives gravitate around the pursuit of pleasure and think how lazy we've become. People can't even be bothered to use their turn signals anymore - why should we expect them to want to understand anything technical? I look at how people vote ("Bush says he's a christian - that's all I need to know when I go to the polls") and I wonder why we go out of our way not to have to think. I watch the news and the top story is continually about how much we're paying for gas and say "Damn straight!" and then piss and moan about how much it costs to drive our SUV's to work.
If we can't be bothered to do difficult things then we deserve to lose the rewards that difficult things reap. Now watch as the "Move to France then!" rebuttals start pouring in - underscoring the whole point of my post.
For example --
- "I need a programmer who knows how to rewrite the code that someone here in the US created 10 years ago, so that it's up to date. It's a very esoteric program. But someone in India already knows it, I guarantee. So I will not hire or train someone here to do it, because it can be done more cheaply, *and right now* if I farm the work out overseas. " -- but in exchange, you have sold off the investment in the programmer here in the US who might have created the code you will use 10 years from now.
- "I need furniture for my new house, and I want it cheap and relatively sturdy. I'll buy stuff from Walmart or Ikea, because it satisfies both those requirements." -- but in exchange, market share of domestic (high cost) producers is tanking, and in 10 years, there will be no more domestic furniture producers because no one has been trained for that job anymore (or can find it a sustainable livelihood).
There are better examples I'm sure, and these certainly aren't new thoughts, that haven't been written tons of times elsewhere, but I for one (maybe because I'm not out there searching for a job in frustration) see it as an evolutionary transfer of wealth and assets from the rich to poor. As we (as a country) get old and rich and fat, there are people who are willing to do our work for us cheaper and faster, and better, and who will rise in power because we (just through acting by our human nature individually) create, as a group, these forces that none of us can individually resist.It's fascinating, but sad sometimes, because the "we" in the above statements isn't a single person who can learn from mistakes or change his/her behavior -- it's usually the next generation that suffers from the shortsightedness of (or irresistible economic grounds laid by) the previous one...
One of the guys I'm working with now (recruited in Portland) was unemployed for over a year. He's absolutely one of the best sharpest programmers I've worked with, he's also 45 years old. Others don't have a degree, but have a long track record of successfully making software. But we even got a PhD, who simply couldn't afford to relocate to the west coast.
Oh, so ACM is nothing? So let's look at TopCoder rankings, where none of your points apply. And what countries we see at the top? ;)
1. Poland (Central Europe)
2. Russia (Eastern Europe)
3. Canada (Northern America)
4. USA (Northern America)
5. China (Eastern Asia)
Surprising?
Always put off dealing with time-wasting morons. If you would like to know how... I'll get back to you
If a person didn't face a future of living and working in a world totally
and completely dominated by Microsoft garbage products and technology,
there might be more interest in entering the field. The entire
industry has been dumbed down to button pushing monkeys who have no
interest or understanding in what happens behind the scenes and why
things do or do not work. They therefore have no problem solving skills
or ability to invent new approaches to things. A career in this
world now can only appear boring and unrewarding.
I tend to think that part of the problem with the decline of any engineering or science degree is the fact that the current social trends sorta swing toward distain to hatred of anyone showing any level of intelligence above most folks. Mind you, it doesn't take a genius to learn how to program or install a network beyond knowing your basics, but it still does require some analytical skills that are often looked down upon as 'nerdy' or worse 'elitest.' And that bothers me because in the 1950s about half of all degrees, for men and women, were in science or engineering. Today, the number of science/engineering degrees only make up a fraction of one percent now. I don't expect most of my 'peers[people my age]' to understand why I love knowledge [I'm a CS major with interests in mathematics, physics, neurology, and cybernetics] for its sake, most tend to ask me why I read. I've been been told by my 'peers' that reading is stupod. Imagine that, a society where even reading a book for fun is stupid...Then, it's really no great wonder at all to realize why even CS degrees are on the decline...
-- Bridget
First of all, those academic olympic type stuff is all about how much you practise those type of problems with your team. It's not a measure of just your general problem solving skills. If you thought otherwise, then perhaps you're not as smart as you think you are.
Second, assuming the number of smart people didn't change in the last five years (let's assume it's relatively constant within a short time frame), then it means some other industry is attracting the smartest and the brightest (oh no!). Sorry CS folks, perhaps we ain't the brightest stars anymore.
Where have I seen this before?
ACM contest is fun but that doesn't mean that the winners are the world's best CS people. Nope.
:-) which is not a bad thing per se: to be able to love the work you do.
What it does mean though (in your own words) is that "Chinese or Russians or East Europeans" "prepare very hard" and not only "for it".
On the brighter note, I am pretty sure that Americans certainly won in having more fun
I do not believe in karma. "Funny"=-6. Do good and forbid evil. Yours, Oft-Offtopic Flamebaiting Troll.
I know I'll get flamed to hell, but screw it. If we truly* have such a shortage of computer scientists, then let's recruit the foreigners and bring them in as immigrants. Remember all of those European scientists came to the U.S. before/during WWII? How much of the American technical supremacy of the 20th century can be traced back to their contributions? The best way to develop/maintain technical prowess as a society is to secure the best intellectual capital.
Actually a lot of the current high tech supremacy the US has today is a combination of European knowhow (primarily Nazi German, just compare state-of-the-art Allied and German military projects at the end of WWII) and the USA's commercial muscle, imagination and will to exploit it which is a factor that is often overlooked. A large part was also down to looted technical documentation and research data. There is a famous story of a lead engineer at North American working on the F-86 fighter who went to night school to learn German in order to fully exploit the research data he had been given by the US intelligence services. Apparently he subsequently completely redesigned the aircraft. While that may not be a 100% true story German data and German and other European Scientists certainly had a major effect on the US aerospace industry. It would be hard to repeat this phenomenon today, the influx of sensitive scientific data cannot be replicated since the nations that possess any data of value to the US are neither in ruins nor under occupation by US forces making the wholesale annexation of their entire cutting edge IP impossible. You may, however, expect some success in recruiting some foreign workers who buy into modern variant of the good old 'streets paved with gold' myth.
Only to idiots, are orders laws.
-- Henning von Tresckow
The number of CS graduates is more-or-less irrelevant. I think the decline in US CS dominance will be faster than the lack of graduates could induce, and somewhat deeper too, but because of patent paralysys. It's no use producing graduates who are not allowed to implement their ideas, or perhaps not even allowed to have good ideas in the firat place.
"yet still have to work for 5 years to pay off their diploma..."
Ha ha Ha HAHAHa hahaha ha ha ha.
You think people right out of college can pay off their loans in 5 years?
Thanks for the laugh.
Salient post.
Indeed, there are some jobs "going overseas," but it doesn't stand to reason that the entire field is going with it, or that new jobs/technologies will not be created in the future. The main article seems alarmist. OMG, we're running out of coders, we'll fall behind! If this indeed bears out, it's likely that talent will begin to move here. It's why most of us are here. If there are good paying jobs in America and no one is applying for them, the free market will pull in required labor. No one is applying to do a lot of the low-wage manual labor jobs, for example, so Mexicans are coming here to pick up the slack. Trying to prevent foreign outsourcing or competition is a temporary, reactionist solution to a percieved problem. It will only result in ever greater global pressures on an artificially inflated wage structure, and degrade our eventual global competitiveness. A parallel would be astronauts in the ISS. Without the pull of gravity, their muscles atrophy. They must exercise vigilantly to retain their strength, so they can function back on Earth. They won't die if they don't, but after too long they'll be unfit to cope with gravity when they finally return. It's a force we must adjust to. You can ignore the cost or quality of Indian programmers or Chinese sysadmins, but that doesn't make them disappear. They will still be there and still affect you, visibly or no.
It amuses me that they focus so much on Computer Science enrollment. My experience is that a lot of the best programmers don't have a computer-science degree, or even math- or engineering-related degrees. Out of the last 6 months' worth of applicants I've interviewed where I work, the best one had an education degree. The people with CS degrees have, by contrast, been uniformly lacking in basic programming background and skills. It's not limited to the US either, it goes for the non-US applicants as well.
Regardless, though, all the competition says is that the Chinese ACM team cares much more about it than the American team did, and worked harder for it. Good for them, I say, and it would be nice if the American team took it more seriously, but it says absolutely nothing about the general state of computer science programs in America.
That's like saying that because an American won an olympic medal in track and field that Americans are in better shape and run faster than the Chinese.
Laywers and business men are produced more and more every year, so things look bright... oh wait, they dont produce anything, they just sell and sue...
We live in a global economy. The iPod contains chips from Hong Kong and Korea, Software from India, and design from California. Let the other countries have a bunch of computer scientists. America will always have tens of thousands of computer geniuses and we will also continue to benefit from our ingenuity, marketing, and business cache.
First off, as a country we are living FAR FAR beyond our means. You only have to consider the almost $1 Trillion (yes, Trillion with a 'T') a year in the budget deficit. That implicitly means that are are borrowing $1T mostly from foreigners, to subsidize our standard of living. In other words, we're a borrower nation gone nuts, paying off our debt with yet more debt.
What does that mean for graduates? Well, consider that basically what it's saying is that our standard of living is being propped up by borrowed money. In order for salary increments that many of us techies saw in the boom years to continue, we would only have to continue and increase that crazy borrowing streak of our nation as a whole, since we're living well beyond our means.
Now onto the problem of Management and Finance getting more recruits: I've found in my career, that 'knowing the numbers' of your business and/or company, is the absolute fundamental requirement to rise up into ranks of company officers. Not knowing the numbers means that you cannot really claim to have a birds eye view of the picture of your contract or engagement, because you have no sound basis to make any judgements. All you know is your code -- and how much different is that these days, then car factory workers who assemble parts on an assembly line, and who don't pay attention to market trends, the cost of inventory, the costs to the company, etc.
We've got to stop imagining programming as being a field where you can experience boundless salary and title inflation. It's silly to think so, because in the end, it's the management and finance folks in an organization that really make the stretegic decisions, and it cannot be any other way.
All in all, I think programmers complaining about the job situation in our field need to reconcile themselves with the fact that Computer Science is like English -- you can learn it anywhere in the world be just as good at it as anyone. The real value you can build in your career and in yourself, is to get to 'Know the Numbers', so that you can add some strategic decision making value to your self, thereby making yourself more valuable to your company. That, in a nutshell, is the best way to progress in your career, and keep your salary and title on the right slope.
Yeah. You certainly don't wanna be the guy who broke the curve. Especially if some of the class knows where you park.
Shit like this pisses me off. Both my high school and my college chose speakers at graduation based on popularity. Both times I had the highest GPA of anyone in the class. I was never allowed to speak at graduation, or say anything.
The only incentive one has for overachieving is success in the workplace, and you might not even see that. And the payment is years of punishment at the hands of your peers.
I never liked my generation, anyway.
:(){
Three of my friends have participated in this contest the last two years. Students from the Russian and Chinese universities often drop all of their classes and solely prepare for this contest. I agree that the students from the other countries are all very intelligent. However, the results of this contest can not be taken as a generic insight into the quality of CS in the various countries.
I went to college as a CS major, but then dropped it when I saw I had to take a crapload of irrelevant classes such as Calc 2, Calc-based physics, and the likes. I wanted to program, not be a rocket scientist.
.NET.
;)
4 months before I graduated I found a great CS job, doing programming in
Go ahead and mod me down now, for being a MS fanboi.
My point is, I didn't graduate as a CS major, but rather with a BA in "Interdisciplinary Studies". My employer didn't care. I can churn out clean, reliable fast code <Insert 'omg you cant do that with M$' joke here> in a resonable amount of time, which is exactly what CS people do.
Allow me to use the Baseball World Cup as a metaphor. In that event, either the US or the Dominican Republic should have won if you strictly base it on the talent of the players. Unfortunately, it's not that simple. There are other factors involved, such as nationalism and the existence of MLB in the US, which become factors influencing the amount of preparation put in by each of the teams (Cuba being an example of a year-long affair). You can see the same thing with the US's basketball team, though some of that failure is attributable to the differences between NBA and international style basketball.
In this competition, I think international teams simply care more. They probably spend a lot of time preparing for it and the teams become highly specialized at winning programming competitions. I'm not saying those skills don't translate into useful skills in RL, but I think we should take these results with a grain of salt. I would put our best programmers against those of any country in the world, but they're too busy doing relevant stuff.
(%i1) factor(777353);
(%o1) 777353
... but some of the applications are very high tech. People say that CS is in a decline and that CS is gonna die and that China and India are gonna take over, well, I have my doubts. There are the people who talk, and there are the people who *do*.
Being in a position as an ex-programmer / now PHB.....We hire 3 or 4 programmers a quarter. They send us the resumes, and we weed through them paying attention to experience, accomplishments and education, ignorant of the race, culture or country of birth. Many of these that look promising get invited for an interview.
The sad part is -- There are many American "trained" programmers that have been making a living as "programmers" for many years....And they don't know very much about computers or programming.
I always use the example of comparing the programming field to such skilled professions as plumbing and landscaping. If you have a plumbing problem in your house, or need a sprinkler system installed in your yard -- you can open the yellow pages and be pretty sure that the people listed under each profession are going to be able to solve your problem (no matter how "unique" and "undefined" it is) -- and your decision usually boils down to cost and availability.
In direct contrast to this, you find many people offering themselves out as contract programmers that are not problem solvers -- and do not know very much about programming. They would not last a week as a plumber or landscaper.
To make a long story short -- I don't know what it is, but even though we are not outsourcing or having our work shipped off shore -- most of the qualified
applicants (to put it bluntly) are not born nor primarily educated in America.
To put it even more blunty -- on a scale of 1 to 10 points, if we gave 3 bonus points for being born and educated in the US....We would still be hiring 95% of people from India or China.
(+1 Funny) only if I laugh out loud.
From the original article:
"When BusinessWeek visited Duke on a Saturday in early April, it was clear why many American students don't have the intensity of their overseas counterparts. There are a zillion distractions. The campus was like a carnival, with concerts, outdoor parties, and sunbathing on the grass. Meanwhile, the programming team was sequestered in a concrete-and-steel computer science building writing algorithms on whiteboards and tapping out C++ code on a PC."
Why not do Buisness degree and have more time for fun, and less chance of being offshored later. Less late nights and weekends at work staring at a computer screen.
What the US Government needs to do is get its act together, tax entertainment and other fields a lot more and try to change the culture. They need to give major tax breaks to the middle class workers who are researching in the sciences. They also need to make it lucrative for companies to invest in R&D. Finally, they need to pass labor laws protecting scientists from 60 hours working weeks and the fear of always losing their jobs to oversee.
When little kids dream about being scientists and astronauts again rather than actors, ballers, and pimps, you will know the US is on the right path.
"but they are all governed by one rule: How many students can we graduate?"
I read your original post in this thread, and said to myself "what the fuck?" but it was this statement that forced me to respond.
You're completely wrong. Scholls don't give two shakes how many students they graduate, and in fact would be very happy if only the very best graduated.
No, schools are interested in how many students they can ENROLL. No part of graduating from a university helps the university, and if they are graduating mediocre students, that devalues their program over time.
However, if the schools enroll everyone, yet graduate only the students who deserve it, then they get the best of bith worlds, that being a large (paying) student body, but a small (qualified) groups of graduates.
What you said simply isn't accurate, period.
"The government grants you rights, not the other way around."-- beav007. Yes, these people really exist...
The article is about the lack of computer science people in two areas: Academics
and business. We are losing our edge, etc. This leads the author to express
concern (FUD) about the future of computer science and the country in general.
Academics: Many colleges and universities in the USA seem more interested in
meeting their affirmative action goals than winning contests or producing
quality computer science graduates in a reasonable timeframe. The "taliban man"
at Yale is a classic example. I don't think the taliban man is going to win any
contests for the USA. Most professors lean toward democrat/communist/socialist
principles that, in their view, must triumph over the greedy, spoiled USA. The
failure of the USA team(s) is a reflection of the very real desire of most
professors.
Business: Most businesses want to make a profit. The more profit they make,
the better! When business executives move jobs overseas, they can cuts costs and
make more profit. If they can't move the jobs out of the USA then they move the
foreigners into the USA through the H1B visa program and make more profit that
way. Business execs don't care if the USA wins or loses, so long as they make
more profit. Bribing politicians to pass laws like the H1B visa program is
their way of making more profit. They are *not* interested in winning computer
science competitions.
So everyone is happy. The author of the article is happy because there is FUD
to write about. Professors are pleased because greedy, spoiled USA people get
hurt. Business executives are pleased because they can make more money.
Politicians are pleased because they got their bribe/payoff. Is it really a
surprise that the young folks have sensed that these various factions are not
acting in their best interests are are looking for a better deal elsewhere?
I'd say it has something to do with all the professors believing that there is gold buried up their asses. I've been in CS at a major state university for 4 years now and the professors are worse than the American Idol crowd. Just the smugness. Especially the ones from MIT. God I want to smack them.
Also, CS is a really hard degree. Especially after that rush of students in 2000 right before the bubble burst. CS departments all over the country rushed to think up new "weed-out" classes to make sure the "right" people got into CS. Rather than expand their programs to provide the number of CS graduates that the US needs, they got all xenophobic and tried to turn CS back into the SooperNurdzClub like it was for the past 40 years.
I've got news for nerds. CS matters. But not in the way you want it to. No one cares if you can do reduction proofs, they want CODE. They want APPS. They want UI that is easy to use. Why not break CS into two or more branches, like physics. I reccomend a Theoretical CS specialization a sooperNurdzClub for the smug MIT grabasses. Then a couple of different practical application specializations like Application Programming, Network Computing, Bioinformatics, etc.
Take out the 5 semesters of math and trade them for 2 semesters of CS specialized math courses instead of the generalized ones from the math department where we only really need two chapters of the book we're covering for CS.
Take out the EE and logic and combine it into one circuit logic class that freshmen have to take. Add some classes that focus on using computers in other disciplines as electives. Boom. US CS has a new lease on life and a much friendlier atmosphere for those of us who don't like to smell our own farts. F*** MIT.
I agree completely. It has more to do with problem-solving skills than Computer Science. I don't believe the ACM competitions even require you to be a CS major. CIT or Math majors can join as well, since they have some basic knowledge of computer programming.
Some people are drawn to the challenge. And trust me, there are those genius CS majors out there who are too involved in their independent research projects to participate in a competition.
Your point is? It's a contest. A game. It is not real life. If you want "real" IT look to India and the US. After all, we see just exactly how many Poles are doing anything worthwhile in real life.
It's not like we have no precedent for expanding our R&D with immigrant scientists. Some of "our" greats were immigrants of other countries.
The real question is not "How will we compete?" but rather "Are we willing to court immigrants as we used to to compete?"
Don't answer quick, becuase it's not an easy question to answer. There are serious ramifications.
Not to mention that I've said before that the media is overstating (greatly!) the direness of our science and technology situation in the U.S.
Tom Caudron
http://tom.digitalelite.com/
-Tom
That no one gives a fuck what an imbecile like you thinks.
Well, other imbeciles care, but I wouldn't be proud of that if I were you. Thinking about it, if I WERE you, I'd do the world a favor and off myself. Maybe you should do that.
Anybody seen that photo of Bush walking around with the "Presidency for Dummies" book?
- for-dummies.html
http://www.funny-games.biz/pictures/95-presidency
LoB
"Anyone who stands out in the middle of a road looks like roadkill to me." --Linus
> CS enrollments have plummeted from 3.7% in 2000 to just 1.1% last year
That tells me nothing! 2000 was the height of the dot-com bubble. Give me the numbers for planned enrollments from 1990 to 2000. And then 2000 to now! I bet it went up with the boom, shot down with the bust, and has been rising since.
If you go to a competition without the wish to win, you shouldn't be there, do something more fun, or someting more productive.
Thanks for that tip. We need someone to tell us how to spend our free time. Could you tell us which web sites we should browse and which TV shows we should watch? We wouldn't want to be unproductive in your eyes.
I went to a public university, and at $400 a month, I'll have the loans paid off in 4 years.
I earn my paycheck doing network admin, 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.
That's not the fault of the degree, it's the fault of the person pursuing the degree who doesn't know what it's good for. Being a system or network administrator is only tangentially related to being a software developer.
The schools get CS majors ready to be programmers ( bad ones at that ).
Only true if you go to a school with a third-rate CS program. The program I attended has more than adequately prepared me for everything I've had to do in a professional capacity.
There is a huge gap between what the schools teach and what businesses need from their computer personel.
If what your company "needs" is an IT guy, then of course a CS degree is going to be of limited use (as you seem to have found out). Go get an Associate's in IS/IT instead.
the coolest club on
My thinking on it is that departments will have to continue to become more self-sufficient, and thus will have to get professors based purely upon the criterion of research, meaning what research dollars can s/he bring to our program? And as demand for CS professionals goes up, those professors who are great instructors, but who don't care about research, may be lured into the work force.
This is clearly a bad thing, but there could be some benefits if education adapts by offering more project-oriented curricula, allowing undergrads to become involved in some of the research projects.
We'll see.
(%i1) factor(777353);
(%o1) 777353
"1. People still smarting from the tech-bubble popping? Check.
2. New home machines much less accessible to proto-hackers than machines like the C64? Check.
3. Popular culture that denigrates "geeks" and "nerds" and makes it a social crime to get A's? Check."
4. Geeks and nerds have a superiority complex? Check.
5. Geeks and nerds have the social skills of a potato? Check.
6. Other countries are minting their own geeks and nerds? Check.
7. Geeks and nerds !== CS or technology. e.g. History nerd.
I graduated from Georgia Tech with a CS degree a while back. I can testify that at least one really big CS program is going straight to hell now.
Back in the 80's and 90's you were expected to know at least some assembly, several languages and be able to code your way out of most corners. I was proud to take classes from Gus Baird who could tell stories about programming from switches on front-panels, or Jim "The Big Screw" Greenlee who while not a beloved figure didn't let idiots get past his gates. Yeah big school CS programs have become total corporate whores in the scramble for money, and no longer teach real programming.
The current CS program at Georgia Tech emphasizes Windows and applications. I found it funny as hell when I heard the department heads' desktop Windows PC got infected! They even recently let go a bunch of their UNIX admins because those people weren't "with it" enough on the whole Windows thing where everyone should use Exchange and write in VB.
I find it rather amazing that there isn't already more of this. When it comes to immigration, it almost seems as though many people with real skills are lumped in with unskilled labor sneaking across the border (thus proving the U.S. commitment to the idea that "all men are created equal", I suppose). While there are some immigration programs for people of "exceptional merit and ability" and similar categories, the number of people who get in this way are a tiny fraction of the people who could truly benefit the U.S. economy.
If you're a smart, motivated person with high potential, but not already world-famous or rich, your options for entering the U.S. are limited to non-existent, practically speaking, other than getting in a line with waiting periods up to and exceeding 20 years.
One standard argument justifying this situation is the economic competition: an influx of smart workers would drive down wages for Americans. But this is a logical error, with roots in 19th century economic thinking, that drives so much immigration policy. The point, and it's worth devoting its own paragraph to, is:
Knowledge work is not a zero-sum game!
If someone's going to come up with a new invention, a new product, or a new business, where do you want those people to do that? Inside the U.S., where all the benefits of the new development accrue to the U.S. economy, or outside the U.S., where the U.S. risks ultimately becoming an importer of that thing, further increasing its trade deficit?
Up until now, the U.S. dominance in science and technology has allowed it to essentially ignore this point except in the most extreme cases, which is where that "exceptional merit and ability" immigration category comes in. But with increasing competition from highly-motivated, high-population developing nations, and major economic and technological assets being "globalized" to other countries, previous tactics won't be enough. To have any hope of retaining its competitiveness in the long term, the U.S. is going to want to start doing a better job of importing some of the cream of the crop from those competing nations.
But it seems that the combination of "democratic" egalitarianism and Republican protectionism is enough to completely block this line of thinking. The U.S. is going to have to wait until its economic ass is being kicked, but good, before it changes its policies. By then, it may be too late, and the U.S. role as world science and technology leader may finally be over.
I wish people would stop using statistics exclusively from 2000, whether they be CS enrollments like here or related stats. In 2000, we were at the height of the tech bubble. Lots of people and money went into tech that should not have. In the case of people, that meant (among lots of other things ... don't want to oversimplify) lots of CS majors who had no aptitude for CS. It's not a realistic number.
What I'd like to see are multi-year numbers that give us a better idea of the trend, both pre- and post-bubble. 2000 was an anomaly. 2000 was unsustainable. 2000 was when things went kablooey. We don't want to go there again in a hurry, so quit talking about it.
Lies, damned lies and statistics. Couple of random thoughts:
1. It is my observation that bright students in developing countries often gravitate to math/science fields at a higher rate than in the U.S. That isn't necessarily a good thing. While such countries may produce engineers and computer programmers at a high rate, they may produce doctors, research scientists, economists, etc. at a lower rate.
2. In China, India and Eastern Europe, my impression is that more bin-sorting goes on with regard to who can attend what university. In the U.S. you have bright, capable people spread out across more buckets. In India especially there is a well-defined pecking order among universities, with the very best students routed to the most presitigious school.
3. Having participated in the ACM contest at the regional level, the results aren't all based on raw talent. Extensive practice can give you a distinct advantage. It may be that the non-U.S. teams simply prepared better. Being poorly prepared for a contest doesn't mean the U.S. team members are generally incompetant.
4. If the ACM contest is more popular at non-U.S. universities, those countries may be better able to attract the top competitors from their respective talent pools. At the large state university I attended, tryouts were hardly advertised, and I knew many smart, talented people who just weren't interested in competing.
5. It may be a good thing that CS enrollment has dropped from 3.7% to 1.1%. When I was still in school, during the boom times, about 20-30% of my classmates probably shouldn't have been there. I shudder to think of the code they're producing right now.
CS may be in decline, but the business school equivalent seems to be doing very well.
And from I've seen,the reported salaries tend to show why. People want job skills, not useless theory.
I think so many people went into CS without a love or appreciation for it (or its baisis in mathematics). As a consequence the market was flooded with fools looking to make a buck. This was devistating because it turned the field from one of an applied academic dicipline to one of comodity output.
.com rush, but they pulled the field down to their level rather than rising up to its level. You don't hear much discussion about mechanical/civil engineering going offshore because those fields are applied academic diciplines; not commodities.
Not only do I hate working with these people, who are remnants of the
Programmers are a raw material much like wool, cotten, corn, or ore. Programming has become assembely line work. Not only does this frustrate me because it is such an interesting area of study (and one still in its infancy), but like any commodity we (CS professionals) have to compete squarely on price. Perfect market.
It makes it that much harder for the business/joe sixpack world to understand that programming != programming.
As always the headlines they are full of scare stories - it does sell newspapers. For CS jobs - the news tells us they are all going overseas. Kids believe that and are avoiding CS. If you believe that fewer CS grads means more work for you - that may be wrong. Fewer US CS workers means companies have even more incentive to move more CS work overseas.
"What a true Computer Scientist needs to be good at is not solving problems, but defining problems. They need to be able to ask questions so that the actual problem is uncovered and not just some symptom."
The phrase you're looking for is "Domain Knowledge". Your British Lit majour has domain knowledge first, and programming second. Plus it looks like your example's "love" was Literature, not programming. Or was that doing Literature for "the money" and programming for the love? It's so hard to tell around here with every sentence having CS and love, but MBA and love aren't.
God, I can't stand when these business analysts whine about the decline of CS majors in the US. Gee there "BusinessWeek", maybe you should run an article on how treating people who train for difficult careers like shit makes other people, gasp, not want to be in that field.
"Gee, all we did was outsource their jobs to other countries so we could buy bigger mansions, what's with the unsportly attitude here? I can't help trying to make a profit for my shareholders, but I'll be damned if some foreigners from wherever overtake us in technology and commerce. Come on, guys... it's just as our President says, no one can out-compete the american worker!"
Yeah, I'll probably get modded down for this, but whatever. I'm tired of all these analysts complaining about some impending economic doom followed by... sitting on their fat asses. If the folks at places like BusinessWeek really gave a damn about anything other than their own bank accounts, they'd try and change the way that the US does business; but the chances of seeing an anti-outsourcing, anti-big-CEO-salary article that champions standing behind your employees rather than shifting them about as human resources is about as likely as Rumsfeld apolagizing for ineptly costing thousands of civilian lives and going off to live a life of penance in a rural Buddhist monastery (well, shit, if I'm going to be modded down by one of those neo-con/techie hybrids, might as well get everything off my chest.)
Ex nihilo nihil fit.
"xenophobia" ??? wtf?
Why do guest worker apologists always scream "xenophobia" whenever
they're losing an argument based on sound policy?
-I won't even mention the USPTO and american fair justice system ("the one with the more money always win") that would make us european laugth if it wasn't hype for our politicians to copy your mistakes.
This IMHO the largest threat, actually. This may irrepairably damage our tech industry. It is becoming increasingly risky for a company with money to produce new systems, because of the sheer number of infringements this involves and how much someone would like to sue that company. I've seen this from both the open source developer side and the huge company side, and what is going on is appalling -- mass siphoning of resources from developers and engineers to lawyers and "patent entrepreneurs".
I can think of a number of reasons why the US does well.
* Europe generally has heavily protectionist labor laws. In the US, if a programmer sucks, he's generally fireable at-will. If a company sucks, a programmer can walk out tomorrow. In Europe, you tend to be looking at mandated long warning periods on each side, mandated severance pay, and so forth. The benefit of the European approach is more stable employment. This doesn't come for free though -- it's harder to establish a meritocracy and connect with the best workers. The recent protests over French employment law were incomprehensible to me, as an American (where laws guaranteeing that employees could not be fired without "just cause" for a a certain number of years after they started working were possibly going to be rolled back). If you're worthwhile, your employer isn't going to fire you, and your employee isn't going to leave you. Forcing the employer to do otherwise is not economically free.
I work with some Germans -- they take their eight-hour workday *very* seriously. My understanding is that a German manager that requires an employee to work beyond a certain amount of time becomes personally liable if, say, that employee gets into a car crash on the way home because he is tired. This may be great if you want stable employment; it's not so great if you're trying to get a company going, especially in a market where time-to-market is crucial.
* Venture capital. I remember reading an analysis that dated back before the dot-com boom, and remember reading that it is much easier to get startup funding in the United States than it is in many European countries.
* A large market is easily accessable. The US is well-to-do, and just about everyone speaks English (though Spanish is upcoming). It's easy to write a software product and sell it to everyone in the US. I was debating this subject with a gentleman who runs a German software development firm the other day -- he commented that a US software developer doesn't need to be able to sell to Europe, but that a European software developer generally does need to be able to sell to the US.
* Good education. Expensive, granted. I still see lots of grad students studying in the US from overseas.
* Savings are more liquid. In the US, you tend to have more money going to the employee and staying with him, due to lower tax rates. That means that after a few years, it's easier for someone to take his savings and make a (possibly risky) gamble and start a company. Of course, he might wind up fairly poor in his old age as a result of this; Europe would tend to subsidize that old age more heavily.
* Paul Graham has his own take on this, which seems to be some sort of fuzzy claim that Europeans culturally focus on long-term planning and polishing products, and Americans culturally focus on quick-and-dirty and a rapidly changing market. His arguments seem to be mostly anecdotal, but they are at least fun to read.
* You mentioned deficit financing as a drawback. Deficit financing is bad only *in the future*. It's great in the short term. The faster the national debt grows, the faster resources flow to the US in the short term.
* My understanding (though I'm not aware of the specific
Any program relying on (nontrivial) preemptive multithreading will be buggy.
Put simply, this just samples college students. If instead it were high-paying with teams made up from the general population there would be a clear motivation to win. Extrapolating population characteristics from that would still be equally retarded, and this entire thing is just nationalistic bullshit. You aren't any more or less mediocre because this year's crop of competitors beat out everyone else.
http://heather.cs.ucdavis.edu/itaa.real.html
r ticle&sid=622
http://www.itpaa.org/modules.php?name=News&file=a
Given the premise that there is in fact a shortage of CS majors (or science, engineering etc.) I cite the following observations:
- First let me say the following statements are a HUGE over generalization of issues that I see and have experienced so please take it as such.
- There is a huge gap in the primary educational system. Elementary school teachers are not comfortable with math, science and really forget about computers other then maybe a presentation tool or for browsing the web/checking e-mail. Given that they are not comfortable with a subject they are more prone to gloss over it not covering it in depth. I have been able to sit in on classes where you can tell that the teacher is not comfortable with the material which reflects in the lesson. This bias towards literature and grammar (the humanities) adversely effects the students and has huge ramifications on their later education in relation to the sciences and especially critical thinking.
- The largest complaint that I hear from middle school teachers especially math and science are that their students were not properly prepared for their class by the elementary school. The teachers then have to attempt to catch the students up while preparing them for the next grade. This is not an easy task to say the least and may take several grades to get a student to an acceptable level of competence given the lack of background. The students themselves show apathy towards the sciences and math for the most part and posses almost no general critical thinking skills.
- High schools are implementing computer programs. I know of a high school class that students have the option of getting their CCNA. My high school had an awesome CS program. I give the teacher the majority of credit for this. I would say that the following two examples are not in the majority. Developing a competent program takes time and a great deal of support from the schools administration as well as the school board and community.
- The greatest misconception that I hear is that a 4-year college is supposed to prepare you for a career. A 4-year college is not a trade school. What you are obtaining with a undergrad education is the ability to think critically, research problems and develop solutions to those problems. This while giving you the language and the building blocks to develop and apply those skills later in life.
- That said once a student graduates with the shiny new CS degree or any other degree for that matter there is a lack of support in the business community to develop the raw talent into something useful. The lack of entry level positions in corporate America is disheartening. Corporations do not want the cost of developing talent that may not always be employed with them. Preferring to hire talent that has already been developed. Without the ability to gain practical experience, be mentored and stay current in the field the CS graduate's degree degrades in time.
- In conclusion there is a problem of motivation. No one is motivated to change the status quo. Taking the line if its not broken don't fix it. But if we are to compete in a global economy where we want to be positioned as the technological leader (China also want to be there and is positioned pretty well) there needs to be a revision of the K-12 school systems in this country. Corporate America needs to acknowledge that profit margins are not the only concern that they should have. They should also be concerned who their consumers and employees will be in 10 or 20 years (I know that getting corporations or really anyone to think really long term is next to impossible). Then again this problem, if there is one, will not effect me or anyone reading this. It will effect the next generation and the one after that so why do anything about it now? Anyone?
If we truly* have such a shortage of computer scientists, then let's recruit the foreigners and bring them in as immigrants.
This is one of my favorite statements to make to Southerners.
There are lots of low-skill workers in southern states who are heavily opposed to allowing Mexicans into the country. They claim to be opposed to "illegal immigration". They claim that it takes money out of their pocket, as they subsidize, with their taxes, Mexican workers.
They say that they aren't in favor of protectionist laws, that they aren't trying to just be subsidized by higher-skill workers.
Yet the moment you propose eliminating the immigration quota, which should make them incredibly happy -- it would essentially eliminate any tax subsidization that they are upset about -- they continue being upset. They *really* want that troublesome competition to just vanish...
Any program relying on (nontrivial) preemptive multithreading will be buggy.
Here is what amazes me. That people can sit and say that off-shoring is natural (it is) and in the same breath think that everything connected with the issue is also natural (it isn't).
A simple lesson in very basic economics is in order. This is just to make my point complete before you read the article.
Normally in an industry there is hysterisis between things. a kind of resistance to changing movement (not always a lag unless you always flip the equation to form it that way).
So in a given year a certain amount of people enter the work force. Depending on whether there is growth or demand for them, they will collect a salary for doing their job. If demand is high, then there will not be enough of them, and the salaries will rise. If demand is low, then many will be out of work, and salaries will drop.
This is the natural order.
Off-shoring doesn't change this because off-shoring has costs involved other than salary. In many more detailed studies a lot of off-shoring (at least in the early period of the shift), is basically a null win. It shifts costs around so managers and their own can claim any reasonable gain (this is why new CEOs always restructure. If they didn't, then you could clearly measure their effect, if it all changes, you can't connect anything other than the large result. And the large result can be blamed on good management or bad times).
Off-shoring required shifts in expenditure and is not as easy as just saying we are hiring other workers. Its impact naturally would not be willy nilly and such under NORMAL circumstances.
However here is whats abnormal.
Take that simple model that I put up, and you can see that at its core off shoring is just another business choice and as such doesn't effect that model. if an employer can make more money this way, despite the added or rather different expenditures surrounding both choices, then fine, they will make that choice in the time they think is prudent.
Now take that same model, and inject 100 thousand temporary workers at artificially low salary. These workers do not have the same expenditures as resident workers, and these workers can be more easily blackmailed given their worries about sponsorship and deportation.
This is a new dynamic. Suddenly a subset of companies has an artificial competitive edge. They can acquire employees at a reduced salary and insurance base, for as long as the artificial (system short) bridge exists.
The natural effect of this is to artificially depress the salaries of those that are residential. It creates a competition between non resident temporary foreigners vs permanent resident citizenry. Given that the foreigners are temporary, they have an artificial advantage.
So what happens to our model? it plods along reacting as it should without regard to sources. The model does not care where resources come and go, only as to the hysterisis between those actions.
What would be a normal lag that would drive up salaries, thereby creating incentive for education and those committed to filling that salary, gets shorted. The salaries do no rise, and so the numbers of individuals entering higher learning for a career do not increase.
When large corporations are seen to cheat the visa program (every large firm breaks the visa law in that they do not place Americans that can do the job first. Period. That's what the requirements of the statute demands, but is not enforced. So the actual impact is even larger than what it should be given the statute)
So the market always reacts the right way given the forces injected into it. in this case, h1b visas depress salaries because they are applied to cut costs rather than to fill unfilable openings (as detailed in the statute - how many that argue this subject have actually read the statute? If you haven't shame on you for even participating, your no better than the girls that were signing to end suffrage. They haven't read or remembered the subject, and don't know what is in the subject they are commenting on, but that d
It seems that a lot of the comments here see a massive paradox in the (employer) stated lack of supply of CS practitioners, and the (employee/student) stated lack of demand.
Having been through the job search process a few times (and having read the recent academic articles on the subject), it seems the problem is this. Employers in North America are no longer willing to help develop software professionals. In other professions, we see employers taking an active interest in professional development from the entry level up.
Lawyers article for a year, and have a well understood progression from articling student to partner. Throughout the process, the contributions made are appropriate for their level of progression and an appreciated, relevant part of the practice's business. As a result, the legal field has a downstream supply of experienced lawyers, and even students and fresh grads can find work.
By contrast, the tech industry seems to expect experienced developers to appear out of thin air. Industry participation in internship programs is down. Postings for entry-level and early-mid level positions are practically non-existent. Yet demand for 10+ yrs experienced developers is high. Well, guess what? Experienced developers don't just pop into existence. The industry recognizes that much of the innovative work (that they need experienced developers for) isn't amenable to offshoring. They need to recognize that by offshoring the entry-level grunt work, they are starving their future demand for experienced developers (and ultimately rendering future innovation far more difficult).
"From the article: 'If our talent base weakens, our lead in technology, business, and economics will fade faster than any of us can imagine.'"
This is not only a computer science issue. This is, or soon will be, true for all technical professions.
And don't think business or professional services are safe from faltering.
Unless we strongly invest in education and our youth, the sun will quickly set on the U.S. of A.
I thought there where talken about Counter Strike...damn it!!!
What the US is lacking is individuals who are sincerely interested in developing their technical skills and solving interesting problems for their own sake, rather than people who are trying to find the easiest way into a high paying position that they care very little about -- having worked with both, I'd choose a British Literature major who does programming on her own, just for fun, over a Computer Science major who hates computers, but just wants a high paying job.
Good conclusion, but I can summarize it more briefly:
Hackers are wonderful. They're also rare.
Any program relying on (nontrivial) preemptive multithreading will be buggy.
"And kids who do put in that work, because they want to, you know, learn stuff, get pretty much zero encouragement from the educational system and active discouragement from their peers."
And yet the majority of the children of immigrants do well IN SPITE OF all the BS excuses spouted on this forum. Now how do you all explain that? What "establishment" is keeping the man down? Is their secret ingredient "love"?* And if so, then their "love" must be better than ours then. Maybe all those "poor quality" schools are to blame for their successes?
*Of course children of immigrants who are doing it for the money are failures according to slash-dogma.
Legislating it is an atrocious idea. The reason the companies hire out elsewhere is because it is economically advantageous. The solution to this isn't to tell the companies "don't act according to reason when presented with data; act against reason." The solution is to correct the conditions that are causing it to be more beneficial to hire out elsewhere (if that is a desired end... I don't care, myself, for the reasons stated herein). Adding a disincentive appears to accomplish this, but it is mere cookery that covers over the disease.
This is basically the same thing as telling a civil engineer to build a bridge over a 2000' river. He'll build a 2000' bridge (well, probably 2500' for stability, but you get what I mean). But wait! We've gotten funding for a 4000' bridge... and because of existing laws, we need to "make it to specifications!" So we tell the engineer to build a 4000' bridge over a 2000' river instead of changing (or better yet, removing) the ridiculous law. A multitude of laws doesn't make abuses fewer, it just makes them more obscure.
Legislation is the enemy of discretion. Discretion is the son of civil freedom.
unfortunately, things are cyclical.
The situation you describe has been the case
for the past 4 years. But I've been seeing
a change recently. I have been in the industry
ten years, with the past 5 contracting.
In the end, it's all about where your passion
is.
Actually, I been using a $3,000 USD tax credit to learn new job skills by going back to school. Uncle Sam has been picking up the tab for the last five years for me to learn computer programming and networking on a part-time basis (usually two or three classes per semester) to upgrade my skills from being a software tester. I now have a help desk job where I'm making $5/hr more than my software tester job.
As for graduate school, get real. You pay through the nose while going, you're shackled to debt for 10 years, and, assuming if you haven't been downsized out of your chosen field, you might reap the rewards of an advanced degree before you retire.
Chances are if someone is smart enough to be a real software engineer and not a vb.net code monkey they are smart enough to see that it's a horrible market to be in.
I've been a programmer for 10 years, and was a 2004 ACM world finalist and even had small contract position at NASA. I dropped out of college because I couldn't afford it, and can hardly find a job. When I do find the occasional job it's making $8 hr doing Oracle and webdesign.
You might say it's because I don't have a degree and that is somewhat true. But at the same time almost all of my friends who stayed in school and finished live at home because they can't afford to move out and 3/4 are either jobless or doing something else completely not related to programming/computers.
You want job security become a lawyer, doctor, truck driver or nursing aid. I've moved to 3 different states to find a secure job that pays more than $8 and those are the only things I see as constant.
I'm not trying to troll, but it's frustrating to be in my 20's and can't find a solid career to get into. Hell I'd go work in the mines or a steele mill.. might be crap work but they make $13+ hr, career for life, health and 401k for themselves and family.
Heres the answer and its pretty simple but no one has mentioned it. Tution. Engineering displicnes cost more then business and arts and sciences because of materials. Dont believe me, catch out tution at a private school and see if they charge more for engineering. I know my school does.
a te_schools_in_India/
But in public schools they cant do that. So what do they do. Enforce higher standards which in turn get students out of engineering. Once the student has moved to another major, the school is making more money because it cost them less per student.
In europe india et al. there is no TUTION SYSTEM. Schools just recieve money from the government so student have zero/minimal fees. http://en.wikipedia.org/wiki/Private_college#Priv
Therefore, if a school moves a student out of engineering they still make the same money.
Im not saying that the school is purposly trying to fail you but the reality is that the school is better off with one less engineering student and one more business major
I'm sorry but the majority of U.S. are the laziest people in the world. There's a reason why all of our industries are getting trounced by other nations. 8 hour work days, 5 days a week and retirement at 65? (Yes, I know there are exceptions to that but that is the average worker) We're seriously overpayed for the amount of work we do. Our education system is going down the drain. Most countries that used to send students to us now have better schools anyways. Our auto-industry is being whalloped by Asian markets because they can produce something better for cheaper, even after import taxes. People also complain about Mexican immigrant workers but the fact is, they work 10 times harder for less money than most U.S. workers, and they do jobs that most U.S. would smirk at. Most U.S. workers are spoiled and it's going to catch up with us real soon. In fact, it's probably already here.
I assume that you aren't contracting as an employee of your own corporation. If so, you should be able to deduct education costs as a business expense, up to $5250 under an educational assistance plan. IRS publications 525 and 15B cover that.
I also wonder whether you could take it as a deduction on your personal taxes. Have you spoken with an accountant? Pub 15B under Working Condition Benefits discusses deducting education expenses if they would be deductible by the employee as a business expense, and mentions specifically a test of whether "[t]he education maintains or improves skills needed in the job."
Larry
So what if the number of students has dropped. It should drop. Why? Because all those students that would make crappy computer scientists looking for a quick buck are getting other degrees. The real geeks that will be great coders are still there. So, the stat really shows us that 2/3 of the CS students in the last few years are now getting general business and art degrees like they should be.
This is slightly offtopic, but I'm hoping some people will catch this question and give me their advice. Please resist the temptation to mod it down.
I work full time as a software engineer (eg, I design and write software). I graduated with a degree in CS and Economics a year and a half ago from a well-ranked state school, but my GPA wasn't very good. Getting married, getting a job, and growing up a bit has changed me a lot, though, and I want to increase my education.
I'm thinking of trying to get a Masters of Software Engineering (MSwE) from UMUC. I don't have the time or financial situation to go back to regular UMD for a MS in CS full-time, much as I would like to, and I've heard anecdotes that the department doesn't like to waste time on part-time students. And, frankly, I don't really care for another two years of algorithms - that's not what I'm interested in as a professional (although, obviously, I try to keep on top of new developments).
Is this worth my time? I don't want to spend 3 years on this, and then find out that employers see it as a joke degree, and actually have it _devalue_ me. But I would like to go back and get some graduate education, even if the school is less than stellar.
Any advice would be greatly appreciated.
-Erwos
Plausible conjecture should not be misrepresented as proof positive.
The trouble with using the ACM contest as a gauge for our abilities is that it's not representative of our technology foothold.
;).
The contest is actually better representative of the theory research talent we have upcoming (which is important too I suppose).
The questions given are the "ah-hah!" types. You can stare at them for hours and yield nothing, or others can do them in minutes. They're not software questions; they're math questions.
Our decline in presence here is due to a numbers of things:
1.) Time students have between jobs and activities.
2.) Lack of appeal to businesses hiring. Winning the ACM is a big "I'm smart and possibly a diva." It's not a "look, I have job experience!"
3.) Other countries ACTUALLY HAVE CS DEPARTMENTS. We should expect hard competition from them. They do make up the other 97% of the worlds population
However, the incredible decline in CS enrollment is a bad thing. Although, could be a good thing for those of us who enrolled anyway! Although it's pretty heavy competition sometimes, actually working with peers who really want to be developers; those curved classes can end up curving a bit less.
I also went to the ACM world finals. We didn't do that great, but we did alright, and we had fun. My university was one of the best in the US in CS, but there was never even a chance of our winning ACM overall, and we never thought there was.
The reason is exactly what you describe: the groups that are winning the contest right now are putting in immense effort, going over literally thousands of ACM-style problems. They spend hours a day on it. They have entire libraries of pre-coded functions and solutions that they can plug into all kinds of problems whenever necessary.
Now, in contrast, at my Big Name CS School, most student energy goes into our classwork and other CS-related areas, and the ACM contest is a hobby. The team is generally chosen by sending out a mass email to the CS department saying "Anyone want to be on our ACM team?" The first year I did it, they had to send out the email repeatedly because they couldn't actually find 6 people (two teams) to send to the regional contest. Once you're on the team, every 2 or 3 weeks we would meet to go over some problems. The ACM problems are fun and interesting, and require problem-solving and basic knowledge of algorithms, but they are not "computer science," and all of us knew it. You put code in those problems that you would be ashamed to put into a production system, because you're on a time limit and it works.
Bottom line, the US's "poor performance" in this contest is not indicative of poor education any more than the US's "poor performance" in the chess world during the cold war. Russia thought it was very valuable to have the best chess players be Russian (proving that Russians were smarter, etc.), so they threw money at it, and had their promising players study intensely, at the expense of a conventional education, focusing entirely on becoming the best chess players. American chess players, for the most part, still went through a normal highschool and frequently college education, and while some were very devoted to the game, hardly any studied it with the state-sponsored fervor of the typical Russian prodigy. And so what? If the goal of your life is to be good at chess, then the Russian model is better, and if the goal of your life is to be good at the ACM programming competition then you should spend hours a day studying old ACM problems, but if you want a good general education (or even a good CS education) that is probably not the best use of your time in college.
I've worked in industry, and now I'm in theoretical CS, and neither area requires thinking similar to the ACM competition. Those problems are great, and doing well in the contest requires knowledge and talent, but to be the best takes a very specific kind of knowledge that is not nearly as useful in any other area of CS.
This article is FUD.
I am the man with no sig!
Nobody plays Counter-Strike anyway.
(No I didn't readd the article)
You've either got to be joking, or very young.
Hello, Bill Gates, world's richest man. Uh, Steve Jobs. Those names are known.
Geeks & nerds enjoy a social position not seen since the 1950's. I'm thinking back to the 80's: when the whole 'Revenge of the Nerds' franchise was born. It was silly stupid caricaturing of what would later become the slick stylish and edgy characters we see on something like CSI.
damaged by dogma
I didn't major in CS, but I program. Many of the other sciences teach the discipline required, and some of the best programmers started as hobbiests. I'd rather have a guy who majored in philosophy who has a collection of vintage C-64 hardware then some Java turd who got cranked out by the state U.
Also. Hello!!! India. Why would anybody want to major in something where every other day you hear about how Indians are doing it all for a dollar an hour?
Followed by... any of the vocational crap they teach in schools has a good chance of being obsolete by the time you graduate and get a job. Nah. Just get a good liberal arts degree from a top school. If you like to code, code what you like in your spare time. I wouldn't recommend anybody major in CS.
Oh. And programming contests? Give me a break. If it's a choice between coding for the fun of it, or studying for a final, or just about anything, I'm not going to mess with some stupid contest.
Nobody is going to shell out tens of thousands of dollars on an education that will only return less than 25% on their educational investment. Skilled CS's in this country are undervalued. All the work goes overseas to individuals who will work for less. Unfortunately, this country is expensive, and no one is going to work for pennies, or struggle to take low paying jobs because of foreign competition. With technology at it's highest mark across the globe, CS's are or should be a hot commodity. I mean, computers, devices, and hardware is everywhere, and needs to be maintained/engineered, and is thought of as being a major dependent necessity in modern society (hmmmm, just like doctors and lawyers it seems, who btw make a lot of money, but I don't see them getting outsourced). My advice to any programmers/IT profs, don't sell out. Keep your value high, just don't settle for a job because you need one, make them beg for your employment. Trust me there are companies out there in desperate need of domestic employment, and will pay good money for your skills.
You see, ACM finals require you to have a lot of practice in certain idiomatic programming problems and an ability to code map any new problem to one of the standards and code it up quickly.
This is actually a pretty useful CS skill, if you're faced with writing something more complicated than Accounts Receivable. The technique is called reduction, and requires you A) be familiar with a large set of problems solved by Dijkstra and a ton of dead men from the 50s and B) the efficiency of these. Being able to reduce a problem to one of those well studied ones has a number of benefits, not least of which is that you'll be able to demonstrate, when the boss approaches you, that the problem is intractable. Whether he believes or understands you, well, lets hope the world's best business people aren't German or something.
I'm curious to hear what you think it means to be very smart and good at CS, when reduction isn't part of that qualification.
I Browse at +4 Flamebait
Open Source Sysadmin
I haven't reached your notice either. That's not because of a deficiency in my achievement, but because you are not omniscient.
Your logic, she's not so good.
Why yes, I AM a rocket scientist!
While I agree with the overall attitude of your post, I am just reminding everyone that one of the primary reasons Einstein and the rest of those European scientists came to the U.S. was because they were trying to escape Nazi Germany.
"America: at least we're not Nazi Germany!"
I Browse at +4 Flamebait
Open Source Sysadmin
the govt of india does not sponsor any education. they used to support the IITs but don't even do that anymore.
And that is the difference between Eastern Europe and US. In the US you do it for "fun," while in EE you do it for survival. They need every little advantage they can get, and having that title around their neck actually matters.
The ACM contest is irrelevant, what is relevant is the mindset differences it highlights.
When the government counteracts the corrective force of the shortage, the government inevitably suppresses wages and salaries or prevents them from rising higher. This phenomenon is well explained in standard textbooks about economics.
The correct way to handle the shortage of high-tech labor is to prohibit the government from intervening in the labor market. Specifically, Washington should terminate the H-1B program. Washington should also terminate the the free flow of goods and services between the United States (which is a relatively free market) and (relatively) non-free markets like India and Mexico.
When the American government allows the free flow of goods and services (e.g., outsourcing) between India and the United States, the Indian government intervention that has destroyed the economy of India and that, hence, has produced millions of underemployed Indians damages the operation of the free market in the USA. Specifically, Indian workers in the non-free market of India now determines the pricing of labor in the American labor market.
Washington should promote and protect the operation of the American free market by allowing free trade between the United States and only other (relatively) free markets like Canada and Japan. The free market itself will correct any shortage of computer scientists by dramatically raising wages and improving working conditions, thus attracting more people to become computer scientists. Wages eventually will rise to a point at which the supply of computer scientists satiates the demand.
Similar comments apply to the market for unskilled labor. To resolve any labor shortage, the free market will automatically produce more unskilled labor by raising wages and improving working conditions -- if the government stops importing Mexican illegal aliens to eliminate labor shortages. When Washington floods the unskilled-labor market with illegal aliens, Washington inevitably damages the normal corrective force of a labor shortage and, hence, damages the operation of the free market.
As for graduate school, get real. You pay through the nose while going, you're shackled to debt for 10 years, and, assuming if you haven't been downsized out of your chosen field, you might reap the rewards of an advanced degree before you retire.
I guess it depends. I got a masters from a highly-ranked public university. I picked up a job as a graduate research assistant, which meant my tuition was payed for, plus a small stipend that helped with the bills each month. I came out with about $10,000 in debt (half of which I took out to refinance credit card debt with cheap student loans). My first job involved a 215% pay increase. Ignoring the greater job satisfaction, personal satisfaction I get from education, and all other "intangibles", I recouped my financial losses in less than 3 years, and should spend the next thirty years in a higher earnings bracket than I could have w/o getting an advanced degree.
...sometimes, in order to hurt someone very badly, you have to tell that person terrible lies. - PA
I said that 5 years ago and I still seem to have about the same amount of principle on my student loan I did 5 years ago...
Bruce
Today is a good day to code.
No wonder so many of you guys can't get jobs.
Quality of algorithms is largely irrelevant in 99% of this field, but the bulk of what gets done in IT is to understand business problems and figure out a way to implement it when you have to deal with legacy systems and interfaces. Its the equivalent of sending a missile into earth orbit when you've got a modern engine and balsa wood to make the rest of the spacecraft.
Oh, and you have no budget.
So the genius is not to be able to come up with an algorithm that is just great, it's to figure out how to blend new with old and meet a business requirement and do it for little or no money.
If you can demonstrate to people the value of what you're doing, they'll put you in charge in about 5 years.
Meanwhile, I've got a couple Indian programmers working for me that are so good that I trust their judgement implicitly (which is hard, because I was at one time perhaps the greatest coder in the western hemisphere), but they can't make an impact because they don't understand how the pieces fit together at an enterprise level. Hardly anybody can do that.
Which is why, ultimately, I make more money, despite the fact that my coding skills and knowledge of algortithms never was very good.
Those short Topcoder contests have similar problems. The person who has the most revelant "toolbelt" and is most practiced with their "tools", that is, the person with the bigger, better organized encyclopedia of ready made solutions is going to win. This is not necessarily the person with the greater insight and inventiveness. The winners will have coded up some common stuff beforehand, found some other stuff online, and organized themselves so they can find what they need quickly and adapt it with a minimum of time and effort. Nothing wrong with that; there's nothing holy about reinventing the wheel other than you might be infringing copyright if you don't. The contest is a good measure of resourcefulness and preparedness, and not such a good measure of general knowledge of CS, insight, and ability to innovate.
Intellectual Property is a monopolistic, selfish, and defective concept. It is "tyranny over the mind of man"
...is because many universities do this on purpose. This and Engineering are the two departments that insist on weeding out potentials. And they are doing it the wrong way. They are getting rid of CS hopefuls in the first year by creating classes in a much harder than normal fashion, no support or real help for creating programs and a very arrogant and unhelpful staff, except for one dedicated individual. It seems at the University needs a total overhaul in its CS department as well as new and more dedicated staff.
To be honest, I don't see how you are capable of operating a computer well enough to actually post a response.
"-The USA has a massive debt."
Which is essentially meaningless, or even worse for ignorant fools like you, a GOOD thing. Why? Because people BUY our debt. If it wasn't a good investment they wouldn't have anything to do with it.
"-Its economy is for a great part based on heavy usage of imported oil, the rest being service."
This point is just moronic. I would challenge you to post data, but you'll avoid this post like the plague once you realize what an idiot you've made of yourself.
"-Oversea worker are on average good too and they can do good work when not leaded by morron short-view outsourcer."
Great, (cheap shot time) how are their English skills? More importantly, the number of jobs that can be outsourced is limited. Once again, ignorance masquerading as expertise.
"-Good education is very expensive, so if it becomes financially comparable in the long term, burger flipping workers have the avantage of not being outsourceable."
No, education at a good University is expensive. A good education is, for all intents and purposes, free if you want it. As for the rest, could you parse that a little better so it's understandable by non-schizophrenics? Thanks.
"-I won't even mention the USPTO and american fair justice system..."
Great, that will save me the trouble of refuting you again. My refuter is overworked at the moment, so it could use a break (or maybe I should threaten to outsource refutation?)
You want to hate on the US? Fine, but don't couch it in pseudo-intellectual garbage designed to look like it's anything other than your own jingoism. The people here are smarter than you, and you simply aren't able to pass shit like that over without getting called on it.
Like I just did to you.
You start hiring less programmers and pay less to those you've already hired - wages go down a bit - people realize it's not worth it to bust their asses for years for a degree in CS and choose something else - supply of engineers becomes scarce - wages go up a bit - people see engineering as a way for them to earn above average - the number of CS graduates rises.
This is a cycle, and we're riding the upward wave right now. To ride the upward wave at this point, though, you need to be pretty good at what you do. You need to be able to justify your existence within an org and show that you're a better alternative to an Indian guy who copy&pastes large chunks of code instead of using a loop (and don't get me wrong, I'm not saying all of them do).
Once (and if) the market becomes white hot, people will start hiring everything that moves, like they did in 1999, and offer insane salaries and profit sharing. That's a big "if", though. Good news is, India is in "white hot" phase right now, which means salaries skyrocket and quality of work goes down the shitter (because the number of people who are _good_ can't keep up with the demand, so they hire _everyone_).
That's a most interesting point, thanks. I am a small business owner and am incorporated, which does make the tax law seem a little backward if a sole proprieter can take a deduction but a C-Corporation cannot. Bottom line, I think, is that if big business -- who are among those who say there is a shortage of IT talent -- wanted a tax deduction to send employees to school, they would have gotten one under a Republican President and a Republican Congress. Despite all the statements by Bill Gates and others, American IT "talent" is just not that important to them.
----
If short term thinkers get results, the results are short term.
Despite the Labor Dept's forecast of a 40% increase in 'computer/math scientist' jobs,
First, this Labor Dept forecast is fantasy. They're bought and paid for by industry lobbyists to plant such stories in the media before the lobbyists ask for an increase in temporary visas.
There ain't no shortage of CS, EE or any other technical people! There never has been and never will be!
The market works. Right now there are probably more than a million displaced technical people who've taken jobs in non-technical fields because it was all they could get. Prospective students see this and think twice before slogging their way through computer science or engineering courses. These are some of the most difficult, intense, time consuming curricula at any university. If the reward ain't there or is substantially diminished, students avoid those majors. As Norm Matloff has pointed out, enrollments in CS have historically risen and fallen in lock step with the actual demand for CS graduates. Outsourcing and offshoring enables companies to jettison their American workers while keeping their American markets, at least, for the time being. My employer is expanding operations in China and hiring developers there rather than adding more workers in the US. So we don't have many openings for developers in the US today.
Wansu, th' chinese sailor
This is an excellent post. I just wish you could get enough people to read it to actually make a difference.
I am not saying anything bad about open source/freeware, but does any one think it cheapens our profession, to the point where it make US (engineer) look like biz idiots, we gave away solution to problem, when we really should be charging for it.
I don't see doctor or lawyer giving out free advice (and it not because of legal reasons)
and yet I see programmer putting out freeware and then a pay pal donation button asking for donations, Are we begging for money now?
Bottom line, don't give out answer unless you knew you will get pay.
Given poor employment conditions, proliferation of 'patents' and 'IP' hucksters, lack of basic human rights like free healthcare, and a dismal education system, is it surprising?
If you're paying to go to graduate school in a "science" (quotes because computer science is more engineering than science, if you ask me), you're doing something wrong.
It's stil a telling observation on how time changes your perspective.
What he's really saying is that he's not interested in what the Olympians are doing and no longer envies them, and is happy with his life. In the context of this article about the winners of academic competitions, it's a fair statement about how these things matter very much to a few people over a brief period of time.
That's not to say that winning isn't an accomplishment, or that there aren't some sour grapes above. But even for *real* Olympians (e.g. those who won a gold in the Javelin, for example) the success in their area doesn't always transfer outside of a relatively small scope. There is a real issue of peaking and then feeling that the rest of your life doesn't match up, especially when you throw yourself very hard into winning something.
As much as people think "geek is chic" I'd say the opposite is still very true. We as a society, especially through our media, do not celebrate intelligence. Movies are dumbed down. Music is at an all-time most dumbed-down ever (hip hop is a scourge!). Even the realm of computer use and the internet is rampant with ignorance, attitude and OMG R U 4 reelz??
I would solve this by making companies show that there are NO Americans at all who can do the job before getting an H1B. Also, I would love to see companies that are shipping jobs away boycotted.
Why do we have to ensure jobs for anyone who is even the most minimally qualified? If a company wants to bring in smart foreign workers, since they are smarter than the folks at home, then more power to them. By propping up poor CS students, we are doing the same thing the RIAA does that we hate so much: getting government legislation to keep around a failing business model/person.
I'm in my second year of a CS degree and I do support immigrants and having offices in other countries. I think Google does it the right way: hiring people in other countries for their remote offices, while at the same time, still hiring lots of Americans as well.
You may be marginalized in the short term, but in the long run, the globalization of knowledge jobs is a good thing.
This kind of specialty degree in the US, where nobody is willing to learn math anymore should be one of the highest paying positions today, but the new world economy is killing it in the US. Why work that hard when you can get a better paying job without the difficulty of the education?
What the US is lacking is individuals who are sincerely interested in developing their technical skills and solving interesting problems for their own sake, rather than people who are trying to find the easiest way into a high paying position that they care very little about -- having worked with both, I'd choose a British Literature major who does programming on her own, just for fun, over a Computer Science major who hates computers, but just wants a high paying job.
Beautifully put. I think it would be fascinating to see a more worthwhile survey, one that takes snapshots of people doing programming-related work 5 years after graduating from college, 10 years after, and 15 years after. Then find out what these programmers studied in college, and how they became programmers.
This makes me think of high school. There were a few kids at our school who were really into business. They took the business class, ran the student store (which, I confess, was a great source of Zots candy, but I digress), and generally made plans to make lots of money. They weren't necessarily the people who became entrepreneurs. In fact, I don't know if any of them did. Most of the really successful entrepreneurs I know got interested in business as a vehicle for making something real. They had an idea and wanted to turn it into a business. They learned business techniques along the way, and in so doing became good at business.
How many humanities majors own their own businesses 10 years after graduation? How many of them are programmers 10 years after graduation? I think these are good questions, and if we had the answers to them, we'd know a lot more about what's really doing on in the US IT market.
Read the EFF's Fair Use FAQ
It was always my impression that going to graduate school for a science-related field was very appropriate; what about research?
Are older, more experienced professionals valued for their ability, or spurned for their unwillingness to work 60-hour weeks?
Are IT professionals continuing through a long career in the field, or are they burning out and leaving after 5-10 years?
Is the unmet demand a fundamental problem with supply, or with the price employers are willing to pay, both in terms of wages and in terms of working conditions?
It often sounds (and experts say) that IT in North America is practicing something akin to slash-and-burn agriculture---get the fresh new CS grads, work them like dogs, and throw them away when they burn out 10 years later. (EA---the whole game industry, really---for example, is infamous for this.) Just like slash-and-burn agriculture, burn-and-churn IT is unsustainable, and an inefficient use of resources.
If employees don't want to work for your industry, maybe the problem isn't with the employees.
quotes because computer science is more engineering than science, if you ask me
Any school that doesn't treat it as such, is one that I personally will not hire from. But then again- unless a company is willing to PAY for the education, they don't deserve to hire somebody with that education to begin with. I would not encourage any student to go for a CS degree today- and I certainly wouldn't advise anybody to pay $40,000 or more for an SET degree that is apparently only worth $10,000 a year from who they are hiring overseas.
SJW: a person who perceives an injustice, and while correcting it, commits a greater injustice.
... but on the other hand you seem to be conflating computer science with the IT field. The vast majority of IT positions do not require computer scientists to fill them in the same way that the vast majority of positions in the construction industry do not require architects or engineers.
A rider on the general immigration bill Congress was considering before Easter break increased H1B visas by 200,000. Its was one of the these "midnight" admendents added a few hours before the bill was to be voted on so no one would see it. The bill was tabled until after Easter break because there is no strong overall immigration consensus yet.
Jim Cramer wrote:
> Plus, AMD is a company now run by engineers, whereas it was once run by
> salespeople. During this management changeover, the company began to
> gain market share. Intel took the opposite route, Cramer said.
>
> The company was founded by engineers and scientists who
> "outmanufactured and outengineered the other guys." Now it is run by a
> sales guy, and the company is slipping, he said.
Have a feeling they're right when they say lines like that and they're wrong when Harvard says lines like
> the last thirty years have been dominated by professionals with
> strong analytical abilities...the future will depend on individuals
> with skills of inventiveness, empathy, joyfulness, and the ability to
> find meaning
The trade deficit says engineering produces more value.
That is what this issue of MoneyMag says. There was even a thread in /.
(Too lazy to find it and post a link)
If there is a demand, and if there is a shortage of supply, the
pay will automatically go up. Trust free markets.
sed -e 's/Chuck Norris/Rajnikant/g' joke > fact
Of the two best young computer scientists I know, one is running a hedge fund and the other is working for a derivatives firm in New York. The young Stanford students I talk to are going into finance, law or bio.
To pick just one example, the Kalman Filter, which is used for everything from radar tracking to helicopter stabilization, relies on linear algebra. And physics gives an excellent background in learning to apply mathematical modeling techniques to real-world phenomena. One of the best (or at least most interesting) distributed version control systems out there, Darcs, was written by a physicist, in the Haskell programming language (the latter of course being based on the lambda calculus, another seemingly esoteric subject which is so fundamental that it really ought to be taught in high school). Darcs is based on a physically-inspired theory of patches.
There's a problem here which was described by Paul Graham as "The Blub Paradox" (in Beating the Averages). Graham writes "But when our hypothetical Blub programmer looks in the other direction, up the power continuum, he doesn't realize he's looking up." It's not easy to correctly assess that which you do not (yet) understand.
I agree, this is a big part of the problem. This comes from the fact that everything about computers, and particularly software, is so relatively new. As alluded to elsewhere in the thread, you don't get HR people trying to hire mathematicians or even economists for accounting positions - they know better than that. They just don't know better than that, yet, when it comes to programming, particularly in "IT". And this confusion affects academic curricula, too - universities want to satisfy the commercial demand with subjects they already teach, and academic computer scientists don't want to turn themselves into a Java instructors any more than they absolutely have to.
I think that'd be a start. However, I also think we'll eventually find that the tentacles of software are so diverse that "software engineering" is too broad a subject, and we'll end up with a "software school" analog to "medical school" or "law school", where a wide variety of subjects are taught, including theory, engineering, and other topics. I notice CMU has a "School of Computer Science already, and Northeastern has a College of Computer and Information Science, but most other institutions still treat CS and related disciplines as a "department".
Personally, I'd love to see all college sports banned, but that ain't going to happen. Sports brings in alumni money. It also serves as the recruiting center for professional sports. Having a great team in some sport is considered prestiguous by some.
Sports supporters love to say how many good students wouldn't make it through without athlete scholarships. While I'm sure this is occasionally true, how many more "students" have no interest in college, and attend only so they can attract recruiter attention?
I'd rather see sports being supported by clubs for the love of the sport, and maybe secondarily by professional leagues, who have an interest in keeping the flow of new prospects going. Colleges should be completely out of the sports business, and focus on academics.
It utterly befuddles me how so many comments in this discussion conflate the IT sector in general with the field of computer science. The truth is that the vast majority of IT jobs do not require a computer scientist nor have all that much to do with computer science. Just like there is a difference between a plumber that puts together a system of pipes and the engineer who designed the system and a difference between an electrician who wires a house and a scientist who studies various forms of electricity, there is also a vast difference between a computer scientist and a programmer, dba, network admin or help desk monkey. While it is true that these positions deal with some aspects of computer science, they dont require computer scientists anymore than a rocket scientist is required to pilot a rocket into space.
I'm guessing they aren't wanting to pay enough? I mean, I'll go anywhere for the right price...but, it would have to be a LOT of $$$'s offered to make me move to NYC and work.
What is enough? These companies are paying market rates. Check Dice ~80K-140K. There are plenty of applicants, they just don't seem to be able to understand basic problem solving. Maybe the money is not enough, but what would be enough?
There is a well known software engineering study that showed that the very best programmers were 28 times more productive than the worst. Yet the salary differentials are not really that great. When I look for a new job and ask about compensation they go 'market rate'. Basically any job I get a technical interview for I will win over just about anyone else. However, the employers will not pay me that much more than people who are far inferior to me. So there is no incentive to improve my skills any more. I can get alot better. There is always more to know. However, I won't get any more money. I will just get more work. So why should?
Finance companies actually pay for performance. The effort to get a Ph.D. in finance is comparable to the effort to get a Ph.D. in Computer Science, yet I can make $500,000 or more working on Wall Street. The workload is similiar. Anyone who is a senior member of a major project works long hours and has alot of responsibility. So why should I stay in programming or if I do, why work that hard? I won't get much more money than someone who does not do that much. People ask will I enjoy it? Well for that kind of money, I can do it for 5-7 years and then retire. Then I can enjoy myself.
My guess is less enrollment in CS programs is due to understanding that the job you are going to get is most likely has little to do with science. Like maintaining the code, or even developing your own. Nothing glamorous about it. It is should be properly called 'IT' - information technology. Note that more and more universities have programs in CS and programs in IT. May be IT enrollment goes up? At least if you're enrolled in IT, you know exactly what you are getting it and what kind of job you can expect.
This is what has been pissing me off to no end... I'm at my best in terms of programming skill at 39yo, but companies expressly want college newbies they can exploit (read: harshly control and financially rape). Companies just don't want experience any more.
Why would anyone who is sane go into a career that's all but guaranteed to be cut off at age 35??
Steve Magruder, Metro Foodist
ise.gmu.edu
GMU has an MS in Software Engineering. What do you think of this degree? There don't seem to be alot of degrees like this around the country.
Or maybe not. Perhaps there was a reason that the anthropologist was picked over the comp sci major.
Our gov't several years ago set out with a plan and malice aforethought to torpedo tech salaries in this country by flooding us with h1b visas and looking the other way when cheap foreign labor starting taking jobs that more expensive - and talented - older American programmers should have gotten. They compounded this with tax changes to make outsourcing to other countries cheaper. They did all of this at the behest of large tech corporations. And now they are reaping what they have sown and all they can do is bellyache about it? Well guess what? We've set up our country to provide large labor markets for suits and lawyers, so now everyone in college has read the handwriting on the wall and decided to be a suit or a lawyer. And why not? Tech jobs are hard, they tend to be boring and annoying and rewards are few in this day and age when a suit's mistakes and not technical excellence are what decide a product's success or failure. Money was one of the big factors in keeping people in tech jobs. Now all they have left is job satisfaction in working on FOSS and - surprise! - it's not enough to keep all the tech jobs filled. There are only two kinds of people in Washington: morons, and Evil-Suit-Bastards. Not that I'm bitter or anything...
In a Ph. D. program, universities pay YOU! (usually)
I graduated with a CS degree in 2003. When I graduated I was bombarded with HIGH paying contract-to-hire positions. Of course I actually enjoy programming so I worked as an intern for several years while finishing my degree.
Companies don't want to take the risk or pay to train you. You have to be trained when you finish school, or you will not get hired at a decent rate. I'm 25 making 6 figures a year as a consultant and will continue to have work for the forseeable future. When I've been between jobs I have companies banging down my door to come work for them.
Do you know why I'm doing so well? There are never enough qualified people on the market who can do the job. I work with safety critical embedded code, a lot of which cannot be outsourced for security reasons. Sometimes a company will go through 10 experienced contractors to find one which is actually qualified, I'm not talking about resumes either, I mean hiring them for 4 months and seeing if they can actually do the work. Its sad what passes as a software engineer these days.
Having a Secret Clearance or being able to obtain one is an extra 10K/yr or $20/hr. Those jobs will never be outsourced. And you'll never get one without experience either. Its not a catch 22 either, everyone bitches and moans about needing experience to get experience. What they don't realize is engineers are EXPECTED to have professional experience when they graduate. You put in your time and do some internships, you will be rewarded.
By the way, I don't have a security clearance and have never had one, but I work at a secure facility and being a US citizen is a plus.
Just my 2 cents.
PS - don't take the bait and go lifer, consulting pays better, much better.
On the one hand, this is bad for America. On the other hand, I've been getting more cold-calls per week from companies and recruiters based off a 3 year old resume than I've gotten since the golden years of 1998-2000. The job market for programmers is red hot, at least around me here in San Diego.
Going to a contest with no intention of winning can be fun. When I went to the ACM world finals it was in Shanghai. And that was fun.
I have to agree that the main difference between the US and others in that competition is how seriously they take it.
For example: each team is allowed to take 3 identical binders with 100 pages of notes and code samples. The typical russian or chinese team would take 100 pages of carefully crafted and culled programming solutions and algorithms.
My team took 100 blank pages. And even then we had to go shopping at a Chinese super-store for paper and binders about an hour before these things were due.
When I worked in tech support for a major OEM PC builder, one side of the mouth said, "Be sure to give the ultimate customer experience." But the other side of the mouth appended to that statement, "As long as it only takes 14.7 minutes average call time. Your ass is grass if it takes longer."
Friends don't let friends line-dance.
Between laws like the DMCA, monitoring by many groups just looking to make an example of someone who doesn't have a pack of lawyers to defend them, outsourcing to anywhere but the US, who the heck WANTS to go into CS?
If you invent anything new in CS, it will get stolen from you by patent sharks, or slammed off the net by DMCA takedown orders.
If you find a security hole in anything, you risk fines, taking of computer equipment, and imprisonment as a terrorist.
Even if you find a job somewhere, you are 100% replaceable.
Hell with CS. I personally recommend any CS majors go to law school after graduating, if you have any desire at all to have food on the table for you and your kids in the future. If you are an American with a valid Bar Association license to practice, you can never be unemployed. Plus, you can let the nerds in CS do the inventing for you, then take their IP in court cases when they don't have the revenue to defend against you, and it costs you zip.
If my only exposure to computers while growing up was via Microsoft products, I wouldn't want to devote my life to CS either. Pounding nails through my dick would seem a less painful endeavour.
Many employers make silly job requirements so they can go to the department of labor and complain that there are not enough "qualified" employees to do the job so they can hire some cheap H1B1 visa's or outsource to India legally.
Those offers were there just to make there case.
PS... do you really think management is safe from outsourcing? After all I bet an Indian manager where the programmers are would be alot more efficient and could communicate with the programmers directly? Hmmm.. now how much would an MBA here make again?
Get a CPA or something else instead. Management and senior level IT workers are going next as whole IT departments go oversea's where the cost of integration is lower.
http://saveie6.com/
First off, the real issue here appears to be lack of CS and Math-related research-style positions.
A quick search of job boards will show you that nobody wants to hire entry-level computer programmers / network admins, so anyone quoting a lack of bodies is BSing you. We've discussed this issue on /. before now.
The author may think that he's hit on an issue, but his arguments seem specious and his research is very shallow.
From TA:
Specious #1: OK, first, if China AND India have ONLY 3x the # of grads, then the US is doing great! China AND India have 2.4 billion people, the US has 0.4 billion people. So the US has 2x as many engineering grads per capita. Why is this number cause for alarm?
Specious #2:What's more, this isn't really the issue anyways! Because your regular CS grads aren't doing "innovative, ground-breaking research", they're programming Database front-ends and administering networks. What you really want to know about are your Masters and PhD grads, but he fails to provide any relevant numbers for these.
My experience: I looked in to taking a Masters in 2004 at my Provincial University (~30k students). I wasn't eligible. I graduated with a 4-year Honours Co-op degree and a B to B+ average. It turns out that they were so flooded with students (mostly foreign) that the required average was now an A and they even closed the application period 3 months early. They were turning away some of their own grads.
So if we've run out of profs and we're turning away interested grads, does that still mean that we're behind? What's really the issue? I'd say it's money.
CS work is difficult. It requires years of study to be correctly proficient and continuous study thereafter. And to top it off, most IT workers are putting in massive overtime and are generally overworked (esp. the Network guys). So IT workers want to be well-paid; but nobody wants to pay for this work!
General programming work is quite expensive and the ROI is usually long if there is one (some software projects have no ROI, they just need to be done). Software itself is expensive to create and productivity of staff varies wildly b/c the learning curve can be very steep. Nobody wants inexperienced IT staff, so IT workers want to be well-paid.
To make this even more expensive, computer programmers in the US are bringing in Internationally exorbitant rates (one IBM programmer for $125/hour or a 25-man team from India?)
So at the end of the day, where do you put the CS PhDs? Where are they going to work? What are you going to pay them? Of course if companies won't afford CS Bachelors what is the industry for CS PhDs? How many CS PhDs do we really need? Wouldn't we rather have the best brains go into Med studies (seems we're always at a Doctor shortage here in Canada)?
(Please if you have answers, I'd like to hear them, these are not meant to be rhetorical questions)
And just what program did you write which you were able to sell over the internet? A name and a review link would would be interesting. I doubt that the most visible software in this business, WinZip, makes enough money for the author to live on.
I have written lots of programs and could not sell them. Largely because what I have is not what is wanted. In order to change what I have into what is wanted will take lots of time and effort. Most business people think that you can buy a piece of customized software for $1000, since that is the going price of MS Word. Unfortunately, not with customized software. They (my customers) tell me that I can sell my software with its customizations to other people. Great, but someone else will want different changes and different customization.
About 25 years ago, the business model was that a small team could write software in a garage. Now it takes teams of people willing to work very hard to make something, and costs around $50M. Mind you, I have worked for small companies (for options) which are now bankrupt because they never attained market penetration. The problems are complex and the industry is always changing.
On top of that, the big companies have libraries of patents to keep out the wanna bees. Lots of silly design issues are covered by patents, trademarks, and propriateary architectures. As long as you are not making serious money, no one will notice. But watch out if you come out with something which is a money maker, you will need teams of lawyers to "rescue you".
Here in Brazil with 25k dollars you get experienced professional programmers with that sallary, even dough some languages earn more than that, but you get the idea. You cannot beat outsourcing, it's just cheaper! with 20k dollars you get medium experienced developers. Outsourcing will be the way for the next couple of years, for medium, large companies, and 5 years from now small companies are going to start outsourcing. Imagine how much you can save on outsourcing your software. If you are interested I can even help you outsource. Peace
I think the problem here is that college kids have finally realized that no longer can you just get a CS degree and start making 60k+ a year right after you graduate and it discourages them to the point that they pursue other things that while they will also not make 60k+ right out of school, they will enjoy it more while they are in school. It is almost irrelevant how talented you are when you get out of college now, because companies are much less willing so it seems to pay young kids high salaries. Someone graduating top of their class as a CS undergrad will still get an entry level programming job when they get out of school sadly. Now that many companies are making it almost mandatory to have an MS in CS(see Google's career pages) it makes it very discouraging to young kids in the US.
http://www.denialofreality.com/
The bigots further claim that there is no difference between (1) unifying two free markets like the United States and Japan and (2) unifying a free market and a non-free market like United States and Mexico.
What I am pointing out is not a joke. Just look at the 800+ posts at Slashdot over the years by Mexicans, Indians, and similar bigots on the topic of H-1B's and illegal aliens.
The majority of software engineers that I have worked with have other degrees and either minored in CS or took just a few CS courses. In my experience (and this is a generality, not an absolute) those that had other majors have been more productive at coding due, I believe, to the broader knowledge base. How many software jobs are there for people to create code that doesn't require domain experience?
It is long past time for us to move the fundamentals of programming to being required base courses for most all degrees, in the same vein as language, math, and science fundamentals. Instead of CS graduates, we need human interface design grads who have had CS courses, doctors who have had CS courses, engineers who have had CS courses, economists who have had CS courses, business majors who have had CS courses, accountants who have had CS, etc.
Perhaps this is exactly what is happening. I'd rather see a study indicating the number of student-hours spent in CS classes than a study indicating how many people are majoring in CS. CS is for those who are going to teach and a few others who are going to create operating systems, database engines, and a few other applications that don't require extensive knowledge of another domain.
I know several very smart people who were rejected from UIUC's CS program in the last few years. It's amazing though, that seems completely inconsistent with this steep drop in numbers. Are schools simply accepting less people, or what?
Sendou Wave Kick!!
Isn't the pattern rather obvious by now???
[That huge, double chin that Thomas Friedman has is hiding an alien!]
Just observe our president and vice-president. These two are obviously superior. Look how knowledgeable they are about Middle Eastern culture and history - they freaking brilliant.
Otherwise this administration would be experiencing real problems in Iraq and elsewhere throughout the Middle East. Yeah, Mustafa Attaturk has nothing on our homegrown geniuses.
["I'm hearing voices." Geo. W. Bush]
As a person in high school, the time has come where I need to decide which path I want to follow for a career, but when I was starting to show interest I've been bombarded with differing views.
One one hand, my father who works in a Fortune 500 company tells me that I shouldn't even think about doing anything with programming or software engineering, etc. His primary reason is that this field doesn't have much job security and its impossible to know even if today is your last day before being laid off. Which I do completely understand,
But then I turn on CNN and I see one report saying how Tech jobs are being outsourced and then I see another news report saying how we(America) are lacking CSs or related.
And here I am totally confused, I don't really know who to listen to, family or media???
That's the main reason why I've steered myself away from programming, tech, etc. Instead of going through college to find out if I made the right decision or not, I chose something else that doesn't interest me as much, but I know there is job security.
I also know that many others are in my boat too, If we can just get a reliable source to tell us the truth, that would boost confidence of the future students, and hopefully this will happen in the future.
no text
Everytime you kill a kitten, god masturbates.
Everyone wants x amount of experience but they want to pay only entry level clerical wages for that experience. In addition only short term contracts are offered with little prospect of extension (to cover funding grants). It's happening today and it's happened 15 years ago when I chose the clerical path and ended up in a comfortable job that is paying more than those round robin funding grants positions. When computer science (and all other sciences for that matter) start requiring highly experienced people for low wages to drive their business models then the market is seriously skewed by government interference of some sort.
Gee, I wonder why students aren't entering CS/Engineering/Science programs? I wonder, could it be because graduates with those degrees aren't making very much money?
The article says that demand is going up, and that supply isn't going up fast enough to meet the demand. By deduction from basic supply/demand theory, this means that salaries should be going up... but they aren't. Rather than increasing salaries, business leaders are bringing in more temporary laborers, and outsourcing other jobs to India (or other countries). Stories like this are put forward by business leaders in order to justify an increase in H1B workers. Can't find a good American programmer for 40k/year? Why pay more when you can bring in an H1B?
If I was a high school student, armed with this information, why would I go to college for computer science? I would take some dopey humanities/philosophy degree, get straight As, ace the LSAT, then go to Law School. Lawyers make money. Programmers don't. But virtually all good programmers are smart enough to be lawyers.
Go to Law School and join America's fastest growing industry: Litigation.
We are a small software company in New York City and we pay competetively, quite a bit higher than the numbers that I have seen floating around on these forums (but then again, we are in NYC). Now, of all the resumes we get or we pick up from job posting sites 80% are people from India and China. Maybe it is the fact that we are in NYC, maybe its the sites we are looking at, maybe its the way we recruit, but we see almost no US-born applicants for programming jobs.
What we value the most is excellent problem solving capabilities. The few US-born people we have interviewed have shown very good problem solving skills and very good communication and written skills, and we'd obviously prefer hiring top-notch people who could do hard core programming, talk to our customers, and write internal and external documentation that people can understand. We have frequently had a problem where we know we can't expose an engineer to a customer because their English is not very good, or we prod our engineers to write more readable documentation, things that a US-born person should take for granted (yes I know, many Americans are probably just as bad, but its a matter of scale - we've actually rejected good candidates because we simply can't communicate with them).
We found that other companies also realized how rare these traits are and the process of attracting and hiring someone with these abilities has become brutal. Even if you manage to secure someone, there is always the risk that they get poached a few months later by some other company that is willing to give up more. I have a hunch that most good US-born engineers never put up their resume somewhere because they are snatched up before they get to that point. With that in mind, every meeting we have internally we urge our employees to send along any resumes of friends or anyone they think is good so we can try to get them before they put themselves out on the market (one of our best developers I recruited right out of a programming class I was teaching). So from my vantage point, the demand is enormous and the supply tiny. And so we will hire Chinese and Indian programmers because we have to. Of our development team 65% were born in either China or India, even though all the founders were US-born.
So when people say that there are plenty of American programmers out there that can't get a job, I say I don't see it. In fact I see the opposite, the ones we do interview know they are in such high demand and have been asking for higher salaries as a result.
One last thing that I haven't seen a comment about yet. I don't know about any other software engineers out there, but I got into this because I absolutely love to program, not because I looked at it from a pure money perspective. I mean, are college students really choosing majors and choosing jobs only because they pay the most and not at all because of what they actually like to do? And I don't consider this a dead end career. Does anyone truly think that all demand for good developers will simply dry up? That 10 years from now there will not be a need to write software anymore or that there won't be any challenges in software development anymore and that all software will be written by sweatshop programmers? Do you truly believe that salaries are the only criteria companies use to evaluate employees? If so, you really have your head in the sand.
So in conclusion, I'm hiring US programmers (that means you slashdotters)! If you are a good problem solver and Java is your language, go to http://www.audiumcorp.com/ and send us your resume. Do it not just for the excellent opportunity, not just for the good salary, not just because you love new challenges, do it for your country :)
An engineer is someone who spends 3 hours trying to solve a 2 hour problem in 1 hour - Anonymous
burden yourself with tons of student debt, when your job will be outsourced or you'll otherwise be out of that career within five yers?
Longshoremen in my area are heavily unionized, will never be laid off or outsourced, and make well into the six figures for 35-37h a week.
--- Jump!! Fire!! Bullet time!! - Lego version of the Matrix
Wasn't double clicking and one-click-buying patented?
> In short, the U.S. CS grads they're interviewing aren't getting experience in the stuff they > need: DBA stuff, systems administration, and commercial development methodologies.
:) is more of SWE :)
OTOH, none of those things are CS ! I teach CS at Southern Poly (a state university in Georgia), and we have CS, IT and SwEng degrees. DBA and SysAdmin are more IT and commercial development methodologies (whatever that means
I'm not sure what do employers expect from a CS grad (and probably different people expect different things), but I try to create in my students the ability to *learn* new technologies quickly. So although they don't *know* DBA stuff, they can learn it in a weekend of no sleep.
So what you are saying is that those countries value academic acheivement more than your country does. If it was a football competition do you think it would be taken more seriously in your country?
Australian running a company that does C# / C++ / Java / SQL / Python / Mathematica
'If our talent base weakens, our lead in technology, business, and economics will fade faster than any of us can imagine.'"
I don't see what the big deal is. Isn't money supposed to drive which careers people go into? It was "market forces" that promoted the idea of offshoring and H-1B's while many of us had nothing but pinkslips. Market forces don't seem to favor computer careers these days: expensive education, constant change, instability, long hours, etc.
Now they say money-based economics is NOT working and that we need to use some kind of social pressure to steer people to the "right" careers?
What gives? Does economic incentives drive the economy or doesn't it?
Table-ized A.I.
US Schools will have consistently produced the most qualified students in academia. There is no sign that this will change because schools in the US have the most funding, best professors (as researchers), and best overall reputation. It's cyclical since reputation attracts the best students, and those students enhance a school's overall reputation. A short term shock, such as a decline in enrollment, does not seem to have any long term implications. I also do not see any non-trivial change for American technological superiority. Again US schools produce most of the research in academia - be it CS or economics or engineering - and these schools attract the best students. I think the real problem is how US policy is turning away these foreigin geniuses who obtain their PhDs at top US schools. That will hurt the US in the long run. Not these labor market factors. I mean who really cares about the typical coder at a firm? These are easily replacable. Geniuses in academia are NOT easily replacable.
You, and university administrators, divide thing us like this:
a. CS degree, pure theory, LISP/Haskell/OCmal/Scheme/ML, Turing machines
b. trade school, slap together a Windows business app, Visual Basic
To you, "trade school" is a great way to insult people who care not
for your ivory tower. Neither of the above is any good for:
a. embedded systems bring-up
b. giant C++ apps like Mozilla and OpenOffice
People like you have blocked the existance of the degree programs that
are sorely needed. To some extent, EE is filling the gap. That's sad,
because it waters down the core EE curiculim which ought to be about
stuff like wave propagation.
Seriously though.. not everyone is cut out for CS and not everyone is cut out for college. If college does not work, try a vocational program. Never going to college is not the end all. Who cares what China and India do. Outsourcing is going to happen whether we like it or not. I'm kinda glad there are less graduates in CS. Just because China and India have more does not mean they are /good/. Why do people equate China and Indian education to something near perfect? So we have a small percentage of the population that are smart. The people are the same there as they are here in terms of intelligence. There is not something special in their water. Remember, there are differing levels of intelligence.
My point was that if you're 1) graduate studies material and 2) in a "science" field, that you won't pay out of pocket for graduate studies at a reputable school. Through TA/RA/Fellowship money, you'll get paid (not a lot, but paid) to study/research.
Very true. I was an assistant coach for four years with four international contending teams (which performed very well I might add), and poor performance in the contest is NOT a sign of a drop in US performance. Many teams practice very hard for this competition and that is how they win, just like everything. Most US teams do not practice for this as it interferes with normal school activities.
If they want to make an argument for falling US ability, they are going to have to use another metric because this argument does not hold water.
Browsers! Hell, when I started we didn't even have binary. Binary is for hippies! Ones and zeroes holy bejeebers, we would have been glad for it. Try writing a whole compiler in unary. We had nothing but zeroes! And don't even talk to me about self documenting code.
And Jolt and Bawls, you little sissy men. We were lucky to have water. We would have to go down to the river and make our own durn water. We'd grab two hydrogen atoms and one oxygen atom, and smash them together. Took forever to make a pot of coffee. Starbuck's! Sipping your latte...
I agree with you on the CPA stuff. Of course the real gold mine is anything in the medical fields, particularly Geriactric type fields, Medical equipment anything or any kind of Nursing. With 75 million or more baby boomers heading into retirement you will retire a millionare. Of course the boomers might vote to open the border to get cheaper nurses and orderlies, but the future demand will be staggering. For CS and other software people, you are screwed. My company is splitting the differce with China and 50% of all management, development, project management and test engineering jobs are going over there. If you are not in the top 50% of your chosen IT profession, my reccomendation would be to get fuck out because you are going to be competing with the 50% of the experienced IT professionals that get let go. The only saving grace is that unemployment is creeping closer and closer to pre bubble levels but I doubt that those jobs will be in anything that can be eaisily outsouced.
"There is nothing to do it. But to do it." -Floyd Pepper
Atlast America is losing to China or India. Just didn't want the US to rule the world. Hopefully Open Source will also kill American giant Microsoft.
Computer Science should not be able Enterprise Information Service. It should be about computation. With the Computer Science in the US rushing to "meet" the market demand of Web programmers which are easily outsourced to more focus education in China or India. Computer Science for the 21st century should be able how to design algorithm to the emerging new computation media like biology, nano machines and other which will require a real understanding of computation and how to design algorithm for them. There are after all a migration path in the information service sector. Like the migration of farming and labor intensive jobs to low cost countries like India and China, America can still maintain its edge in the field by looking at the real meaning of computer science. My favorite quote is "Computer science is no more about computers than astronomy is about telescopes" from Edsger Dijkstra.
Xenophobia == fear of foreigners. Saying that all foreigners, no matter where they are educated, suck, is exactly what xenophobia is.
i read somewhere (rather recently) in the IT world, the average difference between someone with a degree and someone with a high school diploma is $9k/year. i'm sorry, i'm already pulling in $70/hr and you're telling me shelling out $30k is worth it for a $4.5/hr increase? bump that. i will get a certification or two, spend 1/10 what you spend and still make the same kind of money.
just because i dont have a piece of paper saying i know computer theory doesn't mean i don't know it. i meet too many idiots in my profession who claim they have a degree from such and such or have been working in the field for x amount of years yet don't know shit. then they get all pissy when a 23 year old 'kid' walks in and shows them up (not on purpose of course).
Only people with no motivation or no skill make $25k a year for any extended period of time.
You forgot "no greed," or some qualifier like "in the UNITED STATES" or some other highly developed country. For example, consider Peace Corps volunteers. Some are very talented and motivated. They live on peanuts, and they change the world at a grassroots level. I'm not one of them, but I've seen what they do and it looks like very satisfying work.
$META_SIG_JOKE
Still. your reply doesnt explain why US schools were winning the competition just a few years ago. Or why one of the US teams looked like they had just walked out of "a minor car wreck" if they really went there just for fun and not expecting to win. You Americans are taking too much for granted, and the article is right while you are partying, going to debate clubs and gay clubs and whatnot and sitting around with your notebooks pretending to be studying the rest of the world is quickly catching up to you. Here if you try to slack and don't not study for 18 hours a day you fail and are expelled after the first semester and the drafted into the russian army where your smartboy ass is beaten and raped by orfanage rejects. You have to straighten up or your history.
US-UK-Israel: The real Axis of Evil
Fortunately that's nowhere near my experience; you can easily make a lot of money as a software developer or administrator, at least in the Chicago area. I've been working as a developer (Perl, C, Java) and admin (*BSD, Solaris, AIX, IRIX, Oracle, DB2, MySQL, etc.) for about seven years and I just broke six figures last year. A good friend of mine was making well over six figures after the same amount of time with his company.
In my case, I've always joined companies that were in a business other than software for sale, but needed someone to run their UNIX systems and create software to help sell their products. In my friend's case, he's a core developer in a small company of less than fifty people writing telephony applications and the supporting infrastructure (least cost routing, billing, etc.); the business would not be able to operate without him. Also, this idea that you'll sit behind a keyboard for eight hours a day simply isn't true. I spend a lot of time doing things like meeting with business people, implementing their processes electronically, writing documentation, planning software releases, evaluating new technology platforms, mentoring other members of my team, etc.
As far as I can tell, if you're truly a well-rounded and knowledgable developer or admin, and make yourself indespensible to a company, then you'll be paid very well. That being said, there are a lot of companies that are simply looking for code monkeys, do not work for places like that.
...richie - It is a good day to code.
The number of lawyers turned out by the US is more that their engineers. Even more arts degrees than engineering degrees. And they expect that will not eventually create an economic collapse? Too many drones and not worker bees in the hive, results in no honey.
"Contrary to Slashdot's belief, the stupid have the same rights and moral status as the intelligent."
Therefore competition is immoral. "From each according to his ability, to each according to his need."
Hey! Wait a minute... Sorry, it's been tried. Doesn't work.
Like the other response says -- it is only over the last several years that the competition has gotten so serious in some areas. There has been relatively little corresponding change in how US teams approach the competition.
Or why one of the US teams looked like they had just walked out of "a minor car wreck" if they really went there just for fun and not expecting to win.
I never said that every US team realizes they will not win -- just that ours did. I would speculate that this team just assumed they were the best, since they were always the best in their region, and didn't realize how seriously some countries are taking it right now. Even if you don't work on it for hours a day, it can be jarring to go from being the best all the time to being soundly beaten. To drive my chess metaphor entirely into the ground, think of a highschool chess team that can beat anyone else at the school and thinks it is therefore hot shit. If you send that team to a serious tournament against some of the eastern highschool players that spend most of their days practicing chess, they will probably resemble a minor car wreck too... but this says nothing about the countries' respective math education programs.
The rest of your response descends quickly into troll territory, so I don't really want to respond to that. In short, the article gives no substantial evidence for its claim that US CS is declining (relying mostly on the programming contest), and neither do you.
I do agree that the US education system is not what it should be. But the article doesn't deal with any real issues of innovation or research productivity or even the less academic issue of industry productivity, or in fact any other relevant measure of "decline," which is why I call it FUD.
I am the man with no sig!
It's not contradictory that CS departments are calling for more students
at the same time as there are few jobs. Liberal arts departments have been
calling for more students for decades, ever since the idea that you could
go directly into the business world with a just a liberal arts degree fizzled.
More students = more funding = more good stuff
If you would like to live in a state like China, I suggest you go move there. China is succeeding because our leadership sold out to international corporations that saw more money in selling out the American middle class than they did in real patriotism.
China is what the lassei-faire would like to turn the US into. A slave state governed by elite individuals while the rest are mired in misery.
You do not free slaves by trading with the slavemasters. In fact, you end up enslaving yourselves. The sooner we ban China imports, the better off we will be in the end.
-------- -------- Support Wesley Clark for president!!!
Capitalism is just a temporary state imposed by nation states. Without regulation captilalism rapidly devolved into feudalism as the leading actors consolidate and secure their positions such that their is no need to compete. Once there is no need to compete, only a select few benefit from the system, at that point economies wither and die such that their only point is to serve that elite few.
-------- -------- Support Wesley Clark for president!!!
All kidding aside, there is no such thing as a weeder class. If your school's equivalent of CS 302: Intro to programming is too hard for you, take the hint. Same thing goes for your school's equivalent of CS 367: Intro to data structures. While those are considered our "CS weed out" courses, if you cannot breeze through them, how in the ever loving fuck do you plan on surviving any 400 or 500 level CS course?
I'm dead serious here. A CS major is not for everyone. If you can't earn an A in those two courses while maintaining an aggressive schedule of extra-curricular binge drinking, what makes you think that you can pass CS 536: Compilers, where you get to write a compiler? Or CS 537: Operating Systems, where you get to implement an operating system? If it takes all the academic strength you can muster to pass the intro classes, the upper-level undregrad courses will kill you. You will fail. And you will fail hard.
By the way, if UM is anything like UW, you have to take like 1 course that is crosslisted with ECE. The only thing difficult about that course was getting out of bed for an 7:50a lecture while still drunk from partying the night before. So quit your bitching about having to take engineering courses while you're not in the engineering school.
Seriously, why do you want to major in CS in the first place? You don't seem to enjoy it, and it doesn't seem to come naturally to you.
"Avoid employing unlucky people - throw half of the pile of CVs in the bin without reading them." -- David Brent
Same old spin...
When companies start saying they can't find enough engineers, it is just plain crap! There a ALOT of engineers in the US who would like a job, any job, programming and designing, but the above lie is used by the lying sacks of meat to get more H1B and L1 visas. Only an idiot, which the government is full of, would believe the claim that there aren't enough workers in an industry. They better stop this crap or nobody is going to pay for thier social security!
Interesting that among all of pundits willing to weigh in on this issue, the one thing missing is that none of you seem at all concerned that today's teenagers are very much into exploiting computer technology for their needs, but so few want to figure out how it works. My question to y'all is... what will you do the next time you are standing before "the great and powerful Oz" with your own kid or a neighbor's? Will you encourage him or her to look behind the curtain?
The Labor Dept is full of crap. 'computer/math scientist' jobs are decreasing in the US because they're being exported to India, Bangladesh etc. That's why salaries in these jobs are not keeping up with inflation.
planned CS enrollments have plummeted from 3.7% in 2000 to just 1.1% last yearTranslation: Students know that the Labor Dept is full of crap. This is a good sign for America, it shows our kids have some sense, despite the misinformation showered on them. (Well, all except 1.1% have some sense.)
I disagree ... I think the ends do not justify the means. I'm one such person who has bills to pay while waiting for absurd things to work themselves out (I work in an IT industry too, and have felt 'the pinch'), but relief of inconvenience is a terrible reason for doing something detrimental. The basic idea of it would be to choose pleasure over health -- a choice all too frequently made -- instead of health over pleasure (the wise choice, when a choice must be made).
Buzzt Wrong answer. Look at the guys we look up to and those who we have worked with and know to be sh!t hot. Being programming-obsessed is critical to being a VERY GOOD programmer. And we're talking about ACM contests, there should be nothing less than the obsessed. Sure, it's healthy to have balance in life, but how many programmers are really healthy? To be an amazing computer scientist and software engineer, you should be obsessed with computer science, software engineering, mathematics or something in the ball park of our decipline.
If the standard bod obsessed with his decipline puts you off studying CS, then prehaps you don't belong in the camp, since you're not really striving or passionate about being more than a substandard computer scientist. If you respect those smelly, dirty centres of knowledge that live in the lab or are reading scientific texts for fun, then you should be encouraged to meet with them and fore-go the rich-boy party.
my 0.02 EU's.
Here in Germany, we keep hearing that there's not enough of this or that kind of engineer or other diploma-holder. Then, there's a rush at the universities because everyone thinks it's where the money is only to find out there was a sufficient amount of qualified people in that sector already, just not enough for companies to pay lower wages - more people, more choices, lower wage. I wonder if it's the same in this case?
If a train station is a place where a train stops, what's a workstation?
...was that professors are expected to split their time between research and teaching. I had one teacher that scared me to death the first day of class because he had a Ben Stein, boring, high school math teacher sort of voice and I was sure I would be asleep inside of 3 minutes. As it turns out, he was a high school math teacher, but he turned out to be a bad ass instructor. He would periodically pause in our Data Structures class and diss various design decisions in Java.
Problem was, he just wanted to teach, and the U wanted him to also do research. So he left for some U in Alaska, and was replaced with a prof some some place in Asia who would teach AND research. While he was a nice guy, he couldn't speak English for shit.
My high school would force everyone all the students to attend pep rallies at the school's gym before a wrestling meet or basketball game. However, you wouldn't see anything approaching that for the debate team or student government. If schools would emphasize athletics for the whole student body and give out letter jackets to the chess club, it wouldn't end derision from team athletes, but it would help imo.