Skip to content

Python, JavaScript, TypeScript, Java, C++, C, C#, Go, PHP, Ruby, SQL, R and Bash & the Shell · Free · No account

Learn to code by writing, running and fixing real code

Most sites hand you a video and hope it sticks. Here you write code on the first screen, run it in your browser, and see something appear — a banner, a countdown, a receipt. Each exercise path takes you from your first line to a finished program, and nothing you write is ever sent to a server.

  • 130 free exercises across 13 languages
  • 24 graded practice problems
  • 43 in-depth lessons
  • 19 programming terms explained

Exercise 1: Hello, Out Loud

Python
print("========================")
print("  Hello, Sam!")
print("  Your code is running.")
print("========================")
Output
========================
  Hello, Sam!
  Your code is running.
========================

Runs in your browser

Pick a language and start

Each of these runs inside your own browser: Python on real CPython, compiled to WebAssembly; JavaScript on your browser's own JavaScript engine; TypeScript on the real TypeScript compiler, so types are genuinely checked; Java on the real OpenJDK javac, itself running as WebAssembly; C++ on a real clang toolchain, itself running as WebAssembly; C on the same clang toolchain, compiling C; C# on Roslyn compiling real C# to .NET IL, run by Mono's WebAssembly runtime; Go on yaegi, a real Go interpreter compiled to WebAssembly; PHP on real PHP 8, compiled to WebAssembly; Ruby on real CRuby, compiled to WebAssembly by the ruby.wasm project; SQL on real SQLite, compiled to WebAssembly; HTML & CSS on your browser's own rendering engine, in a locked-down preview frame; R on the real R interpreter, compiled to WebAssembly by webR; Bash & the Shell on a simulated shell that understands real bash syntax and coreutils. Try a small program in the playground to check its output and explore the runtime's supported features.

Python

Runs here

A general-purpose language for automation, web services, data analysis and AI applications.

  • 10-exercise path
  • 9 lessons
  • Playground
  • Cheat sheet
  • 24 graded problems

JavaScript

Runs here

Build interactive browser pages and server applications with runtimes such as Node.js.

  • 10-exercise path
  • 9 lessons
  • Playground
  • Cheat sheet
  • 3 graded problems

TypeScript

Runs here

JavaScript with a type checker that catches mistakes before the code runs.

  • 10-exercise path
  • 9 lessons
  • Playground
  • Cheat sheet

Java

Runs here

A strict, compiled language behind Android apps and much of enterprise software.

  • 10-exercise path
  • Playground

C++

Runs here

Fast, close to the hardware, and the language of games, engines and browsers.

  • 10-exercise path
  • Playground

C

Runs here

The small language operating systems are written in, and where memory is yours to manage.

  • 10-exercise path
  • 8 lessons
  • Playground
  • Cheat sheet

C#

Runs here

Microsoft's general-purpose language, used for Windows software, web backends and Unity games.

  • 10-exercise path
  • Playground

Go

Runs here

A simple compiled language built for servers, tools and cloud infrastructure.

  • 10-exercise path
  • Playground

PHP

Runs here

The server-side language behind a large share of the web, including WordPress.

  • 10-exercise path
  • Playground

Ruby

Runs here

An expressive language known for the Rails web framework and readable code.

  • 10-exercise path
  • Playground

SQL

Runs here

Query, combine and update relational data for applications, reporting and analysis.

  • 10-exercise path
  • 8 lessons
  • Playground
  • Cheat sheet

HTML & CSS

Live preview

Define a web page's structure, presentation and responsive layout.

  • Playground

R

Runs here

A language built for statistics and data analysis, with plotting and modelling at its core.

  • 10-exercise path
  • Playground

Bash & the Shell

Runs here

Automate command-line tasks with scripts, pipes and shell tools.

  • 10-exercise path
  • Playground

Start here

The free exercise paths

In order, each teaching one idea, each ending with something you can look at. No account, nothing to install. You can finish the first one in about a minute.

Beyond the first steps

Lessons, practice, tools and a place to experiment

