Posted on 15/05/2019 by Michael Oliver
Opinion: What has two thumbs, speaks terrible French, and doesn’t need a degree to code? This moi.
Hey, don't get angry at me. Those are the reckons of the Big Apple himself Tim Cook. The Apple CEO threw an extra <p> in the proverbial HTML at an Apple Store in Florida this week, when he told 16-year-old Liam Rosenfeld:
"I don't think a four year degree is necessary to be proficient at coding. I think that's an old, traditional view. What we found out is that if we can get coding in the early grades and have a progression of difficulty over the tenure of somebody's high school years, by the time you graduate kids like Liam, as an example of this, they're already writing apps that could be put on the App Store."
Oh hell yeah, Tim. Way to give a bucking binary “Back off!” to Big College. You and your degree can make as many pull requests on this Git as you want, but the T Man ain’t pushing anything live.
Let’s be honest, who needs to go to university anymore? What do those punch-drunk years living in squalor, bereft of dignity, money, hygiene, money, food and money teach us besides profound lessons in regret? The only coding I learned at uni was the code for my dorm’s late night entrance – which I habitually forgot. Someone should code an app for that, just not at Churchill College.
It’s never been easier to learn code. There are even resources for teaching five-year-olds Python. I think I saw an episode of Peppa Pig where Mama Pig walked Peppa through the latest C++ 14 libraries.
If there is some good in the four-year Comp Sci degree, I can’t immediately see it (although I have a high-powered army of toddlers writing an algorithm to assist the cause). But let's play Devil's Advocate and make an argument for it.
Yes, there are near infinite resources for learning code. Yes, there are near infinite plains to exercise that learning. Yes, there are near infinite applications for basic coding knowledge.
What the Codeacademys and Peppa Pigs of the world lack is the capacity to teach problem solving.
The root of computer science is the ability to take a problem, break it down, spot root cause, construct abstract mental models of the problem, and then source a solution from that. You could learn this on the job, of course. But no tech team worth their Space Marines has time to teach that from scratch—four years ensconced in a computer laboratory under the tutelage of experts? That’s an A+ grounding for a C++ world. (And you can boo that joke as much as you want, because I know I deserve it.)
Maybe Tim’s right. Maybe you don’t need a degree to code. Maybe you can start building apps in preschool. And then maybe you'll need someone who’s spent four years being routinely challenged at uni to fix your mistakes.