Why this session exists
Chat Claude answers questions about your data. Claude Code WORKS on it: reads the files, writes and runs the scripts, checks outputs, commits results - in your terminal, inside your repo, under permission rules you control. Prerequisites: comfortable with a terminal and basic git.
What Claude Code is and how it works 6 min live
An agent in your terminal: Claude plus tools (read/write files, run commands, search, git) in a loop, pointed at your working directory, gated by permissions you control.
LiveSetup in three commands + your first prompt2 min▶
Talk to it like a capable new teammate, let it explore before you ask for changes, and treat permission prompts as a feature: saying "no" teaches it your boundaries.
LiveCLAUDE.md - the file that makes it YOUR tool2 min▶
A markdown file at the project root, read automatically at session start - the repo's standing brief:
Run /init in any existing repo and Claude drafts the CLAUDE.md for you - then you correct it (the usual loop).
LiveThe working method: explore → plan → code → commit2 min▶
- Explore: "read the loading and cleaning code, summarize how X flows" - cheap reconnaissance first.
- Plan: ask for a plan and APPROVE it before code changes (plan mode). For data work this is non-negotiable: you're approving what happens to the data.
- Code: it writes, runs, hits errors, fixes - the loop you'd do by hand, at machine speed, visible.
- Commit: reviewed diff, clean message. Ask it to review its own diff first: "anything risky in this change?"
- Context management: long sessions drift (Session 1's working-memory lesson). Use
/clearbetween unrelated tasks; keep CLAUDE.md lean so every session starts sharp.
Self-studyPower features: custom commands, hooks, GitHub, SDK3 min read▶
- Custom slash commands: save a repeated prompt as
.claude/commands/profile-data.md→ run/profile-data. Your team's SOPs as commands (Session 3's idea, terminal edition). - Hooks: shell commands that fire automatically on events - auto-run
ruffafter every edit, block writes todata/raw/, notify on session end. Deterministic guardrails around the agent. Gotcha: hooks run with YOUR permissions - keep them read-only where possible. - GitHub integration: Claude reviews PRs, fixes issues from comments, drafts release notes -
ghCLI plus the GitHub app. - Skills & subagents in Code: your Session 3 skills work here (
.claude/skills/); subagents are Session 6. - The SDK: the same agent, scriptable from Python/TS - build your own data tools on top. That's the bridge to Session 6's platform story.
Cleaning, catalog, offline scripts, prototypes 9 min live
The four jobs this team asked for, each as a repeatable pattern with its prompt.
LiveWorkflow 1 · Data cleaning with an approved plan2 min▶
The pattern generalizes: profile → approved plan → logged script → verified output. The CHANGELOG plus assertions are what make it governance-grade instead of notebook archaeology.
LiveWorkflow 2 · A data catalog that writes itself2 min▶
Not a DataHub replacement - a living, in-repo catalog that costs one command to refresh. For most teams it beats the enterprise tool nobody updates. When you outgrow it, the markdown migrates cleanly.
LiveWorkflow 3 · Offline Python for AWS WorkSpaces3 min · the house specialty▶
Our reality: analysis code gets copy-pasted into AWS WorkSpaces with no internet and no pip. Scripts that import freely die on arrival. The fix is a constraints preamble that makes Claude write for that runtime every time - keep it as a skill or slash command:
The killer detail is the last line: asked to reconcile two Excel exports, Claude flagged "no requests, so the FX-rate lookup must become a manual constants table" BEFORE writing code - the exact failure that used to burn an afternoon inside the WorkSpace where debugging is misery.
LiveWorkflow 4 · Quick data product prototypes2 min▶
Fifteen minutes to a running dashboard changes stakeholder conversations: they react to something real, you learn what they actually need before the proper build. Same honesty as Session 4's prototypes: demo-grade, and labeled as such.
Messy CSV → clean + profiled + catalogued ★ 14 min · everyone in terminal
Setup (pre-session homework was: npm install + claude login working). Grab the practice repo: git clone [internal-repo]/claude-data-lab - it has a deliberately messy sales_export.csv.
Run /init, read the generated CLAUDE.md, add the two guardrails (raw read-only, PII masking) from Part 1.
Run the cleaning brief (Workflow 1). Read the profile it reports - what did it catch that you'd have missed?
THE key moment: it proposes the plan and stops. Reject one step out loud ("don't impute region - drop and log instead") - feel the control point.
Approve, watch the loop run: script written, executed, CHANGELOG updated, assertions green.
Run the catalog generator (Workflow 2) on the result. Open docs/catalog/ - your dataset now has documentation newer than most production tables.
An offline-safe script, constraints-first ★ 6 min · everyone builds
Pick a real job you'd normally do inside the WorkSpace (reconcile two exports, monthly aggregation, format validation).
Run the offline constraints template with your job in the Task line. Read the "impossible parts" list first - that's the template earning its keep.
Test locally with --dry-run, then for real on sample files. One file, no imports beyond the verified list - confirm with a glance at the header.
Save the template as /offline-script (custom command) so the whole team writes WorkSpace-safe code by default.
This week ◐ 60 min total
- Point Claude Code at a real repo:
/init, correct the CLAUDE.md, run one explore-plan-code task end to end. - Catalog one real dataset domain and send the index page to the team - watch how fast "what does this column mean" questions die.
- Convert your most-repeated WorkSpace job with the offline template; keep the output as the team's reference script.
- Prototype one dashboard a stakeholder has been asking about. Demo it in their next meeting, gather corrections, THEN scope the real build.
- Take the two official courses if you want the certificates - this page covered their working content; the videos add live-coding texture.
Official courses covered
From claude.com/resources/courses:
Three questions before you go 🎯 ◐ 90 seconds
1 · Your control point when Claude Code works on data is...
Explore → plan → APPROVE → code. You're approving what happens to the data - that step is non-negotiable.
2 · A script destined for our AWS WorkSpaces must be...
No internet, no pip: single file, constants block, dry-run flag, graceful failures - and ask for the "impossible parts" list first.
3 · CLAUDE.md is best described as...
It's Session 2's "project instructions" for your repo. /init drafts it; your guardrails (raw read-only, PII masking) do the real work.