CourseVerdict

Learn SQL vs Complete Intro to Containers (feat. Docker)

Same Bayesian formula, same rubric — so the difference in scores reflects the difference in the courses, not the difference in how we evaluated them.

Codecademy · Web Development

Learn SQL

4.4/ 5 · 26877 opinions
24727 positive1344 neutral806 negative/ 26877 total

Frontend Masters · Web Development

Complete Intro to Containers (feat. Docker)

4.5/ 5 · 38 opinions
28 positive6 neutral4 negative/ 38 total

Per-criterion

Content quality4.4 / 5

Learn SQL is organised into four tightly scoped lessons — Manipulation, Queries, Aggregate Functions, and Multiple Tables — followed by five hands-on projects and four quizzes, with an estimated five hours to complete. The curriculum covers the genuine fundamentals of working with a relational database: creating and updating records, filtering and ordering result sets, computing aggregates with GROUP BY and HAVING, and joining related tables. For a complete beginner with no prior exposure to databases, this is a well-sequenced path that moves from individual statements to multi-table reasoning without overwhelming detail. The standout pedagogical feature, cited repeatedly across reviews, is the visual treatment of how data moves and combines. Multiple learners single out the animations that illustrate how rows transform during joins as the clearest explanation of that concept they had encountered, including some who had previously studied SQL at university and still preferred Codecademy's visual approach. The recurring criticism is depth. The course teaches SQL against a SQLite engine and, as one detailed blog reviewer put it, could fairly be retitled "Learn SQLite." It introduces primary and foreign keys but stops at uniqueness; it does not cover database normalisation, schema design, indexing, transactions, or window functions. Several reviewers noted topics that ended with an acknowledgement that more depth exists but would not be covered. The content is excellent for using an existing database and insufficient for designing a new one — an honest scope limitation rather than a quality failure.

Value for money4.5 / 5

The entire Learn SQL course — every lesson, project, and quiz — is free on the Basic plan. There is no paywall on the learning content itself, which over a million learners have taken. Payment is only required for a certificate of completion and Pro-exclusive features, available through Plus (around $14.99/month billed annually) or Pro (around $19.99/month billed annually), which add personalised feedback, career paths, and interview prep. For a learner whose goal is to become competent at querying data, the free tier delivers essentially the full value at zero cost — a strong proposition for a five-hour, fully interactive course. The certificate carries modest professional weight; reviewers and comparison articles broadly agree the real value is the skill gained rather than the credential, which is considered less rigorous than exam-based alternatives such as DataCamp's. The one caveat is platform-level: Codecademy's subscription scores poorly on Trustpilot (around 2.4/5), with complaints typically about billing and the upsell pressure toward Pro rather than the quality of this specific course. Learners who only want the free content should be deliberate about not auto-upgrading.

Real-world use4.3 / 5

The skills taught — selecting, filtering, aggregating, and joining data — are exactly the day-one SQL competencies expected of analysts, developers, and data-adjacent roles, and the most common positive theme is immediacy. Learners describe being able to query data "the next day" and apply the syntax directly to work tasks within the same week. Codecademy positions the course as a building block of its Data Analyst Career Path, which adds Python, statistics, and visualisation around this SQL foundation. Because the course is purely query-focused, it transfers cleanly to any relational database a learner will encounter at work — the SELECT, JOIN, and GROUP BY patterns are standard across PostgreSQL, MySQL, and SQL Server. This makes it a reliable first rung whether the end goal is data analysis, backend development, or simply being literate when reading a colleague's query. The applicability ceiling is real-world database operations beyond querying. The course does not cover connecting to a production database, performance tuning, schema design, or the operational concerns of managing data at scale. One reviewer's analogy — that learning SQL here is like fencing against a hologram, with the theory but not the live feedback — captures the gap a learner must close with their own projects after finishing.

Hands-on practice4.6 / 5

This is the course's defining strength. Every concept is taught inside Codecademy's browser-based coding environment, so learners write and run real SQL from the first lesson rather than watching video. There is nothing to install, no local database to configure, and the integrated console returns results immediately — a setup that removes the single biggest friction point that derails self-taught beginners. The five projects reinforce this. Guided projects such as "Create a Table" and the "New York Restaurants" exercise walk learners through applied scenarios, while the "Analyze Hacker News Trends" project pushes them toward more independent query writing against a realistic dataset. Reviewers consistently describe the learn-by-doing format as a "game changer" for self-study and credit it with making concepts stick far better than passive material. The trade-off, raised by more experienced learners and one forum thread, is that the sandbox can feel too forgiving: exercises sometimes surface full solutions or accept answers without the friction of debugging against a real production database. The practice is excellent for building correct mental models, but it does not replicate the messy feedback of connecting to and querying a live system.

Teaching quality4.3 / 5

Codecademy's model is interactive text instruction with inline exercises rather than a single charismatic video instructor, so "teaching quality" here means the clarity of the written lessons, the helpfulness of hints, and the pacing of exercises. On the whole this lands well: reviewers describe the explanations as touching "the essential with just enough context" and praise the gradual ramp that lets total beginners feel they "learned months in a week." The visual explanations of joins and table transformations are the most praised teaching element, repeatedly called the clearest treatment of the topic learners had seen. The embedded quizzes and immediate feedback loop keep engagement high and confirm comprehension after each lesson. Criticism centres on inconsistency in the exercise scaffolding. A minority of reviewers and forum posts found certain instructions terse or the hints unhelpful, and some exercises were felt to be padded with formatting that made them longer than the underlying concept warranted. These are isolated rough edges in an otherwise smooth and beginner-respecting teaching flow.

