Introduction
So, you intrigued by the world of Web Development? With numerous tracks to explore, it’s essential to recognize that the path outlined below isn’t the sole or definitive one. Instead, this blog post aims to;
- Share my journey into web development, highlighting what proved valuable and effective for me.
- Provide valuable resources to kickstart your web development journey in 2024.
Bootcamp
Step 1 - JavaScript Fundamentals
First step is to get familiar with coding in general and learning some JavaScript. Coding is an infinite virtual jigsaw puzzle where you can build whatever you can imagine. If the prospect of this excites you, it serves as a promising indicator to persist and delve deeper into the world of coding.
Leetcode is a great way to test your knowledge. Some people get super into Leetcode as they enjoy solving puzzles. If you are someone who loves Sudoku for example, this might resonate with you. I would say if you are able to answer the “Easy” questions you are ready to move on to step 2. But, if you are having fun, doing some of the “Medium” rated puzzles will definitly serve you very well in your web dev journey.
Recourses
- Codecademy Free Trial - Learn some JavaScript Fundamentals.
- Leetcode - 30 Days of JavaScript - Test your understanding. Just the “Easy” questions is enough.
Step 2 - Web Dev Fundamentals
The next step would be to learn web dev fundaments. Topics such as;
- Fundamentally how do websites work?
- Where/when/how how does my code get executed?
- How to style a site
- Responsive design
- Authentication
Some tips
- Focus on the fun! Do not try to memories 100s of CSS properties. Focus building stuff that you think is cool.
- You do not have to spend a lot of money. YouTube series are great! And even Udemy coerces are often heavily reduced. Also if you are a student you may be able to get a free/cheap Udemy subscription.
- Reddit and Stack Overflow are probably the best places to get answers to your questions. Reddit for general questions questions (e.g: this) Stack Overflow for specific questions (e.g this)
- Classes can be helpful, if that’s your preference, but are definitely not essential and I would probably avoid them. A lot are overpriced, especially when considering the abundance of awesome and free recourses out there (which paid classes will mostly just regurgitate). Either way, mastering web development primarily requires a lot of self learning.
What should I learn?
- Learn a frontend framework. I recommend React.
- If you learn React. Learn functional components form the start. Do not waste your time learning the old style class based components.
- You may want to learn a server side React (i.e: NextJS) but I would say that is very complicated place to start. I would suggest starting with single page applications (i.e: Vite) and be aware that server side React exists so that you can reach for it in future if you need it.
Recourses
- Udemy - The Web Developer Bootcamp 2024 - While I haven’t personally taken this course, I was thoroughly impressed by my friend’s journey. Having transitioned from a school teacher to a web developer, they demonstrated remarkable proficiency within just 1.5 years of embarking on their web development venture. This was their first course and they highly recommend it.
- For help - r/aws, r/javascript, r/nextjs, r/node
Step 3 - Learn TypeScript
Now it’s time to learn TypeScript. You should really do this as soon as possible. There is an initial learning curve but then immediate payoff which will accelerate your productivity. Learning TypeScript also opens the door to new frameworks and libraries (such as Nest and TypeGraphQL) which often have a better developer experience than using JS alone. My biggest regret in my own web dev journey is not learning TypeScript sooner!
Recourses
- YouTube - React with TypeScript Crash Course
- YouTube - React Typescript Tutorial
- YouTube - Anything and Everything from Ben Awad!
Step 4 - Learn FullStack TypeScript Development
You need a lot more than React to build and deploy a modern website.
Some key topis
- Working with apis. Even if you are not a full stack developer you will inevitably have to use apis in web development. Learn how to make and consume Type Safe APIs.
- Learn how to deploy websites. Deploying on AWS is a popular choice. You can do this with TypeScript too!
Recourses
- TypeScript Journey - A journey into Modern Web Development, CI/CD and AWS Magic!
Step 5 - Play around with some sample repositories
Find some repos that interest you and play around with them. Be curious and add a couple of cool features.
Recourses
- Code Samples - Here are some of my sample projects. Check them out and play around.
- GitHub - There are thousands of projects there to look at! Most cool new libraries (e.g: TanStack Router) have stater projects on GitHub. Playing around with them is a great way to learn.
Step 6 - Build a Personal Project
Build something fun! The best way to learn is to build something from scratch and expand your horizons. Get yourself totally stuck and learn how to unblock yourself. Do not try to build the next AirBnb. Build something simple and fun that you and your friends/family might use.
Recourses
- Wakeboard Competition App Project - My first passion project.
- Code Assignment - If you are really stuck for ideas then here is a code assignment which I set to evaluate candidates.
Step 7 - Call Me! ☎️
Still having fun!? If you made it this far than you must really enjoy this stuff. Give me a call and let me see if I can find you a real project to work on!