Discussion: What should be done to help lagging enrollment in Computer Science?
What got you interested in programming, waaaaay back when? For me, it was the movie Tron (especially the light cycles), but you may have a very different story. This time, though, we need your help on how to encourage young people to get interested in Computer Science and find their story.
NPR recently reported (3:32) that enrollment in university Computer Science programs is down -- way down -- in some cases programs are 1/4th the size they were in the year 2000. Issues they cite include image problems (all CS graduates do is code!), the perceived lack of stability in the software development job market, and the even sharper decline in female enrollment.
To help alleviate the situation, Jeannette Wing of the NSF indicated that National Science Foundation has started a grant program to help revamp Computer Science degree programs. One broad suggestion that is made at the end of the story is to start teaching Computer Science to kids in middle school.
Cay Horstmann has discussed how efforts to help students get acclimated to programming have helped, and Michael Kölling has put together a great blog series on how he is teaching his daughter to code: Part1, Part2, Part3, Part4. The MacArthur Foundation iseven providing $1.1 million for a Video Game school. Clearly though, we need major efforts from corporations - it is in their own best interest and governments and private donors can't do it all. (Knock knock -- Apple, Google, IBM, Microsoft?)
While this discussion is not new (see Rob Walling's blog for a recent discussion) it is certainly brought to the front and center again. Please share your constructive and creative ideas of when and how we should encourage all young people to get interested in and excited about programming and Computer Science - it could make a real difference.
- Login or register to post comments
- 2634 reads
- Printer-friendly version
(Note: Opinions expressed in this article and its replies are the opinions of their respective authors and not those of DZone, Inc.)










Comments
Sidewinder replied on Fri, 2008/03/14 - 8:09pm
mark taylor replied on Fri, 2008/03/14 - 9:14pm
Andy Gibson replied on Fri, 2008/03/14 - 10:02pm
Most people from my generation started on home computers..Z80, Spectrum, C4, Amiga. We also usually started with basic and then Assembly language (talk about polar opposites!).
While there are a number of free development tools available today online, it isn't as much a part of owning a computer nowadays. When you got a computer when you were 10, you either played games or wrote code. Coding was so new it was almost cool. Then came the geeky sub culture where coding is always cool. It's much harder to slip into that realm nowadays. You fire up the computer, play a game, check your email, surf the web, buy a book, read the news, chat online etc... There's too much other stuff going on to give people time to get interested in programming.
Also the fact that it is becoming less profitable to be a programmer, more jobs are being shipped overseas makes it a dying industry. There were no shortage of people looking to get into IT in 1998-2000 when the Y2k crisis and the dot com boom took off and companies were paying silly prices for anyone who could write HTML or add up two numbers. I don't believe open source helps that either. As an outsider looking in, why would you go into an industry where you compete with people giving their products away, existing in a community where it is advocated that you help projects for free, only to have the owners of projects sell your hard work for their profit when they get bought out by Oracle/Sun/Microsoft/Whoever
There are two kinds of programmers in this world, those that love it and those that do it for the money. The former will always do it, while the latter will move on to some other career (until that gets shipped off). The problem with the former is that since programming is less accessible, they are becoming fewer are farther between with only the most curious and most intrigued actually taking that final step to investigate and see how programs and the internet works.
Perhaps the real question is whether you would advocate a career in software to your kids when they are considering career opportunities. Will there really be much of a software industry in 6-10 years time when they leave college, or will it be a fraction of its former self just as manufacturing has become a shadow of itself?
Al replied on Sat, 2008/03/15 - 3:56am
Graeme Wicksted replied on Sat, 2008/03/15 - 8:47am
For me, it was a friend introducing me to game programming using Turing (before OOT) in grade 7. This made it very interesting to me even though it was just text based games (they were actually fun).
Don't make it dry and boring ... make it fun and exciting. Remember, shooting from the hip is fine when first learning. That will get maximum code exposure and they will learn to troubleshoot compiler errors really fast.
Al, getting programming done overseas may seem like a good business decision (and in some cases it may be) but it often produces terrible code that is littered with bugs and bad class design. In most cases, a handful of really good programmers who work in an Agile environment produces a better product faster and cheaper. This is what the industry needs more of. Good programmers who can be trusted to make good decisions.
Andy, I agree. Don't push anything on your child. Introduce them to it, make it interesting and fun, and see what decision they make for themselves. Sure, it may not be that profitable but if it's what you love to do it doesn't matter how much money you make.
I enjoy going to work. That's worth more than someone can pay.
Alex(JAlexoid) replied on Sat, 2008/03/15 - 3:19pm
So what that there are less students in CS classes right now... That means that higher percentage of them actually like IT, and professors spend more time with those that will make the future of IT, and not with your next DBA. (BTW a DBA has little need in degree in CS, been there, seen the routine)
We don't need MORE people to take up CS, we need more people that actually LIKE IT to take up CS/IT.
Otherwise we will be steadily rolling to the lowest denominator again(I am implying India here).
Andy Gibson replied on Sun, 2008/03/16 - 12:38pm
The answer to the H1B problem is simple, make sure any h1B worker is paid $200,000 or more, and you can bet that home-grown labour will magically appear, and US based business will be falling over themselves to hire, train, and retain perfectly good candiates.
boss would like to ship your job overseas and lay you off. If that can't be done, she'd like to bring in somebody on an H1-B who will work more cheaply than you.
Indian shops are now setting up in the US, placing fake job ads and then bringing in Indians on H1Bs, keeping them shacked up in houses with 3 to a room, and ferrying them to and from the office for 12 hour work stretches. There is no longer any need to outsource since we have brought the cheap labour in-country. 70% of H1-Bs are going to indian companies based in the US so they can bring cheap labour here instead of sending the work over there.
The 'tight' job market is a sham, fueled by fake job adverts, and unsrcupulus practices.
H1-B increase could decrease discourage IT graduates
You Tube Link
Lawyers giving seminar on how to give the impression there are no skilled workers in the US
You Tube LinkSeriously, would you want your kid to go into a shrinking industry where Washington and big business are intent on destroying your career and making sure get paid as little as possible.
Andy Gibson replied on Sun, 2008/03/16 - 12:50pm
in response to: Andy Gibson
"70% of H1-Bs are going to indian companies based in the US"
Sorry, that should be 1/3 of H1-Bs are going to Indian companies in the US. 70% of H1B recipients are from India.
Jeroen Wenting replied on Mon, 2008/03/17 - 4:12am
It's indeed economics. When you have a choice of choosing a career in IT where you're liable to be treated as a disposable resource and made to work on wages lower than those made by a plumber or car mechanic or choose a career in medicine or law where you work 3 hours a day for an income in the hundreds of thousands of dollars (per year when you start, per month after a few years), the decision for most people is easy.
IT used to have a "glamour" factor in the 1980s and into the 1990s, but that's gone. Now most people in the industry are there either because they love it from way back when or because they drifted into it and are stuck because the world in their chosen industry (physics, chemistry, biotech) has moved on to the point where they can't make the jump anymore and as all specialised people they lack the skills to move to something entirely different. Given the work hours IT people usually "enjoy" doing a thorough retraining evenings and weekends isn't usually an option either.
And with new entrylevel jobs scarse because of offshoring (and the practice described above of taking in large numbers of low wage labour from India and (in the EU) eastern Europe there's hardly an incentive for people to start learning to enter the industry.
Get rid of offshoring, improve compensation and recognition for workers (noone likes to be blamed for all the errors the company makes while others take the priase for your successes, a common practice in my experience), and let it show that you're doing it and the influx of motivated and skilled people will pick up.
Stay in the current spiral of considering IT work to be essentially unskilled labour and that won't happen.
Artur Biesiadowski replied on Mon, 2008/03/17 - 12:22pm
It seems that it is really bad to be IT in USA. Somehow in Europe the situation is a lot better - there is a lot of well paid, interesting positions for smart people. By well paid I mean something considerably higher than country average (to not mention median) - probably double+ that for good people. If you are into contracting business, you can probably get 400GBP (800$) per day in London. Obviously, trick here is to be good. There is incredible amount of medicore people on the market looking for a job. (Hint: if you are looking for job in Germany and you know java enough to grok lockless containers, contact me ;)
Back to the CS studies topic. I have completly different issue - there is way too many people out there claiming CS education. Almost every university out there has some kind of CS studies and quality of people coming out of them is horrible on average. Even people coming out of 'respectable' universities often have next to no clue about coding. They probably will be very successful web masters, network support, IT project managers or helpdesk/password resetters - but you don't need to go through CS degree to do that (I think that project managers should be management + IT classes, not IT + management classes).
Getting more people to CS studies will only make this problem worse. Most of good IT people I know chose IT because they knew from the start it is their path. Out of my head I can think only about one good guy who has chosen IT over medical studies because it was better paid at this time in our country. So for me, any kind of high-school age campaigns will only pollute the CS population.
On the other hand, there can be certain pool of potentials which never gets exposed to the right concepts at early age and do not continue in this direction. It is harder to get into correct mood these days, I agree with Andy here, that with some many options internet gives you with low effort, programming seems not attractive. I think that some games are doing a good job here (for example, IMHO World of Warcraft ui modding is a very good introduction to programming for some young people). Moving lego turtle around is not appealing to anyone anymore, I think that we should have more game-related programming things available. I have learned C to modify mud code (Merc MUD to be exact). Today barrier to do games is lot higher, but with enough tools it should be possible to create amateur-friendly environment to create virtual worlds.
So my answer is:
- kick half of current people out of CS
- try to attract people very young, so you get passionate geeks instead of I-don't-care-as-long-as-it-pays-good guys
- use entertainment, specifically online games modding, to introduce coding
David Brown replied on Mon, 2008/03/17 - 5:43pm
Artur Biesiadowski replied on Mon, 2008/03/17 - 9:05pm
in response to: dwb
[/quote]
Why not to get one of the investment banking offers in NY paying $70-100 per hour? Or $225k a year? I assure you that they will be more than happy to see the grade (PhD is also not a disadvantage), experience and skill.
If relocation is a problem... well, then be prepared to lose against people willing to relocate from India to US, if you are not willing to move to different state. There is a lot of good IT jobs out there, but they are mostly limited to very few places in given country (mostly the capitals, but for example Frankfurt is more interesting in Germany then Berlin, because trade/bank center is there). I don't know about the US except New York, maybe there is something on the other side as well?
Obviously, with current economy trouble stirring, all this may get very dramatic in US soon - but then IT people won't be only ones affected.
Jeroen Wenting replied on Fri, 2008/03/21 - 4:25am
because those banks only hire people on short term (3 months, maybe 6) contracts and kick you out afterwards for someone younger/cheaper/Indian.
That welder, if he's any good, will have a job until retirement and may well be asked to stay on afterwards because his employer can't get a decent replacement (or has enough work that he needs all the hands he can get).
IT as an industry is incredibly hostile towards experienced, older, people. Instead of seeing the old hands as repositories of experience and knowledge they're seen as liabilities, expensive dinosaurs who don't want to embrace "new technology" when in fact they have evaluated that technology and unmasked it as a passing fad they've ecountered before under a different name 10+ years ago before the youngsters even knew it existed.
As a result it is very hard to get a job when you get to be over 35-40 (and in some areas over 30), making it easy for companies to get these experienced people at low wages because they'd rather have that than be unemployed after their last company threw them out with the trash during yet another "reorganisation" or "streamlining" exercise.
That, next to the constant offshoring to low wage countries of especially entry level jobs (which makes entering the market ever harder) is eating the industry from the inside out.
High entry level obstacles, combined with high outflow of experienced people, leads to a labour pool that's shrinking and getting demoralised.
I've looked elsewhere myself, only to find that it's hard to get out of this industry willingly (not talking about being forced out by unemployment) because in other sectors it's not that much different.
With ever more jobs one could move into (with some training) being dominated by cheap eastern European labour here even things like trucking and carpentry/plumbing are getting to be impossible escape routes.
So you hang on to what you have, happy to have a job at all while knowing full well you're underpaid for your skill and experience level in comparison to people with similar experience and education levels in other industries.
That's not a situation that makes it a good idea for kids to enter the industry, and their career coaches at schools and universities are telling them that.
So they choose other careers instead. Law, medicine, finance, are still pretty secure and pay rather nicely.