I had some qualms before starting freeCodeCamp (fCC). So many people recommended it, but it seemed crazy to me that basically everyone that does fCC would have the exact same portfolio. Sure, it’s nice that the projects are laid out such that the next one is always just barely within your capabilities. But I kept wondering how I could stand out to recruiters if my projects were the same as everyone else’s.
But then it hit me.
Recruiters are not going to really care about these projects. The purpose of these projects was for me to learn by doing. Sure it’s nice to read textbooks and follow tutorials to find the right way to do things. But that is passive learning. Everyone always thinks that they know how to do something immediately after following along in a tutorial…until they actually try to do it…and they realize that none of it stuck and they are back at square one. As soon as I realized that the projects were for my learning only, from that point on I was all-in. If I really wanted special projects on my portfolio, then I could add an extra feature to make them unique, or I could just build other projects.
They are fantastic. They really are. The two most common complaints I see regarding people working on projects are the following:
- I just can’t think of any interesting projects. I literally am drawing blanks here.
- I feel like I have great project ideas, but they end up being way too difficult for me and now I have several unfinished projects.
In my opinion, FCC handles these complaints beautifully. The projects are interesting and at the perfect skill level. There are just enough of them to really hammer down key concepts for building web apps.
The exercises are almost all copy-pasta. I like the projects and the challenges, but the learning exercises are almost a waste of time in my opinion. They tell you how to do something and then make you do it yourself, but the answer is almost always basically given. This makes it easy to breeze through exercises without learning anything. So then by the time people get to the projects, they don’t know anything and have to learn on the fly.
They try to keep you away from using your own text editor. This makes sense given that setting up a development environment could prevent a lot of people from getting started, but if you know you’re in it for the long haul, then you should really do all of your work in your own environment and resist using codepen. Don’t get me wrong, I love me some codepen. But as a beginner, it is easy to find comfort in it. If you know that you should work in your own development environment on your own machine, then you can just do it and ignore when they tell you to use codepen.
I am absolutely glad that I chose freeCodeCamp over the Odin Project, and I would give that advice to anyone that asks. As soon as you find yourself copy-pastaing anything, that is the moment that you need to go back, re-read the material, and make an active effort to actually learn it. I pretty much cruised through the program until I found my way to React. If you want to know I did end up learning React, check out this post.
I also recommend that, as you’re working through fCC, you think about what full stack web apps you might want to build. That way once you’re through the frontend and backend sections, you can make some of your own, unique projects that you could put on a portfolio. I think that really worked out for me. If you want to know more about the full stack web apps I built, check out my portfolio: https://austintackaberry.co.