Lately I have been back to coding a little. It turns out that I really enjoy it, it’s really addictive. Let me explain you why creating Spaghetti can be so engaging.
I first taught myself how to code to build the prototype of Treeveo. I didn’t have the money to hire a developer and wanted to keep the speed. So I just… started building. At the beginning I was doing very basic stuff, but gradually got better. So why is it so addictive?
Constant injection of positive energy
I remember that it was an evening in June 2012 when I started coding. I began with a simple thing, a login page. I googled: “PHP login script”. This set me on a one-night journey. It turned out that I had to create a database first, then connect to the database, read the database etc. I googled and grabbed the code and got it to work. I said to myself: “wow I just created a login page, a database connection and a bunch of other things… I new thought I could do this.”. This gave me an enormous amount of positive energy and a great sense of achievement.
Then I decided to keep going even though it was already very late. I decided to create a simple dashboard page for my app. This again involved a lot of googling. But again, I got stuff to work giving me little “doses” of positive energy. So then I got these “shots” of positive energy and sense of achievement every 10-15 minutes. This kept me going and going and going…
I remember it being 3AM, and I was styling a button with CSS. I said to myself: “I will finish this one thing and then go to bed”. Then I would keep getting these doses of positive energy, these little successes and then keep going. At one point I decided to grab breakfast…
Whenever I got stuck I would copy-paste the error into Google, try the solution and usually got it to work within minutes. Also in the beginning when building an app from scratch there is so much to do that you can “park” problems and come back to them at a later point when you figure it out. In my case I would park them to the next day and ask someone (who would later become my Co-founder). This meant that there wasn’t any interruption of this long streak of successes and it kept increasing my positive energy and sense of achievement.
Getting started: Get a real project
I took one evening on Codeacademy doing lessons in PHP. Then I started by Googling stuff together. I firmly believe that everyone can learn how to code. But having a real project helps, because it will give you concrete things to develop and learn. If you want to learn how to code and don’t have a product, then simply replicate an existing site, build your own little Facebook for example, as long as you have something concrete. Then start with simple things. Recently I came back to coding and started with a login page again. This time a little faster, and again it was 4AM before I went to bed…
Of course the coding I am doing is very, very basic. I know that any full-time programmer reading could be laughing. I am not even using an MVC or SVN, nor classes or JOINs. What I created is called “spaghetti code” by the real professionals. It is a collection of connected scripts and pieces of code. The great thing about the internet however, is that for a prototype this doesn’t have a huge effect, because it can still look great to a user. It did mean that when we started to get serious with Treeveo we had to re-build the entire app. But the math behind the core tree generation algorithm is still in place.
The Coding Addiction.
So now you know why coding is addictive to me. Creating this spaghetti code and seeing the results gives me this uninterrupted streak of positive energy and sense of achievement. Check below for some resources I used while coding.