COGNITION FOUNDRYLEARN. BUILD. UNDERSTAND.
A DIFFERENT KIND OF COMPUTING LIBRARY

Understand code.
Make useful things.

Learn Python in small, connected steps. Read an explanation, change real code, run it in your browser, and carry the useful bits into your own projects.

01 / PYTHON FIRST◈ EDITABLE EXAMPLES◈ NO ACCOUNT NEEDED
learning / python / first_program.pyPY
# Change one thing. See what happens.
name = "World"
print(f"Hello, {name}!")
OUTPUTHello, World!
Real Python examples. No trick buttons.
HOW IT WORKS

Read it. Run it. Change it.

Every stage teaches the idea first, then lets you experiment without locking you into our examples.

01
◎

Understand

Original explanations, careful examples and common mistakes — written for actual understanding.

02
{ }

Experiment

A genuine editable Python editor, clear output and challenges that reward changing the code.

03
↗

Take it with you

Copy your own code. Later, turn the knowledge into practical tools and applications.

YOUR FIRST JOURNEY

Python, from the first instruction.

See the whole sequence
01Meet PythonUnderstand what Python executes, how scripts differ from the interactive prompt, and why a browser playground has limits.02Output and expressionsFind out what expressions are and why a calculation does not automatically print inside a script.03Values and typesMeet text, whole numbers, decimal numbers and booleans, and inspect their types with `type()`.04Variables and namesStore values with assignment, choose readable names and update them without confusing = with comparison.05Strings and textCreate strings, format readable messages and learn why quotation marks and backslashes matter.06Numbers and calculationsWork with arithmetic, division, rounding and the important limits of floating-point numbers.07Comparisons and boolean logicCompare values, combine conditions and understand why Python treats some values as true or false.08Conditions and branchesUse if, elif and else to choose actions, and understand indentation and mutually exclusive branches.09For loops and rangeRepeat operations with for, iterate over strings and use range without off-by-one surprises.10While loops and loop controlUse while, break and continue responsibly, and guard against accidentally endless loops.11Lists and indexesCreate and modify lists, read elements by index and loop over collections without going out of range.12Dictionaries and keyed dataStore related facts using dictionary keys, retrieve values safely and iterate through records.13Writing your first functionsUse def to group a repeatable task, call it deliberately, and keep repeated code in one place.14Parameters and argumentsPass data into functions using parameters, arguments, keyword calls and sensible defaults.15Return values and compositionLearn why returning values differs from printing, and combine smaller functions into reusable calculations.16Scope and predictable functionsUnderstand function-local variables, global names, shadowing and why explicit inputs avoid surprising state.17Validation and exceptionsRecognise error types, convert input with try/except and reject invalid values with useful messages.18Modules, imports and first testsImport standard-library modules, write basic assertions and understand how two .py files work together locally.19Cleaning and normalising textTrim unwanted whitespace, compare text reliably and keep meaningful characters intact.20Finding, splitting and replacing textLocate text, split fields, replace known content and preserve everything else.21Quotes, backslashes and Python literalsUnderstand path quotes, escaped backslashes, raw strings and safe boundary quote removal.22Accepting and validating inputBuild user-input checks and learn how terminal input differs from browser demonstration code.23Paths with pathlibExplore path names, suffixes, parents and joins without touching the local filesystem.24Practice with string functionsCombine cleaning, targeted replacement, checks and small functions through editable Python practice.
Only the beginning. This is an expanding, verified Python curriculum — not a claim that learning is finished.
BUILT TO BE PRACTICAL

A growing knowledge base,
not a pile of disconnected pages.

Educational foundations first. Useful browser tools next. Desktop applications when the job deserves one.

Start with Python