Karim Elnemr Logo

Karim Elnemr

February 20, 2022

The Crazy Way of How I Learn Web Development

how-learn-pexels.jpg

I wrote my first line of code on 18 oct 2021, that’s about 4 months from writing this article.

I don’t remember the exact details of my life before this, a 36 man with a family working as a retail store manager in electronics, a photographer and videographer, very passionate, very active and full of life. Then one day everything changed after I lost my job which I love, yes you can say I was in love with retail business management, but anyway everything is gone.

I spent a couple of years lost between trying different fields looking for any job (don't forget the corona pandemic) but never able to maintain my passion again on any, until one day I was watching some YouTube and I saw a video talking about how the internet works and a next one talking about web and it ends up me watching more than 6 hours of continues videos.

It started from being worry and wondering if someone could learn something looks very difficult and complicated like programming or say just understanding and writing some code that late and how it will end!?

So, I was determined to read, watch, collect information and as much web development learnings as I could in the first month, 6 days per week, 10 hours per day. That’s just to get the scent of web development.

The most important three elements of learning something totally new are to be patient, be focused and learning step by step, which is not me at all 😊.

Because of my wired approach of learning new things, I don’t think of which way I should take to learn or to start, no order and no role but for example if I want to learn how to swim just, I will throw myself in the pool and do learn how to swim and survive or drown and die (Tip: don’t die just scream as much as load you could and get help 😀).

Fun fact: I don't know how to swim 🙁!

Okay, what I want to say that on the 2nd month of my journey straight away I jumped into practicing code, I started with a simple website project and I follow my wired approach.

Advice: Before we start, I would like to stress on how important that everyone should learn the basics and fundamentals first, which every one new to any programming field should do, obviously.

Now back to my wired style,

  • Set some goals (which programming language I want to learn, fundamentals, tools, frameworks, ...etc.).

  • Browse some real-life websites I like and make some researches.

  • Find a tutorial which meet my style of learning, listen carefully and watch with full focus.

  • Start building my project until I hit some roadblock.

  • Go to the internet search and search and search, not solved yet,

  • Ask for help (Stack Overflow, Git Hub, ...etc.).

  • Go and read about it again until I understood it, (documentation, some linked article, implementations).

  • Find something I could use to implement in my project.

  • Go to my project and implement it.

  • Continue the cycle.

I really can't say if this approach is right or wrong, but it's working for me every time I'm learning something, so it's important to figure out your own style of doing things and most important to be sure that it guides you to the point.

Approaching the 3rd month, I start a couple of HTML & CSS websites then add some JavaScript, made a website using react framework, then another couple of websites one with Gatsby.js (static site generator) and other with Next.js (Server side rendering).

In my 4th month I felt that it's the time now to stop playing and experimenting with code, So I decided to build something for real and make My first website!

I made it with Gatsby.js framework for (SSG) and I used plain CSS for most of the project except the navigation bar I styled it using styled component.

I just picked Gatsby because I felt working comfortably with it, since still I don't have this much experience to go farther with some other complex way.

I started early 2 months back but I switched serious mood on just last month and squeezed myself, I was repetitive, throwing stuff out and start from scratch again and again I want to implement everything I gained in the past 3 months in one project, which is normal but not good.

I used to take some short breaks during this time and relax, my thoughts were to don't over make things and always be back in full focus, fresh and reorganize my ideas.

It was challenging, tough sometimes and fun sometimes, but I did it and I'm writing my first blog to post it in my website which I built block by block.

At the end it really feels good and I'm so proud of where I reached from sub-zero to a ¼ hero 😊.

Well, I don't know why I wrote this but I just want to share my small achievement with whomever will read this blog, to be continued and I will do my best to document each part of my web development journey.

 

Thanks for reading!