Mitch Harper, co-founder of BigCommerce.com, claimed in a recent issue of the Sydney Morning Herald that university education might be the wrong way to become a software engineer. According to Harper, a self-educated software engineer without an university degree: universities leave their students rather unprepared for the realities of being a software engineer. He also mentioned the reasons for this assumption:
(Australian) startups need graduates who can hit the ground running, who are proficient in PHP, Python and Ruby (among other modern programming languages), and who, ultimately, understand the practical side of software engineering as opposed to just the theoretical side which they learn at university.
What could appear more a national issue of Australia, has also been discussed in other countries. For example, Dan North’s blog posting “Programming is not a craft” caused some intensive discussions by readers. North considers programming not as a proper profession. In his opinion, the entry bar for becoming a software engineer seems to be too low.
Recently, some other entrepeneurs took contrary standpoints to Harper’s arguments. The CEO of Freelancer.com, Matt Barrie mentioned in an article on November 14th:
I read Mitchell Harper's opinion piece "Want to be a software engineer? Don't go to university" in the Sydney Morning Herald on Friday with horror […] Encouraging passionate young students to forget university because the latest fad of a language isn't being taught isn't just fundamentally wrong, it's dangerous. You won't find a job very easily, and if you want to join the tech boom and start your own company, you'll find it an order of magnitude harder to get someone to back you
In the same article, Adam Brimo, co-founder of mijura.com, explains:
Anyone can learn to write code but they will never be a Software Engineer or a Computer Scientist. They won't be able to design large scale financial systems, search engines or contribute to the next powerful programming language. They can build you a simple website for a thousand dollars but they can't build the next Google and they won't create the technologies of the future. They will be displaced by them
Harper might not be right with his low opinion on software engineering degrees. At least, he has triggered an interesting discussion. Do universities provide really students with the appropriate software engineering skills? Is university education too much emphasizing on theoretical aspects? But maybe, university education is highly underrated in this context.
What is your take on this debate?