DEV Community

XCS
XCS

Posted on

How I learned programming

Disclaimer: I am 26 years old with a strong passion for programming since a young age. This is more about my journey than only programming.

I had no computer at home, but there was something about computers that I always felt a drive towards.

My first contact with programming that I remember was when I was in 2nd or 3rd grade and there was a computer course at school where I learned some shell commands to create a guess-the-number game. I also remember finding a book about working in MS Word, I had no idea what it meant but I liked looking at the images of their UI in the book.

I always loved creating stuff, I created some games in GameMaker, added fancy JavaScript code to my Piczo profile (if anyone used it, it was like a personal page where you could post photos/content, it was then overhyped by hi5), all this before I started actually learning programming.

I started learning "real" programming while in high-school, in 2008 at 14 years old as I joined a math-informatics specialized class. I also decided to participate in the regional Informatics Olympiad. This meant that I also had to prepare for it. I solved several algorithmic problems per week (in C or C++). I also participated in non-algorithmic contents such as a game-development competitions, code-golf competitions and, most relevant the present day, web development competitions.

After high-school I applied to MIT, but (not surprisingly), I didn't get in. I decided to go to the local university in my home-town (Craiova, Romania) on a computer-science degree. This meant I had more time for personal projects. During university I also joined programming competitions, created websites for various local businesses and tried creating several web projects/platforms. Although most of the platform ideas were nice and the implementation was good, none of them took off as I lacked the skills and time to market and maintain them. Apart from one: userTrack. I somehow got the idea to create a heatmap & session-recording tool for websites and started implementing it on 30th of December 2012. That’s right, on New Year’s Eve 🎉 and 1st of January 2013 I was programming. I have Mercurial versioning to prove it:
versioning
I posted userTrack on the CodeCanyon marketplace and over the years I always maintained it and kept improving it, as clients would keep on buying it without any marketing from my part and their good reviews and feature requests kept me motivated to keep working on it. Until today, in 7 years, it sold for about $65k, which is around $8k/year.

When I finished university I already knew programming and software engineering pretty well and felt like I could create any application I could imagine.

Some quick after-university (2016-2020) facts:

  • I was contacted by a Google recruiter and went through 14 interviews at Google (2 x phone interviews, 2 x 5 on-site interviews, 2 x extra phone interviews), but for both applications (one when I was contacted, one a year later when I applied) I got rejected in the very final stages of the process with no clear explanation why. 😢
  • I created my own LLC so I could focus more on userTrack, freelancing and pay taxes as I should.
  • In August 2017 I joined a really cool, small indie gaming company in Amsterdam and worked on https://curvefever.pro . Even though we did make a really cool game, we couldn’t monetize it well enough so the company went bankrupt in October 2019.
  • Since then I started working full-time on userTrack and released a number of big updates, while now I’m switching focus towards marketing. If you have a landing page and want to improve conversion rates or just want to replace Google Analytics or Hotjar, you can check it out at www.usertrack.net

I don’t recall the exact moment I “learned” programming. I always loved building stuff. If I didn’t know how to make something, I would just try random stuff until it worked or searched for solutions, but I always persevered until I created what I imagined. Programming is just a tool.

Top comments (0)