Every course runs in your browser. Write code from the first lesson, run it instantly, and earn a certificate when you finish. Free to start, no setup.
Pick a language or a skill and dive in. Filter by level, or search by name.
Go past useState: refs, reducers, context, effects, data fetching, and your own custom hooks.
Handle time and the network: promises, async and await, JSON, fetch, and requests that fail.
Run concurrent work in Python with asyncio: coroutines, tasks, queues, timeouts, and cancellation.
Style real pages with CSS: selectors, the cascade, color, the box model, backgrounds, and typography.
Lay out real pages with flexbox, CSS grid, positioning, and responsive design that works on any screen.
Data structures and algorithms in JavaScript: Big O, stacks, queues, linked lists, searching, and sorting.
Build a server with Express: routes, route parameters, middleware, responses, and error handling.
Build a real web app with Flask: routes, templates, forms, JSON, and a database behind it.
Git from zero: commit, branch, merge, undo, and tag real repositories in a live terminal.
Write real web pages by hand: document structure, text, links, lists, images, semantic HTML, and forms.
Level up your JavaScript: arrow functions, array methods, destructuring, spread, classes, and errors.
Start programming for real: variables, strings, decisions, arrays, loops, functions, and objects.
Make pages react: select elements, handle events, read input, and build the page from your data.
Write JavaScript on the server: modules, the event loop, callbacks, events, config, and errors.
Write object-oriented Python: classes, inheritance, properties, special methods, and dataclasses.
Write real Python in your browser: variables, strings, conditionals, loops, lists, and functions.
Model real data with Python lists, tuples, dictionaries, sets, and comprehensions.
Store and query real data from Python with sqlite3 and the SQLAlchemy ORM, safely.
Handle errors and work with real files in Python: text, CSV, JSON, paths, and regular expressions.
Go deeper into Python functions: arguments, scope, lambdas, decorators, generators, and modules.
Test Python properly with pytest, unittest, doctest, and type hints, and the tooling jobs expect.
Design and build a REST API: resources, verbs, status codes, validation, paging, and real errors.
Build interfaces from components: JSX, props, state, lists, and forms, rendered live as you type.
Query real data with SQL: SELECT, filtering, sorting, joins, grouping, and the tables behind every app.
Programs bundle these courses into an ordered sequence from zero to job-ready, and add a certificate for finishing the whole thing.
Every course is free to start, and some are free from start to finish. Create an account and begin, no credit card needed. Each course says which it is on its card and on its own page, so you always know before you start.
Yes. Finishing all of a course's lessons, practices, quizzes, and projects earns a certificate of completion with a public verification link you can share on LinkedIn or your CV.
A course teaches one skill, like JavaScript or SQL. A program is an ordered path of courses toward a bigger goal, like frontend development. Follow one and it tells you what to learn next.
Pick any beginner course. HTML and Python are classic first choices. Or follow a program and let it order things for you. Every course starts from zero, and you write real code in the first lesson.
Yes. Everything runs in the browser, including the code editor, and the site works on any screen size. For longer practice sessions a keyboard is more comfortable.
Free to start, no credit card required. Write real code in the browser from your very first lesson.
Start Learning Free