Learn to code, one clear lesson at a time.

Free tutorials and structured courses for HTML, CSS, PHP, WordPress and more. Start reading now. No sign-up.

  • 221 lessons
  • 8 courses
  • 8 quizzes
  • Free, no account needed

Your path from first line to production

All courses

Every course in the order they build on each other. Start at 01, or join wherever your skills are.

  1. Web development

  2. Back end

How learning works here

read()

Short lessons you can finish

Most lessons take under 15 minutes. Each one teaches a single idea with code you can copy and run.

build()

Courses that build one project

Modules follow a running example, so every lesson adds to what you made in the one before.

test()

Quizzes that explain the answer

Check yourself at the end of each course. Every answer tells you why it is right or wrong.

Latest tutorials

All tutorials
  • Object-oriented plugin architecture

    Reorganise the events plugin into namespaced classes with one job each, a small bootstrap file and predictable hook registration.

    • Intermediate
    • 15 min read
  • Composer and autoloading in plugins

    Replace the hand-written autoloader with Composer's PSR-4 autoloader, add libraries safely and ship a build that cannot clash with other plugins.

    • Intermediate
    • 9 min read
  • Automated tests for plugins

    Scaffold the WordPress PHPUnit test suite for the plugin, write integration tests for the bookings repository and REST route, and run them on every…

    • Intermediate
    • 9 min read
  • Coding standards with PHPCS and WPCS

    Install PHP_CodeSniffer with the WordPress Coding Standards, configure it for the events plugin's prefix and text domain, and fix issues automatically.

    • Intermediate
    • 8 min read

Practise what you learned

All quizzes

Start with HTML. Everything else builds on it.

All you need is a browser and a text editor. No account, no install, no cost.