freeCodeCamp
What is freeCodeCamp
As the name says, freeCodeCamp is a free code camp. It is a wealth of knowledge and courses that allows for students to work at their own pace. No deadlines, no costs, and no hassle is how freeCodeCamp operates. They offer a range of certificates that each require the completion of special projects. The certs range from Front End development to Data Analysis with Python and Pandas.
As someone who has completed some of these certificates while learning, this review is a first hand look at my experience.
What do they offer?
freeCode camp offers certificates in:
- Responsive Web Design
- JavaScript Algorithms and Data Structures
- Front End Development Libraries
- Data Visualization
- Relational Database
- Back End Development
- Quality Assurance
- Scientific Computing with Python
- Data Analysis with Python
- Information Security
- Machine Learning with Python
- College Algrbra with Python
- A2 English for Developers
- Foundational C# with Microsoft
They also offer interview prep stuff such as:
- The Odin Project
- Coding Interview Prep
- Project Euler
- Rosetta Code
This is an ever-growing list of coursework that is free. Free as in free beer, not freedom of expression. The only cost is the time you spend on learning and making projects.
What I learned
As someone who learned web development through freeCodeCamp I may be somewhat biased. That being said, I do love how easy they make learning. The site breaks down simple concepts like CSS, HTML, and JavaScript into bite sized chunks. The REACT and Redux parts of the Front End Development Libraries course where much harder but still manageable.
I have completed the Responsive Web Design, Front End Development Libraries, JavaScript Algorithms and Data Structures, Data Analysis with Python.
Responsive Web Design
In this Responsive Web Design Certification, you’ll learn the languages that developers use to build webpages: HTML (Hypertext Markup Language) for content, and CSS (Cascading Style Sheets) for design.
First, you’ll build a cat photo app to learn the basics of HTML and CSS. Later, you’ll learn modern techniques like CSS variables by building a penguin, and best practices for accessibility by building a quiz site.
Finally, you’ll learn how to make webpages that respond to different screen sizes by building a photo gallery with Flexbox, and a magazine article layout with CSS Grid. —freeCodeCamp
This cert was a great intro into HTML, CSS, and how the interact with each other. Going in to this cert I had only wrote very basic HTML for myspace, yes I am THAT old. I learned how HTML is structured and how to think in that DOM structure. I also learned how to shape this structure with CSS.
You can finish this Certificate by completing basic websites that look like a 2 year old made them. I would recommend against this, or at least for you to re-finish the challenges with better versions of your sites if you ever want to showcase them.
That being said, will anyone be impressed with this certificate? Probably not.
This is a good intro cert that will help you in finishing the other certificates.
Javascript Algorithms and Data Structures ( legacy )
While HTML and CSS control the content and styling of a page, JavaScript is used to make it interactive. In the JavaScript Algorithm and Data Structures Certification, you’ll learn the fundamentals of JavaScript including variables, arrays, objects, loops, and functions.
Once you have the fundamentals down, you’ll apply that knowledge by creating algorithms to manipulate strings, factorialize numbers, and even calculate the orbit of the International Space Station.
Along the way, you’ll also learn two important programming styles or paradigms: Object Oriented Programming (OOP) and Functional Programming (FP). —freeCodeCamp
This certifcate is all about learning the basics of how to write code with javascript. The main focus is fundamental javascript and it does not focus on the interaction with the DOM that we learned about in the Responsive Web Design cert. This is good if you want to just learn basic programming or didn’t do the other cert.
Front End Development Libraries
Now that you’re familiar with HTML, CSS, and JavaScript, level up your skills by learning some of the most popular front end libraries in the industry.
In the Front End Development Libraries Certification, you’ll learn how to style your site quickly with Bootstrap. You’ll also learn how to add logic to your CSS styles and extend them with Sass.
Later, you’ll build a shopping cart and other applications to learn how to create powerful Single Page Applications (SPAs) with React and Redux. —freeCodeCamp
In this certificate we explore React and how to make SPAs.
This was my introduction to React and I am kind of glad that I learned it this way with class components first. This might not be the most common or practical way to write react components currently, but it provides an insight into how react works.
This was a fairly straight forward set of courses that allowed me to acquire a skill. I would however say that it is almost necessary to learn from other sources as well. I used a lot of YouTube myself.
After learning React I went on to use it with TypeScript to create a podcast app as well as a weather app. These were personal learning projects that helped me after taking this cert and are possible thanks to this course.
Data Analysis With Python
Data Analysis has been around for a long time. But up until a few years ago, developers practiced it using expensive, closed-source tools like Tableau. But recently, Python, SQL, and other open libraries have changed Data Analysis forever.
In the Data Analysis with Python Certification, you’ll learn the fundamentals of data analysis with Python. By the end of this certification, you’ll know how to read data from sources like CSVs and SQL, and how to use libraries like Numpy, Pandas, Matplotlib, and Seaborn to process and visualize data. —freeCodeCamp
This was a great introduction into using jupyter notebooks, python, and data analysis. While I think this cert should have more content, such as statistics and the specifics of python as a language; I did learn a lot here.
Having this focus on mainly pandas and numpy isn’t a bad thing but a little more aout data reporting tools and trend analysis would have also been nice. If you mixed this cert with the Google Data Analytics cert on coursera then you might have a decent set of classes that would get you started in the world of data analytics. The coursera cert did a better job of preparing you to work with data on a daily basis and how to find, clean, and present the data. This cert was good for getting to know the tools of the trade, since the Google one used R and some tools I found less intuitive.
Conclusion
There are many other certifications that they offer and that I will most likily complete given the free time. These are just my opinions on the ones in which I participated.
freeCodeCamp has many YouTube videos on computer science subjects from multiple teachers. Many of these videos are several hours long and very inclusive. These videos are great when watched in chunks so you can follow along with the instructor.
The challenges and projects are often good examples of what you can do. They may not be something you would want to showcase as a proof of work but you can build on the experience for your own personal projects.
fCC claims that it takes around 300 hours to complete each cert. This is possible for the uninitiated, however existing developers and computer science grads will take less time.
That being said, if it takes you 300 hours then that is ok as well. The goal is to learn an initiate one’s self with the topic at hand. Learning is the goal of freeCodeCamp and it acheives it internationally without subscription costs or sponsored ads.
The information in the curriculum is enough to get started, but often requires additional information from their 9000+ articles and tutorials.