I feel like I have been thrown in a vast ocean while the only swimming training I had was in a 4 x 4 pool…
I’m not here to criticize Codecademy further, but I’m here to ask the people who have done the project and found it fun and easy and/or challenging, what resources they have used to practice and get better to be able to do this project?
On Codecademy we have had lessons, which were not lessons at all but some articles, about testing React and Redux. We had no interactive lessons to actually practice those concepts and the articles we were pointed to were simply just articles without any clear way on how to practice those concepts. But now here in the project one of the prerequisites is Jest, Enzyme, and Selenium (I honestly don’t even know what Selenium is!) I’m not gonna talk about the other lessons like React Hooks, etc…
I’m 99% sure that the people who have done this project didn’t ONLY rely on Codecademy for learning and practicing.
So here I am humbly asking those who have done it to tell the ones who only relied on Codecademy and are now stuck and actually feel like they haven’t learned anything, about the resources they used to practice, practice and practice.
I read some of your post where you wrote about your frustration with the React lessons because they explain too little in your opinion. I also read a post by someone complaining that the React exercises are redundant and therefore a waste of time – which is the complete opposite of what you describe. Especially regarding the React lessons (I’m doing the front end path), I find myself right in the middle. Just one lesson drove me crazy: The hook lesson. The validation doesn’t let you pass unless you copy the solution code in. If that could be fixed it would spare a lot of people a lot of frustration, I guess.
The first time I rushed though the lessons just following hints and advices, sometimes without really understanding what and why I was doing something. Then I did the exercises. Being confronted with explicit problems, I googled and redid the preceding lessons and understood much more. Helping others on the forums also was an important part in boosting my understanding of concepts. It was a great experience to completely understand something eventually that you read before.
Yes, and Codecademy encourages learners not to. If you practice with a project – be it your own or the Reddit project – you end up googling a lot. And that let me end up on Stackoverflow and Medium a lot. And I go back to the Codecademy lessons often because I remember that they targeted my problem somewhere.
There was a seperate course for React testing added recently with regular lessons I think, I haven’t started that yet. I neglected testing until now, but the preinstalled test suites when you install a react app with
npx create-react-app provides a tremendous amount of help already.
Agree with @mirja_t but will add a couple of things. To get started with a new React/Redux project you can use the redux template with create-react-app as a recommended way of starting an app. See: Getting Started | Redux Toolkit
Look at that app, see how it’s structured, decide what state you need and build from there to fit your need. Also, take the time to use redux dev tools and at a minimum be able to inspect the redux store state in there.
I did testing after the project and think that will be easiest here (no TDD). You can use jest/enzyme but there is a new CC course on React Testing with Jest/React Testing Library which is good. I think (but don’t quote me on this) that if you do tests with jest/RTL then this will be fine as well as it seems very popular. Link to the new CC course: https://www.codecademy.com/learn/learn-react-testing
For other resources used, the docs are usually the first place to check. I have used the testing strategies they now recommend on the redux site and find this a good resource: Writing Tests | Redux. I am sure many who have done project are happy to help out if you get stuck on any particular point.
Thanks a lot for a thorough input.
I’ll be sure to check external stuff more and more.
But there’s still the matter of practicing.
When I started React, I constantly felt that I’m not getting enough practice while knowing and understanding the concepts.
I’ll definitely check those stuff. Thanks!
Although this place is for the project explicitly and not about different resources, may I ask what you or others who have become better at React used for more practice?
Because one can read thousands of books about how 2 + 2 equals 4 but until he/she has done the calculation, the foundation doesn’t get strong enough at all. And this is my main struggle with React for ever since I started it I felt like I need more to practice and CC isn’t enough.
Where is the point where you feel unprepared? When doing the exercises provided by Codecademy like Flashcards, Appointment planner etc. or after finishing the whole react content when doing your own projects?
There are many resources available for React. I usually go to the official website for new technologies/libraries I am trying to learn. React has a great tutorial here where you make a tic-tac-toe game (I would do it on your computer): https://reactjs.org/tutorial/tutorial.html They also have a slightly different one here that is also great: https://reactjs.org/docs/hello-world.html
Then I think you have enough to do a couple of basic projects without Redux - perhaps convert some small vanilla-JS site you have made into React - perhaps the portfolio site or similar. Starting from Create-React-App and building something will be a great addition to having built projects that were already started for you and will help you see how everything fits together.
Adding Redux I went through a similar process. In addition to the CC material, I built both tutorial projects on the Redux website: Redux Essentials, Part 1: Redux Overview and Concepts | Redux
Redux Fundamentals, Part 1: Redux Overview | Redux
I am grateful to codeacademy. They stepped me in Python, that’s the first time I heard from it. Of course, it is a starting point. You have to practice, learn, and if you don’t understand something: research. If you get stucked with something, just search. There are plenty examples every where. Thanks world!
By the way, I have just started, and I don’t understand many things yet, but
I am following the rabbit…
It’s mostly in React and as I said the moment I started it I kinda felt like I needed more practice.
The exercises and lessons are kinda easy in their own individuality and I can do the projects too but I mostly get stuck in challenge projects and well right now I’m trying to find some places to practice React/Redux more so I can do the Reddit Client project.
Thanks again Mike!
I’ll be sure to follow your advice and will check all of the resources you mentioned as well as looking more into the docs.
Oh ok, that differs from my experience. I already found the Codecademy React projects challenging enough. After I had finished them, I felt well prepared for my own projects.
As a designer, I am especially interested in animating page transitions and component transitions. That isn’t covered by the courses. So I was reading a lot of docs and CodeSandboxes, watching Youtube videos or reading tutorials to get that implemented in my projects.
When doing my own projects, the problems I encountered were very clear, so finding a solution online usually wasn’t a big problem.
And for the core concepts of React and Redux, I went back to the CC lessons and projects very often as I remembered that my specific problem was covered somewhere there.
So this is what I can recommend as a way of learning React. Not sure if it helps because my experience with the courses seem to be very different to yours…
I totally got your point and really appreciate it.
I too indeed found the React/Redux projects challenging but the challenge projects were the ones that hit me hard.
I guess the best thing for me right now is to find more tutorials and code along with them to better cement this foundation.
Hello, I feel your frustration with the React part of the path. It was the same for me.
In fact I decided to pause with React on Codecademy and went online to look for other tutorials. I would highly recommend John Smilga’s tutorial and projects. This is the link to his free React tutorial: Full React Course 2020 - Learn Fundamentals, Hooks, Context API, React Router, Custom Hooks - YouTube and this is the link to the projects video: Code 15 React Projects - Complete Course - YouTube. The tutorial is quite lengthy but it really helped me get comfortable with React and I finally feel ready to start working on the Portfolio project.
Probably the best approach to these two videos is to watch part of the tutorial on some topic first (useState hook for example), and then go to the projects video and practice.
Hope this helps
Thank you so much!
I’ll be sure to watch them.
I totally agree with your suggestions. John Smilga course is very helpful!