Build

Projects, and a route through all of it

Exercises teach one idea at a time; a project makes you combine them. A roadmap puts both in order for the kind of work you want to do.

Beyond the code

Interview prep and the concepts behind it all

Writing code is one skill; explaining how the web, databases, and the systems around your code actually work is another — and it's what technical interviews spend most of their time on.

Choose by goal

What do you want to build with code?

The best first programming language depends on the work you want to do. Pick a goal below for a focused starting point, then use the exercises, online playground and practice problems together instead of collecting disconnected tutorials.

Language guides

Deciding what to learn next

Plain-English guides to the languages people most often ask about: what each one is for, a first program, how to run it on your own computer, a learning order, and the honest trade-offs. These languages do not run in the browser here yet — each guide says so, and shows the real way to run them locally.

How this works

Real code, running privately

Not a simulator

Python, JavaScript, TypeScript, Java, C++, C, C#, Go, PHP, Ruby, SQL, R and Bash & the Shell all execute real runtimes in a sandbox inside your own browser. The errors you see are the language's own, not paraphrased.

Your code stays on your device

There is no server-side execution at all. The sandbox's security policy blocks every request to any other website, and your progress lives in your browser's own storage. How the sandbox works.

Progress without an account

Finished exercises, solved problems and your daily streak are saved in this browser. Export them as a file to move to another one. See your progress.

Questions people ask before starting

Is this really running code, or a simulated console?
Real code. Python runs on CPython compiled to WebAssembly, JavaScript on your browser's own engine, TypeScript through the real TypeScript compiler, Java through the real OpenJDK javac, C++ and C through a real clang toolchain, C# through Roslyn and Mono's WebAssembly runtime, Go through the yaegi interpreter, Ruby through CRuby, PHP through php-wasm, R through webR, Bash through a simulated shell, and SQL on real SQLite — all inside a sandbox in your browser. HTML and CSS are rendered by your browser itself, in a locked-down preview. Each language page records its runtime version and verification date; the security page explains execution limits.
Does my code get sent to a server?
No. There is no server-side code execution on this site at all. Everything runs locally in your browser, in a sandbox whose browser-enforced security policy blocks requests to any other website. Your progress is saved in your browser's own storage and never uploaded.
Do I need an account to use the coding exercises?
No account exists to create. Every exercise, lesson, playground and practice problem is free, and your finished exercises, solved problems and streak are stored in this browser only. The progress page lets you export them as a file and import them elsewhere.
Which languages can I run here right now?
Thirteen languages run in the browser — Python, JavaScript, TypeScript, Java, C++, C, C#, Go, PHP, Ruby, R, SQL and Bash — and HTML and CSS have a live preview. Twelve of those have a free exercise path and a practice hub already (C# is next), and every one of them has a playground. The other language pages — Rust, Kotlin, Swift and Dart — are written guides with a first program and instructions for running the language on your own computer, and each says plainly that it does not run here.
How are the practice problems graded?
Your program is executed in your browser against sample tests and additional checks, then its printed output is compared with the expected output. Your source code is never compared as text, so different correct approaches can pass. Because grading is browser-based, these checks are useful practice rather than a secure certification exam.
Which programming language should a complete beginner learn first?
Python is a friendly general starting point because its basic syntax is compact and it is useful in automation, data and AI. Choose HTML and CSS first if your immediate goal is making web pages, or JavaScript if you want to add behaviour to websites. The right first language is the one connected to something you want to build, and you can try each one here before deciding.
Can I learn coding for free without installing software?
Yes. The runnable language pages combine a beginner tutorial, small exercises, an online playground and practice links. The code executes in your browser, so you can begin without installing an editor or compiler. When you are ready to build larger projects, each language guide also explains how to set up the real tools on your own computer.

Also on SkillAIVibe

The other half of this site teaches AI in plain English. If you want to understand the tools you will be coding alongside, the AI courses, the Agentic AI hub and the Cursor vs GitHub Copilot comparison are written for exactly that. The glossary now covers programming terms as well as AI ones.