Why this lesson exists
A large share of the people reading this are on a laptop with 8 or 16 GB of RAM, in a country where a monthly subscription in US dollars is a real decision, possibly on metered internet. The advice in the rest of this course must be available to them or it is not advice, it is marketing.
Everything below is free, runs locally, and is good enough for most of the work.
The stack
1. The oracles, which cost nothing and matter most.
# Python
pip install ruff mypy pytest hypothesis mutmut
# JavaScript / TypeScript
npm i -D typescript eslint vitest fast-check @stryker-mutator/coreStart here, not with the model. A strict type checker, a linter, a fast test runner and a property-testing library are the machinery that lets you trust output you did not write. A team with these and no model is in a better position than a team with an expensive model and none of them. That ordering is the single most important claim in this lesson.
2. The model, running on your own machine.
curl -fsSL https://ollama.com/install.sh | sh
ollama pull qwen2.5-coder:7b # ~4.7 GB download, ~6 GB RAM to run
ollama run qwen2.5-coder:7bOn a laptop with 16 GB and no GPU this produces roughly conversational speed: usable for completion, explanation, small functions and format translation. On 8 GB, use a 3B model instead and expect noticeably less. With any GPU it is several times faster.
Specific model names date fast. The families that have consistently had good small coding models are Qwen’s coder line, DeepSeek’s coder line, Mistral’s Codestral, and the StarCoder lineage. Check what is current rather than trusting this paragraph.
3. The editor integration.
Continue is a free, open-source extension for VS Code and JetBrains editors that talks to a local Ollama model. Aider is a free command-line tool that edits files in a git repository and commits each change, which fits the small-steps discipline exactly. Both are open source and neither requires an account.
pip install aider-chat
aider --model ollama/qwen2.5-coder:7b billing/fx.py4. Version control, which you already have. Git, git add -p, git bisect, git worktree. The safety net that makes the rest of it survivable.
5. A pipeline. GitHub Actions, GitLab CI and Forgejo Actions all have free tiers for public repositories and modest private use. A pipeline that runs the type checker and the tests on every push costs nothing and is the gate everything else depends on.
What you should expect
Good enough: completion, boilerplate, tests scaffolding, format conversion, explaining unfamiliar code, small self-contained functions, shell and SQL, regular expressions, commit messages, documentation drafts.
Noticeably worse than a hosted frontier model: reasoning across many files at once, long multi-step tasks, subtle semantics, noticing that your repository already has the helper it is writing, and anything needing a large amount of context held at once.
Compare that second list against the task taxonomy from the first module. It is close to the same list as work you should be doing yourself. That alignment is convenient and it is not a coincidence: the tasks where a small model falls short are the tasks where verification is expensive, which are the tasks where generation was never the bottleneck.
The other advantages, which are not consolation
Privacy. The code never leaves the machine. For a contractor under a client agreement, an employee at a firm with a strict policy, a student working on someone else’s data, or anyone in a regulated setting, this is not a lesser option: it is the only compliant one.
No network dependency. It works on a train, on bad internet, during an outage.
No per-token anxiety. You will experiment more freely when each attempt does not cost money, and experimenting freely is how the useful habits get built.
Stability. Your local model does not change under you on a Tuesday. A workflow tuned against a hosted model that gets updated can behave differently overnight, and that is a real and underdiscussed cost.
Where to spend money first, if you ever have some
In this order, and the order matters:
- More RAM, if you have less than 16 GB. It improves everything you do, not just this.
- A hosted model for the hard tasks only, used deliberately, with the local one for everything routine. Metered access for a few sessions a month is a small amount of money.
- Faster CI, if your pipeline is slow enough that people route around it.
A subscription is nowhere near the top of that list, and anyone telling you otherwise is selling one.
Every lesson here is open. Your progress is recorded once you pass the AI at Work exam.
Check your understanding
A developer with no budget asks what to set up first to get value safely from generated code. What ordering does this lesson argue for, and why?
Pick the one you would defend. Your answer stays private.
Stuck on something?Ask Larissa, your AI tutor
