What is React? What is React Native?
React is a Javacript library for building user interface, it was developed by Facebook. React lets you compose complex User Interface from small and isolated pieces of code called “components”.
Enough of introduction! Let's get into the real business. As these two technologies sound attractive and it feels like you should jump into it and start learning, there are some foundations you need to make for yourself before you learn React or React Native. I am not saying without these "foundations", you won't grab React when you start learning, but in my experience, people that do this tend to struggle at it and at the end of the day, they might come back to solidify their foundation.
Let me give you a list of these key things you need to learn before explaining how to go about learning it, approximated time to spend on each and resources you can make use of.
3. Basics of ES2015(ES6+)
5. React Native.
Sounds easy right? Yeah it is! At the same time, it is not!
Don't let that scare you, in this article, I will break down why, how, when and where you can learn these aforementioned technologies.
If you are going into web development, this two are the first technologies you will be advised to learn, and I can't stress it enough that it is important you learn them.
I will be giving you my personal steps to learn(I used this method and I have seen many people use it too).
Learn the basics of HTML and CSS from W3schools , this website is really great to get you started.
Sign up on Freecodecamp , Freecodecamp is an interactive learning web platform where there is a curriculum to follow, you practice as you learn a feature. Check it out! It is free and a very good resource to solidify your knowledge.
If you prefer to learn with videos, there are tons of youtube channels you can learn from. I recommend Traversy Media
Start building 'stuffs'. The only way to get better at coding is to experiment with the things you learn, don't just learn and feel you know it, BUILD SOMETHING!!, Real world project! I know you are already wondering why I am screaming at you, but you can't just skip that step. Luckily, Freecodecamp has a lot of projects for you to test your skills.
I feel one month or less is okay for you to get a good grasp of HTML and CSS(I am not saying you will become a Pro in one month), but you will have a solid knowledge of how these two technologies work and what you can do with them.
Back to business!
For videos, I will also recommend Traversy Media .
It is very important aspect of programming, you can't get better till you start doing it yourself, video tutorials might show you how to do it, but doing it yourself will build your brain muscles.
So Tobi, is this the right time to learn React?
No chill bro, aren't you missing something? ES2015+!!!
What is ES2015+ or ES6+?
LevelUp Tuts does justice to this question in this short video.
Resources to learn ES6
I said earlier that 4-6 months should be enough to go through these resources, but it doesn't mean you will be a Pro in this period of time, nobody does unless they've been doing it for years!
"So Tobi when is the right time to dive into React?"
If your answer is not between the range of 10-infinity, then you should get to work.
Spend good amount of time, practice, practice and practice.
These two books are books I still reference till date.
Fast forward to a year later!!!
You can now start learning React. smiles
So the big question comes in. How do I start learning React
Even though it is out of the scope of this article, but I will give brief intro to it and maybe in my next article, we will discuss this further.
Maybe you have read nice things about React Native(like me when I started) and you would rather become a full React Native developer that being a Web developer/React developer.
You might start asking, Should I learn React before React Native?
Yes! Yes!! and Yes!!!
Some people may still disagree with me on this, but the truth of the matter is React Native is still React, the only difference is that you are building for mobile for one and one is for the web.
"Okay, Tobi, I am confused here, if React Native is React, why shouldn't I just go ahead and learn React Native and start building apps instead of wasting my time on React?"
Well, the reason is that you will hardly find React Native tutorials, courses or videos that will teach you React, most will assume you have the knowledge of React. Even the official documentation of React Native does not teach you React. You should know the underlying principles before jumping into React Native.
So where should you start from?
I would say the Official documentation of React is the best place to start.
Like I said before, learning React is out of the scope of this article.
The goal of this article is to tell you the important things to learn before diving into React.
If you have any questions or contributions, let me know in the comment section.