Effective Vibe Coding for Beginners
About This Course
Vibe coding means describing what you want in plain language and steering an agent, rather than writing every line yourself. Vibe coding is fast, but the result is only as good as your steering. This one-day workshop teaches you how to get a coding agent to build the thing you actually wanted, and how to tell whether it did.
Across the day you work with OpenAI's Codex agent to build a small Streamlit application from scratch. The workshop teaches a deliberate order of work. You start with a written spec rather than a prompt. You plan the core logic before the interface, so the logic can be tested without the app running, and you take the smallest useful step at a time. Bring your own data and you can run the exercises against it instead.
An agent predicts plausible code, not correct code.
Agents invent function names, flags and library behaviour, and state them confidently.
Code that runs without errors is not evidence that it works.
You practise recovering a project with git after a session goes wrong,
and you set sandbox and approval limits before you need them.
You also consider what leaves your environment when a task runs in the cloud rather than locally.
The aim is competent prototypes, not production systems. Most of the day goes on deciding whether a prototype is worth keeping, by reading what the agent gave you and proving it does what you asked. You finish with a written review checklist, a set of project rules, and habits that transfer directly to Claude Code, OpenCode, Aider and whatever replaces them.
Who This Course Is For
Researchers, analysts, engineers and other technical professionals who are not full-time software developers, but need to build small applications, scripts and reports for their work. The course suits people who have had an agent produce something that ran without errors, and had no way of telling whether it was right. The course also suits developers who are new to agentic coding tools and want a workflow rather than trial and error.
The room is mixed by design, so the course works for a team whose coding experience varies. Every session has a core path everyone follows, and an extended exercise for the people who already write code.
Prerequisites
Some familiarity with programming concepts in any language is helpful, but prior programming experience is not required. You do not need to have written Python before.
You do not need to have used Codex, Claude Code or any other agent,
and no software engineering experience is assumed.
Familiarity with the command line helps but is not required.
The workshop introduces the small set of terminal and git commands you need on the day.
What You'll Learn
- Drive a coding agent through a spec-first workflow instead of vague "build me an app" prompts.
- Write a short implementation spec, and plan a small Streamlit application so that its core logic can be tested.
- Work safely with an agent, using sandbox and approval settings deliberately
and keeping rollback cheap with
git. - Apply test-driven development with an agent for the parts of a project where behaviour actually matters.
- Review AI-generated code against a specification, and recognise the failure patterns that recur.
- Encode project rules and reusable prompts so the agent applies them in every session.
Course Syllabus
Day 1: Building and checking software with a coding agent
- How coding agents work, and why output is plausible rather than correct
- Managing context, working spec first, and using
gitas a safety net - Test-driven development with an agent: writing and running the tests alongside it, and making tests the default for new logic
- Working safely: sandboxing, approvals, practical guardrails, and data governance for local and cloud tasks
- Reviewing AI-generated code: a repeatable loop run against the spec, and recognising "AI slop" and the recurring failure patterns
- Configuring an agent with project rules, reusable prompts and helper scripts
- Beyond Codex: choosing between Claude Code, OpenCode, Aider and the other agentic coding tools