How I work with AI
Claude Code is my main tool for research and for building software. Here is how I use it, in outline.
Vibe coding
Describing software in plain language and letting an AI coding agent write the code. I decide what gets built and how to check it.
Spec first
The agent interviews me before any code, and my answers become the spec.
Check every step
After each change I run the app or the numbers, rather than trusting code that reads well.
Known answers
Methods are tested on simulated data with a known effect, and LLM labels against a second model.
Secrets stay local
API keys stay out of git, and I read every public repository before it goes out.
Built this way
- Calorie trackerWeb app that reads food photos with a vision model. 20 versions in seven weeks.
- Finfluencer digestRuns every morning on GitHub Actions and sums up stock calls from finance channels.
- Filings Q&A agentAnswers questions about SEC filings with a source for every sentence.
- Open-source fixesA merged fix to ClaudeCodeUsage and four pull requests to a portfolio dashboard.
A paper from question to submission
A working paper on generative AI and tourism jobs. Claude Code worked on every stage and I kept the decisions. Results and data details stay off this page until the paper is published.
- 1
Question and literature
AISearches the literature, summarises papers and checks whether a term I plan to use already means something else in the field.
MeThe question and what the paper adds.
- 2
Design
AIDrafts alternative designs and lists the threats to each.
MeThe identification strategy.
- 3
Data and code
AIWrites the scripts and re-estimates the main results a second, independent way.
MeDefinitions, the sample, and what a result must survive before I trust it.
- 4
Writing
AIDrafts sections from my outline, following a style guide and a fixed glossary.
MeThe argument and every claim.
- 5
Revision
AITurns supervisor comments into task cards; a fresh session audits each change.
MeWhich comments to act on, and how.
- 6
Submission
AIBuilds the journal's Word files and traces every number back to a script.
MeThe final read and the AI-use statement.
The AI shock arrived while in-person services were still recovering from the pandemic. Comparing tourism with other service industries keeps the two apart.
Matching effort to the task
With Claude Opus 5.5, Claude Code lets me set how hard the model thinks and checks before it answers. I switch it several times on one task: low while we work out what to do, high when the result needs checking. More effort catches edge cases; it does not fix a wrong approach.
- Interviewlow effort
- Buildlow or medium
- Reviewby me
- Verifyhigh effort
In research
Drafting a section from my outline; a cleaning script or a figure built to a clear spec.
In web coding
A feature built to a clear spec.
Adapted for research and web work from Thariq Shihipar, “Using Claude Code: Spending your effort” (September 2026).
Running a project with a team of AI sessions
A paper outgrows a single chat, so I run it like a small team.
- Coordinator
Plan
Splits the work into task cards and sends me short briefings. It never does the tasks itself.
- Worker sessions
Do
Each card runs in its own session: the strongest model for judgement, a faster one for mechanical work.
- Fresh reviewer
Check
A new session checks the result against the card's acceptance criteria.
- Task board
Record
One file holds every card's status, so progress survives across sessions and devices.
Some decisions never leave me: the research design, how the main results are defined, the hypotheses and the structure of the paper.
Errors that don't announce themselves
The costliest mistakes in my AI-assisted work showed no error message. Most produced a plausible number that was wrong. The usual fix: the session that wrote something is never the only one that checks it.
Tools and limits
Tools
Claude Code is my main tool. Each project has a rules file and a memory that syncs across my devices; a few custom skills handle recurring research tasks, and connected tools search the literature and check citations.
I have tried OpenAI's Codex on side tasks, for comparison.
In measurement work, one model labels the text and a second model checks the labels.
Where I draw the line
The research question and the design are mine, and so is every claim in print.
I check every reference against its DOI before it goes into a paper.
Public code runs on simulated or public data. Confidential research data stays out of public repositories.
I declare AI use as each journal requires.