I started programming when I was 13. My brother showed me qbasic and how to write a sequence of commands and run them from the top menu to see the results as these commands are being executed in a sequence. He showed me how to draw a rectangle on the screen, add two circles as the wheels and a triangle at the front of the rectangle. It sort of looked like a car. Then how to erase the screen and draw everything again a little to the left and repeat that many times to create an animation. The car moved to the left and then crashed into a wall to a sound of repeat beeping. I liked playing around with qbasic and I wrote different programs and animations. I don’t remember what I did but I remember there were a lot of goto statements.
A few years later he gave me a book about C and C++. I was fascinated by the book and copied all the examples to my computer and ran them. I enjoyed writing commands and see how they run exactly as I intended. I went through the book very fast and was disappointed when I reached the end. Then I started writing different programs in C++. I wrote a trivia game about Chemistry as a project to Chemistry class. The assignment was very general and I chose to build a game. I worked on it a lot and built an animated window based GUI to display the questions and the results. The teacher liked it and gave me a 100 (the maximum grade). I was happy that I got to do what I liked and didn’t have to do anything related to Chemistry besides entering the questions and answers. I also built a physics experiments simulator, a few games, and a few websites that ran locally because connecting to the internet was very expensive and I wasn’t sure how to set up a server anyway.
My first job was during high school. I was hired by a startup as a part time developer to work on a Java applet for Palm Pilot. It was the end of the 90’s and the tech bubble was at it’s peak which is probably the reason why this company hired someone so young and inexperienced. The main product this startup was developing was built for the desktop and I got to work on a mobile mini version for hand held devices. I wasn’t ready for writing code professionally - I had very little Java experience and I didn’t build anything with it before. The first task that was given to me was to learn how Java applets work on palmOS and to build a simple calculator app. I went through all the tutorials, built the calculator and started working on the actual product. I enjoyed writing code and getting paid but I didn’t like working for this company. Everyone was much older than me and I didn’t feel like I fit in. I also got tired from the long commute after work, the gray boring office, the long hours and the fact that I didn’t have time for anything else besides school and work. At some point I informed my boss that I’m planning to quit and someone else was recruited to replace me. I remember overhearing that my code wasn’t good and everything will need to be rewritten. I was very offended at the time, not understanding that I was too inexperienced to work there in the first place.
When I graduated from high school I had to submit a final project for my computer science class. I worked on it with a friend from class and it was the first time I collaborated on writing code with someone. The project we worked on was meant to be a pilot for an actual software a hospital considered developing. The hospital was evaluating using a new device for collecting measurements from patients and the software we were working on connected to this device, displayed the measurements as they are taken, saved the information to a database and printed reports. We wrote it in Borland Delphi. We both enjoyed working on this project, made multiple trips to the hospital to understand how this project needs to work and eventually presented the project at the end of the year. We got a 100 and everyone seemed to be happy with the result but I hope the hospital didn’t actually use what we wrote because I’m sure it was very buggy and unstable.
After high school I wanted to start my own company. There was a radio show that was very popular at the time and I used to listen to it every day. I emailed the host with an idea I had for a web portal for teenagers and how I would like to cooperate with him on it since he could reach so many teenagers with his radio show. I don’t remember if I found his email address somewhere or if I just guessed it but I didn’t expect to hear back. To my surprise he did write back and even liked the idea and suggested to meet. I was amazed by this unexpected development and started learning ASP right away. I went to meet the host and he told me he had the same idea for a while. I got to work and we built many iterations. We kept adding and removing features and I spent a lot of time building different features in different ways only to change it again later. When we finally launched it, the host mentioned it on his show. To my disappointment not many users showed up. I was frustrated from working so much for very little results and making money from it wasn’t even in sight. The radio host was losing interest as well and that’s how this project died.
When I just started to learn how to program, I saw a documentary about Bill Gates. I don’t remember much about the movie but I remember being very impressed and that I’ve decided that I want to come to the US and start my own business as well. Programming has enabled me to do a lot of things. My salary consistently increased year over year and I was able to move to the US. I’m still working on the second goal of working for myself and being financially independent.