Monday, February 4

✔️ How I learned JavaScript by studying source code of Basecamp... and how I keep learning programming by studying code written by others...

Recently DHH of Basecamp wrote on their blog about the importance of being able to view the source code and learn from it. I totally agree with that... and in the spirit of 12 years of Nozbe and the last episode of The Podcast I’d like to share here a story how I actually learned JavaScript by studying their source code years ago. Here goes:

How I learned JavaScript by studying source code of Basecamp... and how I keep learning programming by studying code written by others...

I built the first version of Nozbe in 2005... with no JavaScript

I built Nozbe because I needed to get organized. So after reading Getting Things Done by David Allen (Amazon|Audible) I built a quick tool to get organized over a weekend. It was a very simple web application, but the problem was, when I marked a task as done, I’d have to “save” the page and reload it. Yes, that’s how basic it was... but luckily I was the only user...

Enter Backpack, a tool by 37signals (now Basecamp)

A few months later I came across Backpack, a tool that the crew behind Basecamp built. I signed up for it and I fell in love with its simplicity and most of all, I was amazed that the pages there didn’t reload. I marked a task as “done” and it instantly became “done”. I loved it. They were using this new technology which in 2005 was called “AJAX”.

While I loved the Backpack I still preferred my own tool because it was structured a little differently and more focused on “getting things done”... so I started viewing the source code of Backpack and learning from it. This is how I learned the basics of AJAX, JavaScript (with Prototype.js) and much more.