How’d i start learning (Roadmap 2022)
In the beginning
Hello, everyone! Here i would tell you how to start learning and make your own learning plan.
At first, you need to decide what job do you want. I’ve always wanted to try myself in Frontend. Because i like to work with visual part.
Then, you need to check all vacancies, according to this job and look at the requirements. You need to know what you must learn. Yes, sometimes you will see very strange job offers, where they’re looking for trainee junior developer with PhD in mathematics and computer science after Oxford, and knowledge of 20 programming languages, including your own. Don’t look at them, they’re mad.
After that you can go to YouTube and look for fresh roadmaps.
I’ve scanned different vacancies, looked for roadmaps in internet, and then i knew what average stack i should have to become a junior. Yes, later you will need a new and new roadmaps, because this is a job, where you’ re learning all your life till the end.
1. HTML and CSS
Yes, you need to know this guys. Ever if you doesn’t want. You need to know how to create a website, and provide styles.
You don’t need to know it very deep, you just need knowledge of creating normal stable HTML document, with containers, divs, headers, footers, etc.
In CSS it’s flexbox of course and grid. It’s a base. Animations, transitions, visual effects and adaptability for different resolutions.
Often, in vacancies i saw SASS is required, learn it, it’s useful.
You need to practice all time, 80% of your time is a practice, and 20% is a theory.
But don’t give so much time for HTML and CSS layout, just one month was enough for me. After that you must able to make a simple website, with adaptability, animations and good look.
Sometimes i saw, that the Bootstrap framework is required too, i looked on it, but didn’t go deep. It’s very specific, and if it will be needed, i will learn it.
2. JavaScript
Main part of this journey. If you’re new at programming, start from basics, how to create variables, how to sum two numbers, etc. And learn more and more. After learning basics, OOP, functions, async functions, start learn DOM. You don’t need to learn all methods by heart, but you must know what methods exist and where to find it. You need to learn how to google correctly.
After this step you need to make a couple of little web applications, using JavaScript and HTML/CSS, something simple, like calculator, or a todo list. You need to practice. In practice you’re learning faster.
3. Tools
Parallel with JavaScript you need to know how to work with package managers, JSON files, and Git.
Package managers allow you to load libraries for example and initialise projects.
Git is a very important instrument. With it you can control versions of your projects, and create repositories, what you can load to GitHub. Just learn for beginning how to create repository, how to add files, commit, push, pull, create branches and merge them. Try to use Git when you make all your little projects. And push them to GitHub.
4. REACT
Yes, there is more frameworks that exist in Frontend. But i’ve decided to became a React developer, so i choosed React. You need to start learning frameworks ONLY after you learn language basics, and make some projects on bare JS.
Yes, you don’t need to learn ALL JS what exists. Try this scheme, that i’ve heard from other developer: Learn JS basics, then start learning react, and partially return to JS and learn it deeply. You need to know how framework or library works, instead of mindless using it.
And of course, make projects with React too.
5. Syntax
ES6+ is required. If you learn JS from modern sources, you probably already know es6+ syntax. But you need to check if you didn’t know something.
What about TypeScript. I think it’s necessary. But not right now. Learn js, you can start learn React, and step by step learn TypeScript, it’s a very powerful thing.
6. Theory
Theory and computer science is a very important thing, if you don’t want to be Junior all your life. But it’s not so important to learn it at first, instead of practice. Learn JS, React, make projects, and at odd times learn theory, like Design Patterns, Algorythms, Big O notation, etc.
You need this to form a programmer’s thinking.
7.Other
Here’s the other stuff, that i saw in different vacancies. Here’s the HTTP (post/get/etc), REST, and other stuff.
Here you can learn Node.js, it’s not very important, but useful. And i often saw basic Node knowledge in frontend requirements now. Here you can learn other things, that you can see in your job.
8. Where to find information?
At first, you can take courses. Or you can seek free ones on YouTube. Free youTube courses are good for start.
And then you need to read documentation and books, it will be a main source of normal informaton.
You can go to Mdn Web Docs site for JS and HTML/CSS info.
And you can read books, like “You don’t know JS yet” by Kyle Simpson, good for beginners.
Or “Professional JavaScript for developers” by Matt Frisbie.
Books for training your programmers mind:
- “Clean code” — Robert Martin
- “Refactoring” — M.Fowler
- “Design Patterns” — band of Four.
And remember ,
all you need is a wish and a plan. Good luck!