A lot of unexpected and unplanned events shaped my learning and career path, and led to where I am today. So I could definitely say that I did not particularly dream about being here today, although being here is sort of like one of my biggest dreams come true.
I laid hands on my first keyboard more than 20 years ago. My family lived in Germany back then, and my father came home one day carrying the first computer we ever owned: an Amiga 500.
We used that computer only for games at the time, and by “we” I mostly mean my siblings, because I never really was much of a tech person. I used to play a Gameboy before that, but that was the extent of “techiness” to me. So, unlike many other designer/developer stories, I will say that owning and using a computer so early in my life had no effect whatsoever on me getting into the development world.
A few years later, my family moved back to Lebanon, and we were computer-less for another few years. Given that I wasn’t much of a computer person, I didn’t really care, and I got to spend a “normal” childhood at the time, playing “real” games, jumping ropes, and drawing.
We got our second, more “modern” PC a few years later, and I used it to play some games at the time and collect beautiful photography and useful documents from here and there.
I was introduced to the world of HTML in eighth grade. We took a Computer class and my teacher saw fit to teach us the basics of writing HTML—which, at the time, constituted of mostly paragraphs, divs, attribute styles like font, bg-color, and all the other really old stuff. Back then, creating and using an <iframe> was so cool that I ended up creating a two-column layout with a header that was entirely structured using <iframe>s: one for the header, one for the sidebar and one for the main content section. And I felt so proud.
I was so excited about the language that I started writing and creating my first page as soon as I got home.
As soon as my teacher started introducing HTML elements to us like <p> and <i> and <b>, something ticked in my head and I had a “This looks so familiar.” moment, even though I had never heard of or seen a line of HTML (or code, for that matter) before. HTML sounded like the second language I never knew I knew. You could say it was kind of like when Harry Potter knew he could speak Parseltongue.
I was so excited about the language that I started writing and creating my first page as soon as I got home. Not having learned enough from my teacher in class, and being so excited about it, I decided to get a book from one of my brother’s friends who was taking an HTML course in some college, and then I dug in. Mind you, I was about 13 back then which means that it was about 16 years ago.
The first web page I created was a page entitled “Tourism in Lebanon”, which, as the title suggests, highlighted some of the most beautiful touristic and historic places in Lebanon. It was my school project, and it was the best in the entire school back then because I had used HTML features that the teacher had not yet taught to any class, that I had learned on my own. Creating and moving elements across the screen using <marquee> and creating multiple pages of a document by means of a very simple element: <a>, felt very powerful back then. ( Mind you, it still is! ) Of course, I got straight A’s the entire year. As a matter of fact, my teacher used to grant me an A without even making me take the test, because it was obvious to him that I had already been levels ahead of my class and that the level of the test would be too easy for me.
I created two other personal projects at home after that, and those were out of my own curiosity, not for school. I loved the idea of being able to create a digital space for pretty much anything I was interested in—which, at the time, was my drawings and beautiful pictures I had collected. I was actually pretty ambitious that I was planning on starting a website that served as ”the best image repository on the internet”. ☺️ But that plan was soon dead as that computer class was the only one I took in school, and I was soon enough getting ready for my next year and had to focus on my other studies at the time.
Getting into Computer Science in university wasn’t by choice. I mean, I did choose to do it, but only because I didn’t like any of the other options I had. You see, we weren’t particularly rich and so the number of universities my father could afford to get me into were limited. So, I decided to go with Computer Sciences.
Those of you who carry a degree in CS know the sort of material you would study. I had classes in Database systems, Assembly language, C, C++, Java, etc.
During the first year, however, we took a shared class with the Pure Mathematics and the Physics majors. I loved Physics (Electronics, in particular) so much that I almost switched majors that year. And even though I chose CS, my real passion was in Architecture. I wanted to be an architect, and my drawing background as well as love for Math back then drove that passion further.
Two days before my entry exams to the faculty of arts and architecture, I had yet another change of heart and mind, and decided to continue with CS.
By the end of the first year of college in 2006—on July 12th, to be more precise—a war started in Lebanon, that shifted my perspective. After the war was over, I decided to pursue my passion and switch majors and study Architecture instead.
Two days before my entry exams to the faculty of arts and architecture, I had yet another change of heart and mind, and decided to continue with CS. The reason for that being personal so I’ll skip talking about it. It was a happy ‘incident’ that had me decide I wanted to continue in CS, for a reason that had nothing to do with CS. (I told you I never expected to do this.)
It wasn’t until second year that I got introduced to web development materials, specifically: PHP and MySQL. I loved PHP a lot and also got pretty high grades and stood out in class once again. But I could have done better. You see, I wasn’t the most dedicated student in uni, and I don’t feel proud when I say this. I skipped a lot of classes during the first year that it made my second year feel more like the first. I regret that. But there were some subjects that I loved too much to skip, and among those were PHP, Java and Assembly language. I felt most comfortable writing code using Assemlby language. Lower level languages are easier for my brain to grasp than higher level ones. Java also felt pretty straightforward to me at the time.
I learned everything I know about “the modern Web” of today after I graduated.
So, even though I did take front-end web development classes in uni, I can’t really say that I did because I practically didn’t. I never attended them; neither did I make any effort to study the course material well. Also, the contents of the courses were extremely limited to the absolute basics.
I learned everything I know about “the modern Web” of today after I graduated. A year and a half after I finished college, a friend of mine saw how lost I felt because I didn’t know what I wanted to do for a living. I almost became a teacher in a school, but ended up quitting an hour and a half after I started because I felt out of place. I’ve always loved teaching—ever since I can remember, but I was assigned classes of first and second graders to teach, and that wasn’t exciting at all. I’m much better at teaching grownups than I am at teaching small children, so I just couldn’t go on with that and quit that same day, and knew I didn’t want to teach in a school.
One day, my best friend—also a web designer and developer—who knew about my background with HTML, and my CS studies in college, suggested that I take a look into web development, saying that I could eventually work from home, be my own boss, and most importantly: do what I loved. He told me he believed I could do great things if I got into the world of the Web. <3 After some hesitation, I approved and decided to dig in, being mostly tempted by the idea of working from home and being my own boss, besides going back to the material I loved in the past.
After 10 successful challenges, I was ready to start learning on my own. I started Googling and unsurprisingly came across CSS-Tricks when I was learning about CSS floats. I still wanted to create some sort of a web app for my recipes (though back then I didn’t even know it was called a ‘web app’), so I thought I would find what I needed in Wordpress. I learned the basics of creating Wordpress themes and practiced some Wordpress coding using my background knowledge in PHP. Six weeks later, I realised I wasn’t excited by Wordpress as I would have hoped to be, so I switched interests.
I kept Googling for features I needed to learn about, and one idea and concept lead to the other. A couple of months after that, I found Codrops, and felt like I had just landed on a gold mine of knowledge. (How I started writing for them is a whole different story.) I was blown away by the creative demos and beautiful code I saw there, and decided to break my favourite demos down into pieces to understand the CSS behind them. That’s when I got interested in CSS transforms and animations. ‘CSS3’ was a hot topic back then, and I felt like I landed in the right area.
I wanted a challenge and a way to practice what I learned, and it so happened that at that time I started using Windows 8 on my old machine. So, one day I thought to myself “these 3D animations should be doable in CSS3”, so I fired up Codepen—which I had been using for a few weeks only back then— and started coding. To my surprise, I was able to recreate the 3D animations using CSS transforms and animations and some jQuery for event handling. Shortly after, early 2013, I decided to write an article explaining how I did it. I’ve always loved explaining how things work, ever since I was little and I used to explain school material to my colleagues and friends. That was the first blog post I ever wrote. It was also surprisingly popular that it got shared by Smashing Magazine on Twitter and Facebook, and got more than 20K views in 3 weeks, and remained my most popular blog posts for the following year.
Armed with my CSS and some jQuery knowledge, I took the job and started my freelance dev career.
Showcasing my work on Codepen was one of the reasons that kicked off my freelancing work. I was pretty comfortable with CSS at the time when my first client approached me, through Codepen, and asked me to code a few pages for a Facebook-like web app they were designing. Armed with my CSS and some jQuery knowledge, I took the job and started my freelance dev career. (This is why I always recommend setting up a Codepen account when new developers asking me for advice on how to get started and “get their work out there”.)
And that’s the long (probably boring) story of how I got into coding and am doing what I do now. It all came unplanned, and if it weren’t for my best friend’s push and continuous support, I probably wouldn’t be here right now. But I couldn’t be more grateful and thankful to God to have put all the right causes—events and people—my way to lead me here. I’m extremely happy to be part of this community, and to be doing what I love. I stopped drawing ever since I started coding, because coding was the only thing that I loved more than drawing. But, truth is, I still think of myself as an artist—it’s just that my tools have changed. I still get to obsess about colours and “cleanness”. So my hobby hasn’t changed really; I still draw, but the tools are different—instead of pen and paper, I use HTML and CSS, and as an added bonus, I get to make my art interactive (hello SVG!).
I’m pretty excited about what is yet to come, and hope to be able to continue contributing the way I do.
Thank you for reading!