Monthly Archives: January 2016

How programming changed my life

I started programming in 2008. But why and how I started to learn to program? And how it changed my life?

I don’t want to work for minimum wage

I graduated from high school in 2008 and then I needed to decide what I want to do with my life next. I didn’t know what to do so I took temporary job in a warehouse. I have been working there for 2 months, 5 days a week, 12 hours a day. For minimum wage. That was not something I wanted to do for the rest of my life.

I was thinking what I would like to do, what I liked as a kid. I liked computers and computer games. I was fascinated how everything in computer works. I borrowed a programming book and started to learn to program in language C. I wrote my first program “Hello world”, then I wrote “Hello Tomas”. I liked it. Once I learned something more, I was able to write a program that asked for my name and age and wrote it in output: “Hello Tomas, you are 19 years old”. I was amazed. I was able to ask people for information, process the information and provide the information.

I wanted to learn more about programming and computers so I applied to college. I prepared for entrance examination and I was able to pass it.

College life

I was full of enthusiasm. I wanted to learn as much as possible. I learned a lot, even things I will probably never use. But it’s good to know more than you need because you never know when you will need it. College will give you wide knowledge of various topics and technologies.

I was at 3rd degree when I told myself “Enough! I will not try to finish exam of math, if I fail, they will expel me. I don’t understand the math, I don’t want to understand it. I want to learn things that I like. I like when people can see my work online, I like web development.” We didn’t learn web development at college, we learned mostly mature technologies that old companies still use. I wanted to create my own web applications that everyone in the world can use. So I left school and started learning on my own again.

Building my first web application

I already knew HTML and CSS and I created a few web pages in PHP before and I knew that I can also create a web application in PHP. So I started learning PHP properly. I didn’t want to build an application in pure PHP, so I also started learning PHP framework Zend. I was able to build my first web application for online food ordering in 2-3 months. It was a dummy application but it worked and I learned a lot. I wanted to sell it to restaurants but I was not a salesman. I liked creating applications, not communicating with people and trying to convince them that my system is the best for them. I wanted to create another application and learn something new.

I wanted to learn Nette framework which was popular in Czech republic. So I started building new application in Nette called “Share a ride”. It was Facebook application where people could offer seats in their cars from place A to place B. People could also create demand that they need to travel from place A to place B. It was not beautiful app but it worked. A few people used it. It could be used by more people but there was Facebook group “Share a ride” which people liked and they didn’t want to use “Share a ride” app because they were used to use the group. Again, I didn’t want to persuade people to use my app. I built it because I thought it will be better than the group and I wanted to learn Nette. Thanks to this application, I got my first job offer. A friend of my friend saw Share a ride app and asked me if I wanted to work in his company. Why not? So I started working in his company. I was happy.

Working as a freelancer

After a year working in a web development company I learned a lot. I wanted to try to work as a freelancer from home. Working from home was my dream. I was able to find my first job as a freelancer. It was 2 years old project written in Nette. The code was ugly and I was able to work on the project for a half year. Then I told myself and my boss “STOP!” I can’t handle this madness anymore. I was frustrated by the project. So I stopped working on the project and I wanted to work on my projects again.

I had an idea for an app called “Seenist” – app where you can create a list of bands you have seen live. Seenist was online after 2 months of development. I wanted to learn something new again so I built it in Meteor.js. And again, the app was not used by many people. I found out that it is quite useless app for most people. But it was useful for me and a few other people. I run out of ideas and I wanted to start working for a startup.

I found and joined one startup in Brno. We were building the startup from scratch. It was a discount portal similar to Droptilyoushop. After 4 months of development and 2 months waiting for a payment gateway we could finally launch the project. We launched and we failed. We had programmers and salesmen in our team but none of us knew marketing. We highly failed at acquiring customers.

After working for a failed startup, I needed to earn some money. I found a job in Meteor.js. After earning enough money I could start a new project. I had very strong need to teach people to code. I did a few in-person programming courses where I used Jsfiddle for code examples and exercises. Jsfiddle was good but I needed a place where I could see student’s code. So I started working onCoderMania – e-learning platform for learning to code JavaScript and later HTML & CSS. I use it in my courses and most students are able to get through lessons quickly and without my help. I was very surprised when I saw their progress. I think CoderMania helps students to understand code quickly. Building something that have impact on how people learn to code is very exciting and motivating.

Changing the world

As a programmer you have incredible power. You can build something from nothing. You are like God. You can change the world. You can build something that will change the world.

Many people think that learning to program is hard and you must have some special skill set. No, you just need to know basics of math and logic. You can start learning to code today and if you like it, you can build your first project and find properly paid job. Or you can build your project and make money on it.

So, how programming changed my life?

I can do what I like and I get paid very good money for it. As a freelancer I can work any time, from any place in the world, on any project I like. When I get an idea, I can work on it. I live my dream, you should too!