About Fulfledge

A learning app built to make one thing normal: you can start programming without a computer.

What we are aiming at

The wall you hit when you start programming is usually not the syntax. It is getting a development environment ready, and finding a solid block of time at a desk. We have watched a lot of people lose their "I want to try this" while waiting for those two things to line up.

Fulfledge asks for neither of them. Nothing to install and nothing to set up — open the browser on your phone and you can write code and run it right away. Ten minutes on the train, five minutes before bed: those scraps of time become your study time.

How you learn

A lesson does not stop at reading. You take in one idea from a few short slides, then write the code yourself straight away. What you write runs on the spot, and if you got it wrong, the error shows up as it is.

  • Input — A few slides, and just one idea in them
  • Output 1 — Basic exercises where you trace the syntax
  • Output 2 — Practice exercises where you work it out yourself

We show error messages exactly as the browser produced them, without rewording them. Those are the messages you will meet in real development, so we would rather you got used to reading them early.

What you can learn right now

Right now there are 8 courses, 355 lessons and 4561 exercises.

  • JavaScript — Build the way of thinking that programming runs on
  • Python — Learn how programming thinks, with fewer symbols in the way
  • TypeScript — Add types to JavaScript and catch mistakes before you run anything
  • HTML & CSS — Build what a web page looks like
  • SQL — Get data in and out of a database
  • How computers work — Check what is happening underneath your code, using past exam questions
  • How web apps work — Read what actually travels between the browser and the server
  • The command line — Type into a real Linux running inside your browser and learn where files live

There is also a Playground, where nothing gets marked. It is the place to try out the syntax you picked up in a lesson, or to cause an error on purpose and get used to reading it.

Your learning path

The goal is for you to be able to build, with your own hands, a portfolio you can show when you apply for jobs. Here is the order we are laying that path out in.

  • Pick up the way programming thinks, with JavaScript or Python
  • Learn to write with types, in TypeScript (Optional challenge)
  • Learn how to build the look of a page, with HTML and CSS
  • Build a to-do app on your own computer
  • Learn how to handle data, with SQL
  • Back up your IT fundamentals with past questions from Japan's IT fundamentals exam (Optional challenge)
  • Put a database into the to-do app, and get to know server and client
  • Learn to handle files and permissions on Linux, from the command line
  • Learn to record changes and work with others, with Git
  • Use a framework to finish your portfolio

The units marked "Optional challenge" are not required. Skip ahead, or come back to them later — either is fine. TypeScript is one you will want to have been through before you reach frameworks, because the JavaScript people write at work is effectively TypeScript now.

The first half stays inside the app. The second half moves over to building things on your own computer. Fulfledge is the way in, not the place you stop.

What matters to us

  • More time writing than reading — Rather than add more explanation, we add more chances to move your hands.
  • One idea per lesson — We cut things small enough that you can tell for yourself whether you got it.
  • Mistakes are material too — We show errors and wrong answers instead of hiding them, and use hints to get you to where you can solve it yourself.
  • The phone comes first — Every screen and every action is designed around a phone held upright.
  • Everything here is written from scratch — Neither the text nor the code examples are copied from anyone else's material.

Who runs this

Site owner
Fulfledge
Contact
[email protected]
Online since
2026

For thoughts or bug reports, use the contact page. How personal information is handled is written up in the privacy policy.