Welcome to Software

    Best Learn to Code Platforms

    Coursera vs edX vs LinkedIn Learning vs Udemy vs Udacity vs CodeCademy vs freeCodeCamp vs Treehouse vs PluralSight vs Khan Academy

    Overview

    Learning to code has never been easier thanks to the appearance of countless learn to code platforms since 2010. Despite the crowded landscape, distinct differences exist between them. No one platform has it all, but each platform is typically great at something. This post aims to provide a bird’s-eye view of some of the most popular learn to code platforms.

    Best Platform Lists

    Best Free Learn to Code Platforms^

    Best Platforms for Complete Beginners^

    Best Platforms for Developing Real-World Projects for Beginners^

    Best Platforms for an Experienced Dev to Quickly Learn About Popular tools^

    Best Platforms for an Experienced Dev to Learn About Obscure Tools^

    Best Platforms for Direct-Access to a Teacher (and Expense is Acceptable)^

    Best Platforms to Learn Computer Science^

    Best Platforms for Anyone (Beginner to Expert) with a background in Math^

    Learn to Code Platform Comparison^

    Reset
    ?
    ^
    Cost
    ?
    ^
    Teacher Feedback
    ?
    ^
    Range of
    Tools
    ?
    ^
    Computer Science
    ?
    ^
    Real-World Projects
    ?
    ^
    Beginner Environments
    CodeCademyBasic: free
    Pro: US$40/mo
    Consistently active discussion forumsNarrowSome complex data structures coveredSecondary project instructions by vetted instructors in some coursesYes, with hints after submitting
    CourseraFrom free, up to US$100/mo (per course)Peer-review (some courses)MediumMany specializationsVideo instructions by universities and corpsNo
    edXUS$50-300 per course (with hard deadline)Peer-review (some courses)MediumMany specializationsVideo instructions by universities and corpsNo
    freeCodeCampFreeConsistently active discussion forumsVery NarrowNot explicitly coveredWritten descriptions without course contextYes, with hints after submitting
    Khan AcademyFreePeer-review (some courses, long wait times)Very NarrowSome complex data structures coveredNoYes, with hints as you type
    LinkedIn LearningUS$30/moNoWideSome complex data structures coveredSecondary video walkthroughs by vetted instructors in some coursesNo
    PluralSightBasic: US$30/mo
    Premium: US$450/yr
    NoWideSome complex data structures coveredVideo walkthroughs with Premium membership by vetted instructorsYes with Premium membership, but unclear progression
    TreehouseBasic: US$25/mo
    Techdegree: US$200/mo (per course)
    Teacher grading and access (Techdegree)MediumBasic data structures coveredVideo walkthroughs by vetted instructorsOnly during intermittent coding challenges
    UdacitySome free courses.
    Nanodegree: US$400/mo (per course)
    Teacher grading and access (Nanodegree)MediumFew specializaionsVideo instructions by vetted instructorsNo
    UdemyUS$10-15 for most courses (with promo)NoVery WideSome complex data structures coveredVideo walkthroughs by anyoneNo

    Comparison Categories^

    Cost^

    How much does it cost?

    5All courses are free.
    4Most courses are free, or there is a small (US$40 or less) one-time fee for most courses.
    3Most courses are less than US$40/month.
    2Most courses are US$40-100/month.
    1Most courses are US$100+/month.

    Who is this Category For?

    • Anyone who cares about their spending.

    Additional Notes

    • When courses are offered for free, but important features (such as graded assignments) are missing, then those courses are not considered when weighing the cost of the platform.
    • It’s assumed that one course is taken at a time when a recurring fee provides access to only one course.
    • One-time fees are converted to monthly based using expected course duration according to the platform (typical estimated work load is about 10 hours per week).

    Teacher feedback^

    • Will your projects be reviewed by an experienced developer?
    • Can you engage directly with an experienced developer with a guaranteed response?
    5Projects are graded by a teacher. Direct access to a teacher is available within a reasonable timeframe.
    4Projects are graded by a teacher.
    3Projects are graded by other students.
    2Consistently active community exists where another student will likely respond to your query.
    1Feedback from a teacher or other experienced developer is not reliably available.

    Who is this Category For?

    • Beginners who could use some guidance.

    Additional Notes

    • This category is often closely related to Real-World Projects, as project instructions are often accompanied by an assessment by peers or a real teacher.

    Range of Tools^

    • How many tools (languages, platforms, libraries, protocols, etc) does the platform cover?
    5Each tool from the basket of tools was covered.
    4Each tool except one or two from the basket of tools was covered.
    3Most tools from the basket of tools are covered.
    2Most tools from the basket of tools are not covered.
    1Only one or two tools from the basket of tools was covered.
    A basket of tools was used to measure the relative coverage of tools from each platform:
    Tool TypeTool Name
    LanguagePython
    JavaScript
    Java
    PHP
    C#
    Swift
    Golang
    Front-end FrameworkReact
    Angular
    Back-end FrameworkPython's Django
    PHP's Laravel
    Java's Spring
    MobileReact Native
    Machine LearningTensorFlow
    Data SciencePython's Pandas
    Apache Spark
    VideoWebRTC (most obscure tool here)
    Distributed ComputingKafka
    Kubernetes

    Who is this Category For?

    • Beginners who want to keep their options open after signing up for a platform.
    • Experienced developers interested in learning something specific.

    Computer Science^

    • Is there is material that explicitly teaches computer science?
    • If yes, how deep does it go?
    5Many computer science specializations exist.
    4Few computer science specializations exist.
    3Complex data structures covered in some courses.
    2Basic data structures covered in some courses.
    1Basic computer science concepts are not explicitly covered.

    Who is this Category For?

    • Beginners with a background in Math.
    • Experienced developers who never studied this in school.

    Additional Notes

    Top Tech companies such as Google, Facebook, Amazon, and Apple have established rigorous and fine-tuned interview processes after years of data on the matter at a very large scale. This allows them to care a lot less about certifications and degrees.

    Real-World Projects^

    • Does the platform offer projects to give you a taste of real-world experience?
    • Are there videos of instructors walking you through or describing the project?
    • Who are the project instructors?
    5Real-world projects are presented with a description or walkthrough as a primary objective of courses -- by screened instructors.
    4Real-world projects are presented with a description or walkthrough as a primary objective of courses.
    3Real-world projects are presented with a description or walkthrough, but are not a primary objective of courses.
    2Real-world projects are presented with a description or walkthrough, but without additional context of a course.
    1Real-world projects are not available.

    Who is this Category For?

    • Beginners who are ready to start building software for the first time.
    • Experienced developers who are interested in tackling a project that is completely outside their wheelhouse.
    • Anyone in-between the above two groups.

    Additional Notes

    • A real-world project is typically completed by the student on their own computer — not through the platform’s website. It may be uploaded for assessment in the platform’s web app (or student’s Github account). It is never completed within the platform’s web app. It can be completed from instructions, or video walkthroughs.
    • Project walkthroughs are sets of videos where an instructor walks you through building a project, demonstrating implementation details step-by-step. They’re typically more suitable for most beginners. If they’re presented in an advanced course, it’s typically a very small demo project.
    • Project instructions come in written or video form. They are high-level, conceptual overviews of a project (which omit implementation details). They are often not ideal for complete beginners. They are often accompanied by one of the following forms of assessments (explored in the Teacher Feedback category):
      • answer a quiz based on the project that was just completed
      • automated grader that assigns either a pass/fail or a score based on number of test cases that passed/failed
      • peer-review (by other students taking that course)
      • review by a formal teacher
    • Consistency of instructor or project quality was not taken into consideration because an effort was made to minimize the subjectivity of category grading. However, this is explored in each platform’s review.
    • Sometimes, a platform will refer to coding challenges within their web interface as projects. Although they may provide an excellent learning opportunity in many ways, they’re not real-world projects.
    • Some platforms, such as freeCodeCamp and CodeCademy, occasionally post project walkthroughs on YouTube. These videos are not apart of their platforms and were not considered during grading.

    Beginner Environments^

    • Does the platform offer coding challenges in interactive, safe environments with artificially helpful error messages which make it suitable for total beginners?
    5Beginner-friendly coding environment available providing artificially helpful error messages as you type.
    4Beginner-friendly coding environment available providing artificially helpful error messages after submitting each mini-challenge.
    3Beginner-friendly coding environment available, but progression path not clear between courses.
    2Beginner-friendly coding environment available intermittently, but not available as the primary method of learning.
    1No beginner-friendly coding environments available.

    Who is this Category For?

    • Beginners who have never touched a line of code.
    • Beginners who enjoy learning within a rigid, guided structure.

    Omitted Categories^

    The following categories were omitted from this comparison for the following reasons:

    Range of Difficulties

    Due to the widely varying backgrounds of different learners, categorizing platforms into distinct grades based on difficulty is impossible.

    Interview Prep

    Interview prep means a lot of different things depending on the exact position being interviewed. For example, Top Tech companies typically present at least an algorithm coding challenge. This style of coding challenge is extensively available at platforms like: HackerRank, LeetCode, GeeksforGeeks, or AlgoExpert. Among the platforms compared in this blog post, only freeCodeCamp provides this style of coding challenge.

    Certifications

    Some popular certifications have entire platforms dedicated specifically to a single type of certification. There are even entire platforms dedicated to offering practice exams. Only PluralSight (from this list) provides practice exams for some popular certifications, however even that is through a third party called Kaplan.

    Omitted Platforms^

    The following platforms were omitted from this comparison for the following reasons:

    Code.org

    Code.org is difficult to compare to the platforms listed here because it's so strongly oriented towards the youngest learners. In Code.org's exercises, elements of programming languages are provided as building blocks. Rather than write the code, you simply drag and drop, composing elements together. See examples. If Khan Academy is too difficult, go to Code.org -- it's designed for learners as young as 3.

    Codewars

    Codewars is not a learn to code platform. It's an interview-style coding challenge platform in a league with HackerRank, LeetCode, GeeksForGeeks, and AlgoExpert.

    The Odin Project

    Most of The Odin Project’s back-end content is Ruby, a dying language.

    DataCamp and Dataquest

    DataCamp and Dataquest are too niche for this comparison as they only offer content relevant to aspiring data analysts and scientists.

    BrainStation and Nology

    BrainStation and Nology are actual live classes led by instructors costing thousands of dollars.

    O’Reilly, Packt, and SitePoint

    O'Reilly, Packt, and SitePoint are primarily intended for existing professionals interested in expanding their skills (similar to LinkedIn Learning in this respect). These three are non-fiction publishing companies who have made their books and videos available through monthly subscriptions (like Spotify for non-fiction books). Their content is comprehensive, specialized, and not ideal for beginners.

    Final Words^

    No one platform has everything. Each platform’s set of strengths is unique — except for Coursera and edX. These two platforms offer some of the exact same courses, so it’s no wonder their comparisons produce identical results. However, they — along with several others — are great resources for developers at any level.

    An important note is that there is something for everyone, even the least technically proficient who might be afraid of writing a line of code — at Code.org. Khan Academy and freeCodeCamp are excellent starting points for anyone who’s ready to write a line or two. All three are 100% free.

    Regrettably, web scrapers were not used this year to provide additional insight into these platforms. If you think there’s a platform missing, or just have a question or comment, please let me know!


    Authors

    Twitter

    Sam Malayek works in London for Thought Machine, and uses this space to fill in a few gaps.