Content quality4.5 / 5

The course stands apart from typical Docker tutorials by opening with a module called "Crafting Containers by Hand," where students manually implement chroot, Linux namespaces, and cgroups before Docker is introduced. This first-principles approach is the most-cited reason learners say the course made containers finally click, rather than just memorising Dockerfile syntax. The curriculum then progresses through Docker images, Dockerfiles, Node.js containerisation, layer caching strategies, Alpine Linux for smaller images, multi-stage builds, distroless containers, static asset optimisation, bind mounts, volumes, dev containers, Docker networking, Docker Compose, and a practical introduction to Kubernetes and Kompose. The open-source companion notes at btholt.github.io/complete-intro-to-containers are freely available under a Creative Commons licence, which allows learners to revisit content without re-watching videos. The course does cover the original version's content well; a v2 update on Frontend Masters addresses cgroups v2 changes and dependency freshness, so learners should verify which version they are accessing. Minor critiques include the relative brevity of the Kubernetes module, which is treated as a brief orientation rather than a deep dive, and the Node.js-heavy examples, which assume JavaScript familiarity even though the container concepts themselves are language-agnostic.

Instructor4.7 / 5

Brian Holt brings over a decade of engineering and product management experience across Netflix, LinkedIn, Reddit, Microsoft (VS Code team), Stripe, Snowflake/Streamlit, and Databricks, giving him genuine production-grade context for every concept he teaches. On Frontend Masters, he has authored more than a dozen "Complete Intro" courses, making him one of the platform's highest-volume and most-reviewed instructors. Learner feedback consistently uses the same descriptors across multiple courses and years: "excellent," "clear," "fun," "great teacher." His containers course specifically is praised for making systems-level Linux concepts approachable to web developers who have never opened a man page. Holt openly acknowledges when a topic is dense — he describes the course as "pretty dense with a lot of systems-level stuff thrown at you in a short time" — but frames each piece incrementally so the cognitive load stays manageable. His tendency to explain the why behind each tool (why cgroups exist, why Alpine saves hundreds of megabytes, why distroless containers matter in CI/CD pipelines) is cited by multiple reviewers as what separates this from documentation-style instruction. The only consistent criticism is that his pace can feel quick for learners coming from a pure frontend background with no prior Linux exposure, and those learners are advised to take his Complete Intro to Linux and the Command-Line first.

Value for money4.2 / 5

Access to the course requires a Frontend Masters subscription, priced at $39 per month or $390 per year (effectively $32.50 per month). The subscription model is the most common source of neutral and negative sentiment across the 38 opinions analysed, as it compares unfavourably to a one-time Udemy purchase for learners who only want a single course. The value calculation improves significantly if the learner is already subscribed for other Frontend Masters content or plans to take additional courses in the same month. Within that framing, reviewers consistently describe the subscription as worthwhile given the breadth and depth of the catalog. The course notes for Complete Intro to Containers are freely published on GitHub and btholt.github.io under a Creative Commons licence, which Holt explicitly designed so that financial barriers do not block access to the curriculum. Learners on a tight budget can follow the full written curriculum for free, losing only the video walkthroughs. Several blog posts note that this free-access policy, combined with the open-source code examples, makes the course more transparent than most paid offerings at a similar price point.

Projects4.3 / 5

Rather than a single end-to-end application, the course uses a progression of hands-on exercises that directly reinforce each module. Students begin by creating a containerised environment entirely from Linux primitives — chroot, unshare, cgroups — using command-line tools directly in the terminal. Subsequent exercises containerise a real Node.js application, iterating through progressively optimised Dockerfiles: first a basic image, then one with explicit layer ordering for faster rebuilds, then an Alpine-based version that is roughly 80% smaller than the Debian default, then a multi-stage build, then a distroless variant. The Docker Compose module adds a MongoDB service alongside the Node app, creating a practical multi-container scenario that mirrors real development setups. Pre-built Docker images are provided so that slow internet connections do not block workshop progress. Reviewers note the exercises feel production-relevant rather than toy examples, and the GitHub repository (945 stars, 181 forks) demonstrates ongoing community use. The Kubernetes exercises are more abbreviated — primarily using Kompose to convert a Compose file — and learners who want deep Kubernetes practice will need a dedicated course afterwards.

Real-world use4.6 / 5

Container knowledge has become a baseline expectation for full-stack and backend developers at most organisations that deploy to the cloud, and this course maps directly to the most common production patterns: writing Dockerfiles for Node.js services, reducing image sizes for faster CI/CD pipelines, using multi-stage builds to separate build and runtime environments, structuring multi-service applications with Docker Compose, and understanding how Kubernetes orchestrates containers at scale. The dev containers module is particularly relevant to modern team workflows, covering how to use containers to create reproducible development environments that eliminate "works on my machine" problems. Holt draws on his experience across Netflix, Reddit, and cloud infrastructure roles at Stripe and Databricks to ground each concept in how it is actually used in production. Multiple blog post reviewers describe going directly from the course to containerising services at work. The Kubernetes coverage is acknowledged as introductory rather than comprehensive, and learners moving into DevOps or platform engineering roles will need further study. For web developers adding Docker competency to an existing JavaScript skill set, however, this is the most practically oriented course in the Frontend Masters catalog.

Scoring methodology applies identically to every course on the site — see the formula.