React is without a doubt one of the most sought after skills for any developer including yourself to learn in 2020.
In this post I’m sharing with you the path I personally took to learn React. It takes time, dedication and practice but as with learning any new technology its worth it in the end.
1. Start With The Docs
As with any new library, framework or tool I believe its best to have a thorough read through the documentation first.
As it happens the React docs are one of the best to follow along with.
Take some time to read through the code samples and explanations, don’t worry If 90% of the terminology doesn't make sense at this point.
It’s always beneficial to also see who the core contributors are and their motivations behind creating the library in the first place, ask yourself what problems does this solve in comparison to other alternatives out there?
Estimated time: 4 Hours
2. The Best Tutorials
From personal experience I have always preferred to code-along with a tutorial to understand a technology before I actually start building with it.
Some people like to dive right in and smash out some code, if thats you it’s totally fine to fire ahead and start building.
If your the latter I cannot recommend the following two courses below highly enough.
The teachers are really on the top of their game, each taking a more hands-on approach with React by building real applications that you can easily code along with.
My advice is to complete both of the courses, they not only cover the very basics of React but also touch on other associated technologies such as React Router, Redux, ES6 & much more.
React 16 - The Complete Guide (incl. React Router 4 & Redux)
Modern React with Redux | Udemy
Use create-react-app to Setup a Simple React App
Estimated time: 25–40 Hours
3. Building, Building, Building
If you completed the above courses or at least now have a solid understanding of the core concepts Well Done! 🎊 you should now feel confident to take your learning into your own hands and build something yourself.
In the past I always hit a block at this stage and spend days trying to figure out what to actually build in the first place.
To help you on your way these are some of the applications I have personally built in the past, choose one or go down your own path and build something of interest to you.
- Weather Application (Open Weather Map API)
- Course Tracker Application (Mocky.io)
- Football Score Tracker (Football API)
- Instagram / Spotify Clone Application (Instagram API, Spotify API)
- User Authentication (Firebase or Auth0)
Top Tips
Don’t worry to much about the build process at this stage simply use Create-React-App to scaffold your projects.
Also feel free to check back on the projects you built in the previous tutorials as a lot of the teachings can be re-applied again.
I would also recommend signing up for a free Bitbucket or Github account, it’s a great place to store and share your work for future personal and career reference.
Estimated time: Unlimited… Have Fun :)
4. The Top Industry Players
To become more competent with any technology it’s great to surround yourself with people who are pushing it forward.
These are a handful of heavy hitters that I follow in the React space who share a large amount of helpful information on a regular basis.
I recommend you follow these guys straight away, you will be sure to learn something from them.
Dan Abramov (@dan_abramov) | Twitter
Cory House 🏠 (@housecor) | Twitter
Ryan Florence (@ryanflorence) | Twitter
Kent C. Dodds (@kentcdodds) | Twitter
Estimated time: 5 Minutes
5. Career Advice & Future Learning
By now you should have a solid understanding of the React Library, along with some projects under your belt and some industry heavy hitters only a Tweet away.
Your probably asking yourself ‘whats next?’
In todays web landscape learning one technology is never enough, the web evolves fast and as a developer it’s your job to evolve with it.
If you have enjoyed learning React and think it can solve problems in your current role be sure to present it to your colleagues and stakeholders if it fits a new project, otherwise your always free to explore new and exiting job positions that use the library you now have working experience with.
Future Learning
If you want to go to the next level of React I highly recommend that you look into performance optimization, advanced unit testing along with contributing to the community via open source projects. More than anything else keep building side projects that you enjoy.
Estimated time: Your choice
Final Thoughts
The reality of learning anything new is that it takes time and effort along with many ‘What the hell?’ kind of moments. My advice is to stick with it, build things, share what you know and have fun working with one of the best technologies out there!
Thanks for reading!
Subscribe To Learnstability for more useful Web Developer posts.