work & practice / 2026

Eight years watching people read, write, and get stuck. Now applied to services, tools, and the systems behind them.

I taught English for eight years. The job was watching people try to make sense of something and noticing where it broke down. Service design and research draw on the same instincts, with different artefacts.

role
Service Designer & Researcher
location
Vancouver, BC
focus
Learning systems and the tools that surround them
1.0 · selected work
1.1 ↘ shipped · live demo · 2025

Useful Words

A bilingual reference tool for language learners who get stuck mid-sentence.

role
UX research, design, front-end
methods
Classroom observation, contextual interviews, prototyping, usability testing
output
Mobile-first bilingual reference tool

My students kept switching between writing apps and dictionaries while drafting English sentences, losing their train of thought every time. Useful Words sits in one screen with examples, translations, and connector phrases ranked by how learners actually move through a sentence. Mobile-first because that is where the writing happens.

read case study ↗ try it live ↗
1.2 ↘ shipped · macOS app · 2024

WatchMeType

A typing simulator that asks a quiet question about how schools handle AI.

role
Concept, design, build (solo)
methods
Speculative design, SwiftUI prototyping
output
macOS app that reproduces a human typing rhythm

I built it because the conversation about AI in classrooms had become a checklist of what to ban. WatchMeType reproduces a human typing rhythm, varied pauses and corrections included. The question is not whether it can fool a teacher. The question is what we are actually trying to detect, and whether teaching has to mean policing.

view project ↗ view source ↗
1.3 ↘ shipped · web tool · 2024

Pocket Dystopia

A premise generator for fiction writers who get stuck staring at a blank page.

role
Design, build, testing (solo)
methods
Prompt-structure iteration, usability testing (n=5)
output
Web premise generator for fiction writers

I tested it with five writers and rewrote the prompt structure twice based on what kept landing flat. The point wasn't to generate a good story. It was to give someone a useful place to start.

view project ↗ try it live ↗
1.4 ↘ campaign work · pre-UX

Aoni Campaigns

Audience research in different vocabulary.

role
Audience research, campaign copy
methods
Audience analysis, A/B campaign testing (direct vs humour)
output
Humour-led social campaign for a North American market launch

A Hong Kong condom brand wanted to enter the North American market with direct messaging. The campaign data said the audience wanted humour. We tested both. The humour cut won by an order of magnitude.

view project ↗
1.5 ↘ the through-line · 2017–2025

Eight years of curriculum design.

The unit plans I built had a lot in common with service blueprints.

role
Designer, facilitator (eight years)
methods
Instructional design, iterative material redesign, learner observation
output
Lesson plans, handouts, assessments, learner-centred materials

For eight years I watched where students got stuck, restructured the material, and tested whether the change worked. The vocabulary changes when I switch industries; the instincts carry over.

view process ↗
2.0 · experiments ↘ written guides · tools

Side things, made between projects.