PHP vs freeCodeCamp
When comparing PHP vs freeCodeCamp, the Slant community recommends freeCodeCamp for most people. In the question“What are the best resources to learn full stack web development? ” freeCodeCamp is ranked 1st while PHP is ranked 10th. The most important reason people chose freeCodeCamp is:
Free for anyone who wants to take the camp.
Specs
Ranked in these QuestionsQuestion Ranking
Pros
Pro One of the most common languages
According to the 2015 Stack Overflow Developer Survey (26,086 people surveyed), PHP was the 5th most popular/used language at 29.7%.
Pro Lots of tutorials online
Pro Used by most common CMS platforms
Many clients are looking for an easy-to-update web site that's flexible and free. Drupal and Wordpress fill those needs very well.
Pro Most prominent language for web applications
Part of the de facto standard web application stack.
Pro Great third-party package manager
PHP standard library is somewhat subpar, but if you need plugins, language features, composer has them all( you can even puzzle together a custom framework from composer).
Pro Fast
Since 7.x was released, PHP has become a pretty fast language.
Pro Lots of PHP frameworks available which help with development
PHP people love frameworks, and with frameworks such as Laravel, you can build a web app or API really fast (Facades, ORMs, scaffolding etc.)
Pro Great documentation
Pro Completely free
Free for anyone who wants to take the camp.
Pro Open source
Due to freeCodeCamp being open source, you are able to contribute to the program that helped teach you how to code in the first place. It's a great way to give back and gain experience.
Pro Self-paced
There is no set schedule with freeCodeCamp. You can work through the program as fast or as slow as you want.
Pro Browser-based
All courses used by freeCodeCamp are done in the browser, rather than students having to set up their own environment. This makes it much easier for beginners to get started.
Pro Actively developed
They are frequently updating courses and adding new material.
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 Six certificates available
There are currently six certificates available that you can get once you've completed all the projects:
- Responsive Web Design Certification
- Javascript Algorithms And Data Structures Certification
- Front End Libraries Certification
- Data Visualization Certification
- Apis And Microservices Certification
- Information Security And Quality Assurance Certification
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.
Pro Full stack certificate
There is a cool Full stack certificate
Cons
Con Poorly designed language
Despite its widespread use, PHP is generally looked upon poorly from a design point of view. The consistency of function names and function argument order, lazily and borderline non-functional implementation of object oriented programming, can only receive requests via POST methods, slow version adoption (the PHP you learn right now may not work on every webserver you'll work on), and a focus on "hacking things together" rather than "doing it right". These are all very common complaints when it comes to working with PHP. While not a bad language to learn, PHP is not at all a good language to learn first, as it will probably teach bad habits.
Con Immense catalog of insecure frameworks
The most serious security problems in websites on the web today are almost universally found in popular PHP frameworks, CMS platforms, libraries and code samples, almost all stemming from poor language design, bad tutorials and awful resources.
Con After python, probably one of the worst languages ever
Con Poorly designed language, awful syntax & luckily on the decline
Nobody in their right mind is using PHP for new software, if you decide to learn it as your first language you'll be stuck working in teams with old developers who have had no interest in the computer programming field since they landed their first job while maintaining some 2000 era archaic website codebase.
Con Most tutorials are out of date
A lot of very bad tutorials are still widely circulated among beginners, and these tutorials teach very poor programming practices.
Con Most resources are poorly-written
Few resources exemplify the "correct" or secure use of features.
Con Interpreter being too permissive
If you forget the dollar sign, the variable name will be converted to a string.
Con No longer offers opportunity to build projects one-on-one with nonprofits
There are no nonprofits to help upon completing the program.
Con Learning material is not in-depth
The teaching content provided by freeCodeCamp tends to act more as an introduction than a solid learning resource. Unless you already have some prior experience, you won't have enough knowledge to get through the coding challenges and development projects without using outside learning resources to fill in the gaps.
Con Massive time waste
Content mainly focuses on trivial concepts and is very sparse in those few areas that inch beyond 'complete beginner'.
Con Is an email list generator
Early focus isn't on programming. It is on signing up for all of FreeCodeCamp's social media and getting looped into their newsletters. The content is trivial. It is all just a massive marketing scheme to get email addresses of aspiring programmers to affiliate sell to by pushing novice developers to blog posts containing affiliate links.
That is until they sell to a 3rd party. Read their disclaimer. Whoever buys them out gets all their user data, email lists, etc.
Con No offline version
Con Excessive focus on the basics
This platform focuses too much on the basics.