I build tools for education and research, mostly at the intersection of language, data, and software. By day I work on the data side of cancer research at Moffitt Cancer Center. On the side, I run Chaone Labs where I build apps for language researchers and educators.
-
ITA Trainer: A voice-based practice tool for international teaching assistants. You talk to an AI student, then get coaching feedback on your interactional skills. Built in collaboration with education researchers. (Next.js, LiveKit, OpenAI Realtime API)
-
한국어 학습 플랫폼: A web platform that supplements the KLEAR Integrated Korean textbook with LLM-powered interactive practice. (SvelteKit)
-
LLM Temperature Consistency: Replication package for a study on how temperature settings affect LLM reliability in rhetorical move-step annotation. Designed so non-programmers can run it. (Python, OpenAI API)
-
Pathology LLM Data Extraction: Evaluating open-source LLMs for zero-shot thyroid cancer pathology abstraction at Moffitt Cancer Center. (Python, LLM APIs)
-
LIN2002 Grading Assistant: An AI grading tool for a linguistics and film studies course. It learns from real instructor feedback using few-shot examples and outputs scores and written feedback in the instructor's voice. (SvelteKit, Google Gemini)
-
The Office Agent: A virtual office simulation with AI agents that perceive, plan, reflect, and interact. Based on the "Generative Agents" paper by Park et al., ported to a simpler architecture. (Python, Phaser, FastAPI)
-
Fulbright Planner: An LLM-powered lesson planning tool I built while coordinating a Fulbright program in Taiwan. Tested with ~50 colleagues and refined based on actual usage logs. (Python, Svelte, Claude API)
-
SABR Automated Coding: A prototype that uses LLMs to do qualitative research coding on educational transcripts. Validated against expert human coders. (Python, LLM APIs)
-
YASEC: My first real coding project. A 58-million-word corpus built from YouTube academic transcripts to study the vocabulary demands of online lectures. (Python)

