How I Learned to Code Before It Was Cool
Today is my 30th birthday. I’ve been developing software since I was 10, so it’s been 20 years. I was thinking about how I lived these years, and I noticed software development and building products are a huge part of my life. So I decided to share my story with other people, because most of my doctor friends and colleagues from the software companies I’ve worked at frequently ask me how I learned all of it without going to school for it.
I think everything started in 2005-2006. I was curious about computers and I would actively watching my father while he was using the computer and the internet. He was emailing his friends, preparing exams (he was a teacher) and it was mindblowing to me in those days.
Then I decided to open my own email account. I tried to register for Hotmail but couldn’t do it. One day I saw that my teacher using something called Gmail. I tried to register it too, but again I couldn’t, because gmail was accepting new users only by invitation and I couldn’t find anyone who had one.
A great idea came to me. Why not create my own mail system, smail (the ‘s’ stands for Samet) instead of using Gmail? I did some research and discovered software called FrontPage. Then I tried to use its templates and added some forms. As you can guess, it never worked, but I learned a lot.
I created a personal web page using FrontPage. Of course, I found a free subdomain service and published it there. I learned about domains, hosting, servers, FTP, and all that just to publish it. The poison of building and shipping entered my bloodstream.
I signed up for forums I found on the internet and started talking to other people who were building things online. These forums changed my life, because I learned both development and community culture there. I discovered PHP in these forums. It seemed complicated to learn, but I tried. I printed tutorials (yes, physically) and studied on paper, since my screen time was limited because of my age.
I could read and understand code, but I had difficulties to write my own. Then I found some php scripts and started changing them and solving the errors I encountered. For example, I converted the guest book script into a simple veterinary patient notes script.
Around that time, I heard about something called Joomla. I wanted to test it on my hosting. The funny thing is, I didn’t know anything about MySQL and 3 months passed before I understand the database host, database user, database itself and its tables. I got stuck on the database screen of Joomla for 3 freaking months. Then I found a good tutorial somewhere and figured it out. That day I learned that how you search matters more than what you search for. After Joomla, I found other systems and tested them, like SMF.
These amateur experiments continued throughout middle school. I tried a lot of frameworks and programming languages I’d heard about on forums and communities. I switched to Ubuntu from Windows. My father didn’t like it and switched back. Then I learned we could use both on the same computer and did it. I learned a lot by trying, crashing and fixing.
I started high-school. I met a very special person, my computer teacher. I think meeting with him was one of the turning points of my life. He gave me his own programming books, and we developed projects together throughout high school. He was teaching me the new things he had just learned, and I was doing the same. He was the only person who supported me to do these stuff, because my parents still thought I was just “playing on the computer” whenever I sat at the computer back then. They weren’t blocking me, because I was also one of the top three students by grades in high school.
One day in high school, an idea hit me: “Can I make money from this?“. The answer was AdSense. I tried a lot of things to get approved. I probably tested 20 Blogspot accounts, but it didn’t happen. Then I decided to develop my own script with my own domain name. Ta da! I got approved. This is how I made my first dollar online. I went on to build websites for customers I found on webmaster forums, which covered my costs.
If you’ve read the story this far, you might expect that I started to college, graduated with a Computer Science degree, and then started working at one of the FAANG companies. But that never happened. I started medical school. Why? The answer is complicated. But I never quit programming. I delivered freelance projects, worked at startups, graduated from medical school, started my own company, started residency, and I’m still actively practicing. This journey has interesting moments too, but that’s a topic for another blog post.
In conclusion, software development has been evolving rapidly these days, and I get a little bit emotional about the good old days when I look back, because I put in so much effort and sacrificed many things to learn programming with passion, at a time when almost everyone around me didn’t believe it was even a real job. If my younger self could see today, he would freak out, without a doubt.
Despite everything, knowing programming made me a better problem solver, and I still see its befenfits even in the hospital. However, the people who born into AI era can never understand what we felt back in those days.