Last updated 2026-09-20
What each course teaches
Fulfledge has several courses, from how programming thinks through to databases, the command line and Git. This guide covers what each one teaches and a good order to take them in.
The big picture
The Fulfledge courses are lined up so that working through them from the top adds one piece of web-development skill at a time. The goal is to be able to build a portfolio of your own that you can show when job hunting.
Courses come in two kinds: the main route and side trips. Main-route courses build on what the previous course taught. Side trips are not required — skip them and move on, or come back to them later.
Here are the courses available right now, and how much each one contains.
| Course | Size |
|---|---|
| JavaScript Build the way of thinking that programming runs on | 12 chapters · 96 lessons · 1239 questions |
| Python Learn how programming thinks, with fewer symbols in the way | 12 chapters · 107 lessons · 1376 questions |
| TypeScript Add types to JavaScript and catch mistakes before you run anything | 9 chapters · 37 lessons · 481 questions |
| HTML & CSS Build what a web page looks like | 4 chapters · 63 lessons · 805 questions |
| Build a to-do app Bring HTML, CSS and JavaScript together into your first working app | 3 chapters · 11 lessons · 11 questions |
| SQL Get data in and out of a database | 5 chapters · 52 lessons · 648 questions |
| How computers work Check what is happening underneath your code, using past exam questions | 10 chapters · 21 lessons · 273 questions |
| How web apps work Read what actually travels between the browser and the server | 1 chapters · 3 lessons · 39 questions |
| The command line Type into a real Linux running inside your browser and learn where files live | 13 chapters · 77 lessons · 998 questions |
| Git Commit your changes so you can always go back. Create branches, share them on remote repositories, and get reviewed through pull requests. | 9 chapters · 9 lessons · 117 questions |
How programming thinks: JavaScript / Python
The first thing to learn is how programming thinks — ideas shared by every language. Pick either JavaScript or Python. There is no need to do both.
Either course builds the same skills:
- Put values in variables and work with them by name
- Split work depending on a condition (if statements)
- Repeat the same work (for and while loops)
- Hold many values together (arrays / lists, objects / dictionaries)
- Give a chunk of work a name and reuse it (functions)
- Create many pieces of data with the same shape (classes)
- Read errors, and prepare for them
JavaScript is closely tied to web development and leads straight into HTML & CSS and the to-do app project. Python has less punctuation and reads easily, which makes it easier to focus purely on the ideas. Its later chapters go on to Python-specific ways of writing, such as reading and writing files and comprehensions.
Writing with types: TypeScript
TypeScript is JavaScript with types added. Write down "this variable only holds numbers" or "this function returns a string", and it tells you when something is used wrongly — before the program even runs.
It is a side trip that follows on from the JavaScript course. It starts with adding types, then covers describing the shape of objects, union types and narrowing, typing classes, and a first look at generics. Later chapters cover typing the results of asynchronous code and the data you receive from an API, and designing a screen's four states — loading, empty, error and success — with types.
In this course, if a type error remains, the answer is wrong even when the output matches. That is how you learn the value of types by feel.
Web pages and apps: HTML & CSS, the to-do app
HTML & CSS is where you build what a web page looks like. HTML lays out a page's structure — headings, paragraphs, links, images, forms — and CSS sets colors, sizes, spacing and placement. Later on it covers responsive design, which switches the layout between phones and computers, and arranging things with Flexbox. Whatever you write appears in a live preview straight away.
The to-do app project brings together the HTML, CSS and JavaScript you have learned so far into a to-do list app. In this course, each lesson is one step of the build, starting from the finished result of the one before. Adding what you type to a list, removing finished items, rejecting empty input, working on many rows at once — you add the pieces a real app needs one at a time.
The finished app can be exported as files onto your own device. That is your first step outside the app.
Working with data: SQL
SQL is the language for getting data out of a database and changing it. Almost every web app has a database behind it. User details, product listings, published posts — all of it is stored in a database.
This course starts with pulling data out of a table and narrowing it down by condition, then moves on to sorting, aggregating (sums, averages and counts), joining several tables together, and finally adding, updating and deleting data. Along the way there is also a chapter that analyzes something close to real-world data.
The SQL you write runs against a real database inside your browser.
Understanding how things work: computer fundamentals, how web apps work
These two are side trips where you build knowledge rather than write code.
How computers work covers what is happening underneath your code: networks, security, databases, algorithms, operating systems and more. Its questions come from past papers of Japan's national Fundamental Information Technology Engineer Examination, used with their sources clearly cited. Every explanation is written from scratch.
How web apps work unpacks what actually travels between the browser and the server. You come away knowing what happens behind the scenes when you open a page, press a button, or receive data.
Developer tools: the command line, Git
The command line teaches you to operate a computer by typing commands. In this course a real Linux boots inside your browser, and you type actual commands into it. It goes from creating, moving and deleting files, through searching their contents and chaining commands to reshape text, to managing permissions and writing shell scripts. It is an essential skill for working with servers on the job.
Git teaches you to record changes to your code so you can always go back to an earlier state. From commits that record changes, branches that separate work, and remotes for sharing with others, through to pull requests for review, you get hands-on with the whole flow of developing as a team.
Where to start
If you are learning to program for the first time, start with JavaScript or Python. If you cannot decide, JavaScript is the recommendation for anyone who wants to head into web development.
After that, this order builds your skills without strain:
- JavaScript or Python (how programming thinks)
- HTML & CSS (building how things look)
- The to-do app (combining them into an app that works)
- SQL (working with data)
- The command line and Git (using developer tools)
Take side trips into TypeScript, computer fundamentals, and how web apps work as your interest and time allow.
If you have already learned another language, or only want to study a particular area, feel free to start from any course. Where a course expects you to finish another one first, its contents page says so.