During the interview of Eben Upton of (Raspberry Pi fame) by Leo Laporte on Triangulation, Eben mentioned that he and his peers had noticed that the applicants to Cambridge University’s Computer Science program were getting (for a lack of a better word) dumber, in the sense that they had no experience in programming, unlike some 10-15 years ago, when the applicants had been programming their Commodore64 already. The current day applicants only maybe new “a little bit of web programming”.
This was interesting. Eben, of course an old school geek and a HW geek at that (he designed the 3D Core in the Broadcom BCM2835) considered “web-programming” as a lesser skill than hardcore assembly language programming. Now, flame-bait aside, the interesting part of this the crazy popularity of the web we see today, as compared to other computing platforms.
In Eben’s comparison, students in the 80s and 90s were programming on Commodore64 in assembly. The major motivation for the students to learn programming was writing and playing games. In today’s world, students were more motivated to learn web programming. What are the major motivations for that?
I think allure of the web, which is obvious not only in Eben’s example of students only bothering to learn about web programming, but also the flurry of activities, conferences, websites, talks, meetup groups that are being organized around web technologies is fundamentally its accessibility.
Unluckily (or luckily) when I studied computer engineering, we were introduced to computing on old solaris boxes which were heavily locked down, could be only accessed through ssh telnet. It was a horrible user experience. You had to know, ‘by heart’, ~50 command and their arguments. Things looked ugly on the black screen with white characters and the best way to make your program pretty was add extra spaces.
Fast forward to the web, and you have beautifully designed tools which make it easy to understand what’s going on and what your code is trying to do. Some of the best tools for these are built-into your browser (just right-click and “Inspect Element”). A vibrant developer community has churned out integrated tools which make everything from starting new projects to testing much simpler and easier to do. It is no wonder, those getting into programming are turning towards the web. It’s waaay simpler to start hacking and making things work.
And finally, what really takes the cake for the web is the inherent display and User Interface focus it has. Making things look pretty on the web is very very simple, compared to making things look pretty on the more contemporary computing platforms. And that in itself is a great motivation especially when you’re new and learning programming. If with a little bit of work, you’re able to present your “hello world” code in much better font,colors, etc; that’s a whole lot of motivation for getting your code to run properly and look pretty. And that’s how you start learning more and more.
I am starting to see the allure of the web, it’s accessibility and it’s ease of beauty. And looks like those will take this platform well into the future.