Inspect algorithms and repair failures with explicit contracts and counterexamples.
Start with everyday situations, predict an outcome, and test your ideas. You need basic arithmetic, percentages and graph reading; explanations introduce additional ideas where needed. No coding or account is required. Every investigation has school, college and workplace extensions—you can choose any of them.
What you will learn
Implement a deterministic tool, inspect algorithmic work, connect records by identity, test failure cases and design bounded retries.
Before you begin
A variable names a value; an array is an ordered list indexed from zero.
A function accepts inputs and returns a value. The code workspace introduces conditions and loops with editable scaffolds.
The guided model remains usable without code; claiming implementation requires the learner’s runnable program, independent tests and explanation.
Before “Build and inspect”: variables hold values, functions return results and loops repeat steps; inspect the editable scaffold before running it.
Before “Connect and validate”: an array index is a position, an ID names an entity, and a test compares actual behavior with an independently specified expectation.
Before “Automate with explicit outcomes”: a request, an executed action and a received reply are separate events; losing one does not prove the others did not happen.
The original two-investigation starter remains available. Choosing the full course adds its published lessons to your selected scope; your earlier work stays saved. Skipping does not count as completion or understanding.
Free exploration: no completion scope selected yet. Project reports and independent evidence are tracked separately.
Course outline
Choose a unit, then open a lesson on its own page. This outline lists the sequence; it does not combine the full lessons into one page.
Build and inspect2 lessons
Implement a calculation and compare algorithms by a named work measure.
○ Not marked complete · Included · Practice check available
Lesson preview
Does changing calculation order preserve the contract?
An original synthetic invoice has base prices 10,20,30. The contract adds percentage tax to each base price, then an untaxed flat fee. Implement the rule in the linked code runner.
○ Not marked complete · Included · Practice check available
Lesson preview
When does dividing the search space save work?
Search an original synthetic sorted inventory of consecutive IDs. Each inspected item counts as one unit of algorithmic work; this is not elapsed computer time.
○ Not marked complete · Included · Practice check available
Lesson preview
Can all your tests pass while the rule is wrong?
A synthetic request system must approve quantities at or above a threshold. Choose an implementation and test cases. The controls select predefined rules; no source code is executed.
Write a small program that joins customer IDs to orders, calculates a contract-defined price and reports unmatched inputs. Add independent tests and a local retry simulation that never double-applies the same operation. Work only with invented records.
Save a report, compare captured evidence, and attempt three new cases. A completed report records submitted work; the rubric supports a separate human review of its quality.