One of my coworkers recently left an interesting Wall Street Journal article on my desk - it was a short piece by Christopher Mims about how programming should be thought of as a trade, more akin to welding or woodworking than, say, structural engineering (Side note: the article is behind the WSJ's paywall. Sorry!). Mainly, he thinks that a computer science degree shouldn't be the only thing that can get you into the field.
Mim's argument is that more and more people who work as programmers don't have a computer science degree - or sometimes any college degree at all. This is partially because there's a tremendous shortage of people to fill programming jobs, making employers more willing to substitute experience for diplomas, and that's because there's just so many things that need to be programmed. He claims that 67% of the programming jobs in the U.S. aren't in tech companies - they're in health care or machining, all the places where the equipment they now use day to day needs people to program the computers that run them. The other thing fueling this switch is the abundance of non-traditional resources people can use to teach themselves.
"Computer-science degrees teach theory and help the best engineers advance the state of the art, but we've entered an age in which demanding that every programmer has a degree is like asking every bricklayer to have background in architectural engineering."
While there is a bit of the usual breathless technology messianism in the article, it does seem that this shift could have some great consequences. Enrollment in alternative education opportunities tends to have better representation from people of color and women, and, given how many people in the U.S. are currently under, or unemployed, a shift to hiring people without requiring a CS degree could change the face of the tech industry for the better.
Are you learning to code? What resources do you use? Are you planning on making it a career or are you just curious?
That Wall Street Journal article is available with your Denver Public Library card: Keywords: Programming Is a Trade; Let's Act Like It.
Here at GVR last year I introduced some eager kids to basic coding using this site http://code.org/learn I was amazed at how they persevered and completed the tasks!
This summer, I ran DevCamp, a web development class for teens at DPL. I almost hate to admit it - because it makes me feel old and uselss- but those 13-year-olds went through the same material I teach in the adult HTML and CSS classes at twice the speed. Or the times I've worked with younger kids in Scratch - they can do amazing things really quickly!
This is fantastic. Great information that I've just shared with a friend--thanks!
I worked as a programmer for about 20 years. I had a college degree, but not in computers. To get a job, I did precisely as the article indicates -- went to a trade school. It served me quite well. With the huge cost of college education, and with too much of an emphasis by colleges and universities (I fear) on "credentialing," the case for trade schools is strong.
One thing that college and the trade school both overlooked is the relevance of critical thinking and the ability to pick up knowledge of the applications you're working on. This isn't to trivialize the need for technical knowledge, but there's more to it than that. If you're working on mobile phone billing, you need to be able to understand the business end of what you're building (or maintaining). Obviously neither college nor technical schools can impart every possible application, beyond communication skills and "basic smarts."
If I was an employer I'd look for someone with a generalist background, willing to pick up technical details on the fly, and ability to communicate well. This isn't to say that employers are looking for these skills -- they aren't always any smarter than anyone else these days. But that's what is needed to do the job well. So actually, college CAN be helpful here, but in communication and thinking skills more than in acquiring technical skills.
programming (not coding, per se) is a trade, sure, but it's a fallacy that a trades can be taught in a few weeks; some universities (i went to one) also think of writing as a "trade", but i don't think you'd expect a few intensive weeks would produce a competent writer …
and what's the point of this article anyway? to whom exactly is it it surprising that intellectual craftwork may be done by those without a college degree? certainly not to the founders of several of the largest tech companies in the US; i think the article is essentially an advertisement, pretends this is news in order to promote online schools
30+ years experience, working with dozens of other programmers, has taught me that becoming a good programmer requires long-term, real-world skills development; few schools, regardless of format, can give that kind of experience
also, please be careful with terms like "coding": see http://scripting.com/2014/08/27/whatCoderMeansToMe.html
Thanks for reading! And commenting!