Innspired by roadmap.sh/frontend, here is my take:
1. Start
2. Computer Science Fundamentals
3. Internet
4. HTML & CSS
5. JavaScript
6. Ecosystem
7. Git
8. NodeJS
9. ReactJS
10. Modern CSS
11. GraphQL
12. TypeScript
Happy coding, Nick
If you want to learn the 6th step, JavaScript, then I'm working on a JavaScript course that fixes One thing that 97% of other courses lack: a combination of modern and practical JavaScript theory with real-world practice.
Try to get it here: javascriptcoursethatworks.com
And also, every Monday, I send my "3-2-1" newsletter for Web Developers with 3 hand-picked articles from me, 2 web development guides from others, and 1 Tweet of the week.
Join 2,900+ web developers here 💫
Top comments (34)
Why React and not Vue/Angular? :)
I always figure you just have to pick, based on what you know about what you want. It's probably not the most serious selection on this list, though, because once you know everything else on this roadmap, switching to Vue/Angular and understanding why things are different is way less of a challenge. There are still many millions more downloads of React over Angular, though. It's still king of the roost for now.
Right now React has more market share, more demand, and higher salaries than Vue & Angular.
I think it is because React has the most market share.
But it's all location dependent of course!
Your city / town might have more of a need for other frameworks.
Yeah ... it's www location, dependent :)
it can be any framework u like
Is data structures and algorithm not of much importance?
DSA is important!
Not as a direct application, but to develop your understanding and logic.
You can code without DSA, but it won't be optimised at all.
Thanks
What is DSA? Wikipedia lists a lot of different options: en.wikipedia.org/wiki/DSA
Isn't DSA pretty difficult to learn? I tried to learn it but didn't retain the information because I had no actual uses for most of the data structures besides arrays and maybe maps
Why Node and not Python, PHP, Java or Ruby?
Because:
I think you are wrong... Okay, let consider that it is your own opinion. We can share the same point of view if and only if we talk about frontend dev. But when it comes to build backend, it is no a must to use only Nodejs. People also use django, flask, ruby, and of course java,.... Actually you can say that PHP is an old tech tool but I definitely disagree. It is up to date.
People using: django, laravel, ruby, java, etc, etc because it's hart to change peoples' habits and old systems :)
Let's say like NodeJs come with somethin' new for "old back-end technology" and all others try to catch up;
and I think everybody see advantages using one language for frontend and backend on long-term and maintain distributed systems.
PS:
And I respect your opinion. I know, Using a single language for both frontend and backend is a crucial advantage of course, I do not deny it. But there are still much more powerful languages for the backend than NodeJs. And this should remain optional according to how each developer syncronizes with the language in question. All this just to try to prove that there is not only one and unique process or technique if I may say so, to become a good developer and that much less the steps which have been enumerated in that post.
Of course, there are more languages and approaches, I don't deny ... the only think I wanted to point it's that some are better than others :) no offence, peace and build something interesting :D ( no matter what tools you're using it )
We totally agree 🤝
🤝 and send to you greetings from other side of the world.
Looks like there are mistakes at points 5,6,8,9,19. Pictures are not related to headlines.
Yeah I noticed that too.
Fixed! thanks
do fullstack next
or focus to cross-platform developing
Why need to understand node.js if your goal is frontend dev?
Because font-end it's more complicated than we're thinking :) client-side rendering!
For this 2021 I already know reactjs, so I'm changing to vuejs this year (and probably play around with svelte), funny thing, I was rejected for a job because I didn't answer how to center a div.
"I didn't answer how to center a div"
It's really sad that some people determine your skills by not answering this. There can be a ton of reasons why you didn't answer, simply because of feeling nervous during an interview. Look at it not as a failure, but as a lesson from which you can learn. Keep going!
Fantastic post really good information but you not share node.js
Hmm wonder why none mentions on animation and user interaction
Nice article I see some concepts that I myself haven't reviewed or read about but no PHP eh? When did Javascript "bought" the web?
I would disagree with TypeScript
Some comments may only be visible to logged-in visitors. Sign in to view all comments.