print("Hello, World!")
fn main() { println!("Safe!"); }
console.log("Hello!");
fmt.Println("Simple.")
System.out.println("...");
<h1>Hello!</h1>
32 languages & topics · Free forever · No account needed

Learn to code.
Actually learn it.

Real lessons. Real code. Real explanations. No paywalls, no "premium" gating, no pseudocode that doesn't compile. Just you and 32languages & topics.

Browse Languages →Pick an Editor
scroll

Choose your weapon

32 languages, frameworks & CS topics, all free, sorted by where most people start.

Py
Beginner

Python

Life is short. Use Python.

14 lessonsStart
JS
Beginner

JavaScript

The language that runs the web. Whether you like it or not.

14 lessonsStart
TS
Intermediate

TypeScript

JavaScript that scales.

10 lessonsStart
Re
Intermediate

React

A JavaScript library for building user interfaces.

8 lessonsStart
Vu
Intermediate

Vue

The Progressive JavaScript Framework.

7 lessonsStart
No
Intermediate

Node.js

JavaScript, but on the server.

7 lessonsStart
HTML
Beginner

HTML

It's not a programming language and we don't want to hear about it.

8 lessonsStart
CSS
Beginner

CSS

It's not a programming language. (It's not a programming language.) We'll keep saying it.

9 lessonsStart
Tw
Beginner

Tailwind CSS

A utility-first CSS framework for rapid UI development.

8 lessonsStart
Vi
Intermediate

Vite

Next generation frontend tooling.

6 lessonsStart
SQ
Beginner

SQL

The language every database speaks.

8 lessonsStart
Ph
Beginner

PHP

The language that runs most of the web.

8 lessonsStart
Go
Intermediate

Go

Simple by design. Boring on purpose. Runs on everything.

8 lessonsStart
Rs
Advanced

Rust

Memory safe. Blazingly fast. Compiler as therapist.

8 lessonsStart
Ja
Intermediate

Java

Write once, run anywhere. Debug everywhere.

9 lessonsStart
Kt
Intermediate

Kotlin

Android's language of choice — Java without the boilerplate.

8 lessonsStart
Sw
Intermediate

Swift

The language of iPhone, iPad, Mac & Vision Pro apps.

8 lessonsStart
C#
Intermediate

C#

Java, but Microsoft-flavored. Honestly, quite good.

9 lessonsStart
C++
Advanced

C++

C, but with more ways to shoot yourself in the foot. And classes.

9 lessonsStart
C
Intermediate

C

You have the power of the gods. Use it wisely. We believe in you. Mostly.

8 lessonsStart
Lu
Beginner

Lua

Tiny language, giant reach — games, mods, embedded everywhere.

8 lessonsStart
Gt
Beginner

Git

Version control. Undo for your entire project.

8 lessonsStart
Sh
Beginner

Bash

Your terminal's native tongue. Learn it and become one with the shell.

8 lessonsStart
PS
Beginner

PowerShell

Bash for Windows. Except it's also on Linux now. And it's object-oriented. Long story.

8 lessonsStart
>_
Beginner

How the Terminal Works

The text interface behind every developer tool.

7 lessonsStart
Rb
Beginner

Ruby

A programmer's best friend.

11 lessonsStart
DS
Intermediate

Data Structures & Algorithms

The patterns behind every fast program.

9 lessonsStart
IN
Beginner

How the Internet Works

From typing a URL to pixels on screen.

7 lessonsStart
CA
Advanced

Computer Architecture

What actually happens when code runs.

7 lessonsStart
OS
Advanced

Operating Systems

The program that runs all your programs.

7 lessonsStart
Cc
Advanced

Compilers

How text becomes a running program.

7 lessonsStart
As
Advanced

Assembly

The last language between you and the hardware.

10 lessonsStart
$ which editor

Not sure which editor to use?

We compared VS Code, Neovim, Emacs, and more — with actual opinions, not marketing copy. (Spoiler: we do have a favorite. Several, actually.)

View Editor Guide →