Recs.
Updated
SpecsUpdate
Pros
Pro Welcoming, active community
freeCodeCamp strongly encourages interacting with other learners and experienced programmers. They provide chatrooms which are always active and full of members happy to answer any questions you may have. Pair programming (programming with another user) is encouraged as a great way to work through some of their coding challenges.
There are also meetup groups where you can code in person with other freeCodeCamp students.
Pro Gain real world experience while helping nonprofits
Once you've completed all the courses and practice levels on freeCodeCamp, you are able to participate with other learners on developing software for non-profits. It's an amazing way to gain experience and build your portfolio as a developer while helping out a non-profit organization.
Cons
Con Some parts of the Data Visualization Certification are unavailable
freeCodeCamp is still developing the Data Visualization Certification, so some parts are not yet available.
Currently you have access to the projects, but the tutorial portions are still being developed (should be coming soon).