From learning BASIC on my ZX Spectrum clone to designing and building websites for a living to catching up with today's constantly evolving web development landscape.
March 4, 2020
You can't connect the dots looking forward; you can only connect them looking backward. So you have to trust that the dots will somehow connect in your future. You have to trust in something — your gut, destiny, life, karma, whatever. This approach has never let me down, and it has made all the difference in my life. Steve Jobs
Being born in communist Romania, my only exposure to digital content was political propaganda on TV and the occasional Russian cartoon. On the upside, I had this massive open-world game called "the outside". My mom let me play it all the time. Many kids today don't even know what they're missing.
Fast forward to when I was about 12. The revolution had happened, things started to become available and my parents bought me an HC90 computer, a ZX Spectrum clone made in Romania. I didn't have a monitor, so I had mine connected to the tv.
I did a fair share of 8-bit gaming on that thing, using cassette tapes instead of cartridges or DVDs. Some magazines had game code that you could type and run, so I also started to experiment with coding in BASIC, which was built-in.
A few years later I joined this once a week paid computer course at my school, where I got my hands on an actual PC running MS-DOS. I learned how to create files and navigate folders using command-line tools. I was basically typing a lot of mkdir and cd, but in my mind, I felt like a hacker.
When it was time to apply for high school, I chose one that had two informatics classes each year and a well-equipped computer lab. I took the math and Romanian tests and managed to get in (barely).
My dad knew a guy from work, who serviced their hardware and assembled PCs from parts, so he built one for me. One the day we drove to his house to pick it up my excitement was through the roof!
If I recall correctly, it was a 486 with 8MB of RAM. It was running MS-DOS as well, but my dad would later get a hold of some floppy disks containing Windows 3.1, which I installed. My mind was blown!
Throughout high school, I had great math and informatics teachers, so I was able to dive deep into data structures and algorithms, using Pascal and C. I actually credit 90% of what I know about coding to that time period.
Towards the end, I learned to build visual interfaces using Delphi and dabbled in C++ for a while, as well as some Unix stuff. However, something new and exciting was looming on the horizon: the Web!
High school, done! That original idea of me working with computers for a living was now stronger than ever. But while I did know a lot more about programming than I did 4 years before, I still couldn't see how I would transform these skills into a job.
Back then (and I'm sure it's still the case today to an extent) people assumed that in order to get a "good job with a good salary" you had to go to college!
My parents went to college, my high school colleagues were all going to college, so I guess… I was going to college?
I applied for The Faculty of Automatic Control and Computers, hoping to get into a "Computers" class. I failed but got into one of the "Automatic Control" classes.
I have many thoughts on this period, but I'll save them for a separate post. Let me just say that for me, college was kind of a disappointment. I didn't feel that at the time, but looking back, I would definitely do things differently.
But hey, now I have a piece of paper that says I'm an engineer! 🥳
College was not a total waste of time though. Besides the fact that I got to live the student life, I also attended a handful of interesting courses, including some paid ones that I signed up for.
One was a CISCO course at my old high school and another one was a Java course focused on servlets and JSP. They are both a blur now, but I'm pretty sure I could pull out some of that information from memory if I needed to.
I was designing websites in Photoshop and building them in Dreamweaver, using tables and iframes for layout like it was nobody's business.
I recently had a look at that code and it's a horror show! I started thinking: "Was I this bad at HTML?", but then I checked the source for Amazon and Yahoo and I remembered: "Riiight! This is how we did things back in 2004".
At some point, static pages just wouldn't cut it, but at the same time, I didn't feel like diving too deep into coding. My middle of the road solution was to rely on CMS solutions like Drupal, TYPO3 or Joomla and learning just enough PHP and MySQL to get by.
At the same time, I also started experimenting with Flash: vector graphics, timeline animations, and ActionScript. Shortly after I applied for my first job, as a Flash Developer. I was immediately called for an interview.
My expectations were low, but apparently so were theirs, because I was hired. I guess the timing was in my favor since they were just building the team and didn't mind having a few novices on board.
The next year, through a series of fortunate events, I was able to start a company with three other friends from high school. Now, if you have a nose for doing business or you saw the Social Network, you know how this ends.
Yeah… we split about a year later: two of us sold our shares and went our separate ways, the others stayed to sail the boat. It is my understanding that eventually the boat would start leaking, but who knows?
While I didn't leave the company with retirement money, I was still able to stay unemployed for a few months, while looking for the next thing. Eventually, I joined a French multinational with offices in Bucharest, as a designer attached to the Marketing team in Paris.
A few days after I was hired I was called to Paris on a business trip, spoke to the CEO and other big shots about the company's big marketing push: rebranding, full GUI redesign, website redesign, etc. I felt like a big shot.
I wasn't. I was just a tiny cog in a machine that moved at an extremely slow pace (at least from my perspective). Eventually, I left to do my own thing.
When I resigned, I was already doing more and more of these small to medium-sized projects on the side, so I was able to start working as a freelancer full time.
I discovered WordPress and made it my go-to CMS, especially since the majority of the projects I was working on were blogs or content publishing websites. There was the occasional business website, but I was more than capable of tweaking WordPress to fit my needs.
I got a bit better at PHP and learned jQuery, but stayed within the boundaries of the WordPress ecosystem: I was creating custom widgets and using the Customizer to add additional options. I didn't like reinventing the wheel and I still don't.
I had discovered Fireworks early on in my career and I never really felt the need to switch to anything else. I continued to learn more about UI and typography and always used a "less is more" approach in my designs.
I opened a WordPress themes shop on ThemeForest and sold a few themes, which helped me boost my earnings from client projects. I also had a blog with a decent amount of subscribers, where I wrote about WordPress and freelancing.
I got to set my own hours, work on the projects I wanted and also did quite a bit of traveling. The year was 2010 and things were looking pretty good!
Which brings us to today.
If you managed to read so far without falling asleep, you might ask yourself: "But Adrian, what about the last 10 years? Where's that part of the story?". Well… I hope you like cliffhangers because I'm afraid that's a tale for another time.
For now, let's just assume that I was frozen in ice (Captain America style) in 2010 and in 2020 I'm back, trying to make sense of today's constantly evolving web development landscape.
To put things into perspective, in 2010 things like npm, node, mongoDB or Express were in their infancy, while the following did not exist: ES6, TypeScript, React, Vue, Angular, Electron, Gatsby, GraphQL, Webpack, Grunt, gulp, npm, Laravel, Composer, Babel, Bootstrap, Docker.
Obviously, my goal isn't to learn everything, but I intend to get up to speed with the concepts of modern web development, determine the tools that work best for me and gain experience by building actual projects.
This website is the place where I write about this journey and share everything I learn along the way.