I recently asked Lior Hakim, a friend and colleague, for help in relearning programming. It’s been 2-3 years since I last compiled anything, and I wanted to learn how to code on the web. Funny thing is I originally taught Lior to program 8 years ago, using a Borland Delphi (wow, that seems old now).
The first thing you need to do in order to program is set up an environment. Lior and I decided on node.js, a programming language/environment based on server side JavaScript. We had to install node.JS, open an account on github (me on github), and open a heroku account. I found the following statement shocking: “If you want to program on the web you need a Mac.”
What?? 10 years ago no one would ever have said this. I remembered Macs as being the least user-friendly computers for programmers. Macs were the first choice “If you want to design…” or “If you want to edit movies…”, but programming was all about Unix or Microsoft environments, never Mac.
And then I realized what happened. Apple released Mac OS X in 2002, and ended the Microsoft-Intel duopoly, since OS X was based on UNIX and therefore connected to the open source community. Those two relationships, Intel-Apple and open source-Apple, brought an end to the Microsoft Dogma. Once open source programmers and web programmers started using Macs, it was just a matter of time before the web would adapt and adopt Mac standards.
Checkmate.
The paradigm shift came with a lot of help from Google (Where Steve Jobs was a director until the Android killed that). Today Google gradually replaces the enterprise dependency on Microsoft. We @eToro never installed a Microsoft Exchange, and today with 200 employees we use Google Apps as our main email, and gradually shifting to Google Docs as our main document collaboration software, and soon enough G+ as our intranet. Without that Microsoft would still at least own the enterprise.
Next I’ll also install the new Microsoft Visual Studio IDE, and try to compile something. I wonder how things have progressed since I became too corporate to program. I wish that the next time I learn how to program, the environment will be completely web-based and will not require for me to install anything, a full-featured programming platform in the cloud.