By Chason ArthurRevision 104.027Published Updated

How-to / First result to independent work

Run it. Explain it. Extend it.

Start with the result you can see, then choose how far into the implementation you want to go.

Your first five minutes

  1. Open the playground and keep its default sample.
  2. Choose “A price sent as text.” Run it without safeguards, then with safeguards. Watch an invalid price become a clear validation message.
  3. Read the trace from top to bottom.
  4. Click View the code. Find the function that changed the outcome.
  5. Use Reset, then predict another result before clicking Run.
Open the independent environment

A 15-minute refresher

Run one failure and one safeguarded version. Read tutorial Steps 1–4. Write down the input, the violated rule, the decision that enforces it, and the remaining limit. Keep that four-part explanation beside the code.

Show the malformed input first. Explain why the assertion compiled, where validation belongs, how the union changes the interface, and why cancellation and response ordering are separate concerns.

A guided implementation session

Download and extract the matching source. Begin with GETTING_STARTED.md. The included preview serves the prebuilt browser application on your own computer. Follow the eight tutorial steps, then run the native checks. The public source viewer is read-only; local source files are yours to edit.

python preview.py
# Open the loopback address printed by the preview.
# Stop the preview with Ctrl+C.

Use the language-specific instructions below before rebuilding. Serve the application over HTTP; opening an HTML file directly does not provide the module and WebAssembly environment used by the preview.

# With Node 24 and pnpm available:
pnpm install --frozen-lockfile
pnpm run typecheck
pnpm run build
pnpm test

Read the exact setup instructions

Independent challenge

Make one new guarantee.

Add currency validation, a rejected state and a retry action. Keep the previous response from committing after a reset. Explain which invariants are enforced at compile time and which require runtime decisions.

Write the expected behavior before changing the implementation. Keep the original failure as a regression case. Explain the tradeoff you accepted and the result that would make you reconsider it.

Record an explanation another person can follow

  1. Show the failure before showing the code.
  2. Keep the same sample while switching the implementation.
  3. Read one decision from the trace, then show its source.
  4. State the invariant the change protects.
  5. End with the boundary the experiment has not tested.

The download includes a recording script, a test matrix and a revision record. Use captions and keep the code readable at the target viewing size.

Primary references and further reading

References support the language and runtime concepts. The lesson, scenarios and explanations are original Zyel Lab material.

Keep exploring

Follow the question you have next.

Build the safeguards

Eight explained steps, tradeoffs, pitfalls and a checkpoint before moving on.

Read the tutorial

Compare the choices

Choose a pattern and an environment for the problem you actually have.

Compare approaches