In response to venture capitalist Marc Andressen's Wall Street Journal piece, "Why Software Is Eating the World," Sarah Lacy at TechCrunch issued a big "never mind" to the late '90s writing warning that the white collar engineering jobs were all leaving Silicon Valley and being outsourced to emerging countries.
It's true that some of them are, and that some multinational companies seeking tax breaks, such as Apple, are joining the likes of IBM, Hewlett-Packard and others in not disclosing the breakdown between their jobs here and abroad, as The Washington Post reports. So it's not always easy to determine how many of them are.
But just as Andressen writes that software is changing every industry, Lacy writes that these days, programming is where it's at:
It's amazing just how wrong so many people could be. Just a few years later, one of the only bright spots of employment in the entire country is for coders. In California, the latest numbers show unemployment at a staggering 12%. Yet if you are a coder in Silicon Valley, the world is your oyster.
Despite a horde of angry readers, our Don Tennant has long lamented those disillusioned parents who discourage kids from pursuing tech careers. (As a parent myself, I advocate encouraging kids to explore all their interests and to follow their hearts. But as the child of two journalists, my son's occasionally had the word "engineering" whispered into his ear at night.)
I've talked to IT recruiters all across the country who all report difficulty finding the talent that their client companies need. Indeed, creating a work force trained at the level of the jobs being created in this country remains one of our biggest challenges. It's common to see calls for teaching computer science at the high school and even middle school level to pique students' interest early. In an interesting piece at CCC Blog, Henry Kautz, chairman of the Department of Computer Science at the University of Rochester, argues why computer science is vital for democracy. He writes:
Beyond teaching particular useful skills, computer science teaches ways of thinking that are necessary in order to be an effective and engaged citizen. Computer science teaches an appreciation for complex systems, including the need to understand context and requirements, the unexpected consequences of small changes, and tradeoffs between maintaining a legacy system and building anew from scratch.
As computer scientists, we understand the necessity of testing and iteratively refining solutions to problems, a lesson often missed by follows of political or social dogma. We value both abstraction and attention to detail, a lesson that leaders of government or business sometimes ignore to their peril.
Perhaps most importantly, computer science teaches optimism in the face of enormous complexity. We can reframe ill-posed problems into well-defined ones; we can tame the tyranny of complexity using the tools of structured design.
And he goes on to say:
... we would argue that computer science is crucial to democracy because it promotes attitudes and cognitive skills that enable citizens, in a spirit of confidence tempered by a respectful humility before the complexity of the world, to actively shape the future.