Hone

Lessons

Every lesson on Hone, in teaching order

701 short lessons across nine tracks. Each one is an idea in plain words, what it is for, how to think about it, a worked example that runs, and the trap.

Hone is a place to practise programming: you answer questions, solve problems, and it remembers what you got wrong so it can ask you again later. These are the written explanations behind that, free to read on their own. A track is one subject, like Python or the command line. A topic is one idea inside it.

Python 102 lessons

Python quick reference: every topic on one page, one line each.

Your first code · Values and names

Your first code · Doing things

Your first code · Numbers that behave

Your first code · Lists of things

Your first code · Deciding and repeating

Your first code · Looking things up

Your first code · Objects that remember

Read code you did not write · Which is which

Read code you did not write · The traps

Read code you did not write · What it costs

Read code you did not write · Say why

Read code you did not write · Prove it works

Job-ready fundamentals · Reach for the right structure

Job-ready fundamentals · The classics

Job-ready fundamentals · Say it in the interview

Keep the edge · Deep water

Keep the edge · Money and time

Keep the edge · Data at scale

Data structures and algorithms · Things in a line

Data structures and algorithms · Things in a grid

Data structures and algorithms · Things in a tree

Data structures and algorithms · Things in an order

Data structures and algorithms · Things joined to things

More

JavaScript 75 lessons

JavaScript quick reference: every topic on one page, one line each.

Data structures and algorithms · Things in a line

Data structures and algorithms · Things in a grid

Data structures and algorithms · Things in a tree

Data structures and algorithms · Things in an order

Data structures and algorithms · Things joined to things

JavaScript for the web · Values

JavaScript for the web · Arrays

JavaScript for the web · Truth and equality

JavaScript for the web · Functions and scope

JavaScript for the web · Async

JavaScript for the web · Objects and classes

JavaScript for the web · Prove it works

More

TypeScript 107 lessons

TypeScript quick reference: every topic on one page, one line each.

Data structures and algorithms · Things in a line

Data structures and algorithms · Things in a grid

Data structures and algorithms · Things in a tree

Data structures and algorithms · Things in an order

Data structures and algorithms · Things joined to things

TypeScript, properly · Why types

TypeScript, properly · Shapes

TypeScript, properly · Narrowing

TypeScript, properly · Generics and beyond

TypeScript, properly · Classes and interfaces

TypeScript, properly · Prove it works

More

SQL 52 lessons

SQL quick reference: every topic on one page, one line each.

Queries that hold up · It ran, and it lied

Queries that hold up · Filter at the right moment

Queries that hold up · A question inside a question

Queries that hold up · One row per thing, and what it costs

Queries that hold up · Changing data without regret

SQL for the workplace · Ask a question

SQL for the workplace · Count and sum

SQL for the workplace · Join the tables

SQL for the workplace · Nothing is something

SQL for the workplace · The real reports

More

Regex 52 lessons

Regex quick reference: every topic on one page, one line each.

Regex that reads · Literal to pattern

Regex that reads · How many

Regex that reads · Where

Regex that reads · The sharp edges

The pattern that is right about your data · Which call, and what it hands back

The pattern that is right about your data · Change the text, not just find it

The pattern that is right about your data · A flag changes the whole meaning

The pattern that is right about your data · The data is not ASCII

The pattern that is right about your data · Fast, or hanging

The pattern that is right about your data · When not to reach for one

The pattern that is right about your data · Prove the pattern

More

Git 62 lessons

Git quick reference: every topic on one page, one line each. Run these for real: a repository in this page that you cannot break.

Git without fear · The three areas

Git without fear · The daily rhythm

Git without fear · Branches and merges

Git without fear · Working with others

Git without fear · Undo, safely

When git goes wrong · Before you type anything

When git goes wrong · Work you have not committed

When git goes wrong · Work you have committed

When git goes wrong · The history moved under you

When git goes wrong · A merge that stopped half way

When git goes wrong · So the next one is smaller

Terminal 52 lessons

Terminal quick reference: every topic on one page, one line each. Run these for real: a terminal in this page that you cannot break.

The terminal, without fear · Where am I

The terminal, without fear · Files and folders

The terminal, without fear · Look inside

The terminal, without fear · Plumbing

The terminal, without fear · Make it yours

Get the answer out of the file · What a pipe really is

Get the answer out of the file · Find the lines you want

Get the answer out of the file · Take the column you need

Get the answer out of the file · Put it in an order that means something

Get the answer out of the file · Count what repeats

Get the answer out of the file · When the answer looks wrong

Get the answer out of the file · On a file too big to open

HTML and CSS 54 lessons

HTML and CSS quick reference: every topic on one page, one line each.

Your first web page · The page

Your first web page · More than text

Your first web page · Give it style

Your first web page · The box

Your first web page · Layout that holds

The page everyone can use · Who cannot use this page

The page everyone can use · The label that is not attached

The page everyone can use · The button that is a div

The page everyone can use · Where the focus went

The page everyone can use · Colour you can actually read

The page everyone can use · Pictures, and what they are for

The page everyone can use · The shape of the page

Industrial control 54 lessons

Industrial control quick reference: every topic on one page, one line each.

Ladder logic from zero · What a PLC is

Ladder logic from zero · Contacts and coils

Ladder logic from zero · Hold and time

Ladder logic from zero · Do no harm

Why the machine stopped · Before you touch anything

Why the machine stopped · The coil written twice

Why the machine stopped · Rung order

Why the machine stopped · The seal-in

Why the machine stopped · Latches that stick

Why the machine stopped · Timers that never finish

Why the machine stopped · The contact that must be normally closed

More

Network switches 91 lessons

Network switches quick reference: every topic on one page, one line each. Run these for real: a terminal in this page that you cannot break.

Run a switch, start to finish · Get to the prompt

Run a switch, start to finish · Make the switch yours

Run a switch, start to finish · Split it into VLANs

Run a switch, start to finish · Reach it over the network

Run a switch, start to finish · Carry VLANs between switches

Run a switch, start to finish · Keep it up and keep it safe

Run a switch, start to finish · Look after the software

Run a switch, start to finish · On the plant floor

Replace a switch without breaking anything · Before the box comes out

Replace a switch without breaking anything · What a backup does and does not carry

Replace a switch without breaking anything · Putting it on the new one

Replace a switch without breaking anything · Proving it works

Replace a switch without breaking anything · In a corporate closet

Replace a switch without breaking anything · Remembering any of it

More