Fitness Behavior AI Coach
HCDE 568, Culminations of AI · Microsoft sponsored group project
- Situation
- As part of a University of Washington HCAI project, our Microsoft sponsor wanted to know whether an AI fitness coach could adapt to where someone actually is in their behavior-change journey, rather than dispensing chatbot goal-setting advice that assumes all people are the same.
- Approach
- Built a conversational stage-inference layer grounded in three behavior-change theories (Transtheoretical Model, Self-Determination Theory, Social Cognitive Theory, Goal Setting Theory). Teamed up on UI and UX design. Ran research testing on real users.
- Solution
- A working prototype with transparent, user-correctable behavioral memory that evolves along with individual fitness journeys.
- Impact and Skill Improvement
- Users feel more connected to and accountable towards an AI coach who tailors responses to them. Gained personal design experience working with a corporate sponsor, training a chatbot, and creating editable personalization features.
- Plus+
- Our collaborative prototype was put together with a code repository which included development files, a progress diary, and connections to a live server.
AI-Assisted UX Journey Mapping
HCDE 560, Foundations of Human-Centered AI · group project
- Situation
- As part of a group project, we evaluated whether AI tools could meaningfully augment two stages of the user-centered design process: thematic analysis and UX storytelling. We selected these touchpoints because thematic analysis is time-intensive and cognitively demanding, while translating findings into compelling narratives for stakeholders requires inspiration and review.
- Approach
- I compared multiple AI-generated thematic analyses against my own read of key takeaways and fed the strongest synthesis into AI to create a 5-scene journey map grounded in real quotes. I then created AI-generated storyboard art.
- Solution
- A 5-scene UX storytelling deck with quote-backed friction points and matching illustration.
- Impact and Skill Improvement
- A reviewable and critical case study in using AI for qualitative synthesis. I explored where it over-generalized and might necessitate human judgment for its final approval.
- Plus+
- I practiced using generative AI to create accurate UX artifacts that could be useful for product or design teams.
End-to-End Research Project
HCDE 564, Human Centered Research and AI · individual project
- Situation
- An individual HCDE 564 end-to-end research project asked where and where not to use AI for desk research, heuristic reviews, interviews, surveys, personas, and qualitative and quantitative analysis.
- Approach
- I ran a 15-person survey across 3 research questions, carried out 5 qualitative product interviews, and used an LLM as a heuristic evaluation second opinion against my own expert review while deciding whether fee transparency, seat selection usability, and ticket accessibility affect conversion and satisfaction in Fandango's ticket-buying app.
- Solution
- Humans are still essential in practicing thorough and effective user research. AI can speed up the process, provide valuable opinion checks, and dig deep into a wealth of information. Study findings identified seat selection as a usability win, and price reveal as a top frustration point.
- Impact and Skill Improvement
- I gave design recommendations for surfacing pricing earlier in checkout and practiced a disciplined ethics-based evaluation workflow for research methodology.
- Plus+
- I explored a wide variety of AI tools and technologies to perform research methodologies in the most effective ways possible.
Hot Lists
Personal games research tool · Claude Code skill
- Situation
- I wanted a faster and more reliable way to see what's trending and current across video games. Like many media categories, the games players are actually enjoying and looking forward to are often disguised by word of mouth or hidden by biased viewpoints.
- Approach
- I scoured the web for trustworthy sources of game industry information I'd like to regularly access given an unlimited amount of time. I learned how to use AI to find, refine, and present the data in accessible and manageable pieces.
- Solution
- I built a Claude Code skill with structured templates and archives that generate ranked Top 5 lists across games, movies, TV, music, streaming, and YouTube.
- Impact and Skill Improvement
- The hot lists feed hypothesis generation for professional games user research. I can quickly stay current and informed on important and loved topics.
Horoscopes
Daily AI-generated entertainment content · Claude Code skill
- Situation
- I wanted to create a daily AI product that didn't seem generic or repeat itself.
- Approach
- Fascinated by the signs of the zodiac, I recognized the topic assigns both group and individual traits to achieve a result people often feel matches their current mood. I researched universally accepted traits and looked for opportunities to add spice.
- Solution
- I built a skill with hard construction rules that employs probability and self-regulation to appear fresh — a unique 12-sign horoscope generator with zodiac signs grounded in a reference file. It has a 3-sentence limit, rotating opener styles, and a tracking log that checks past entries.
- Impact and Skill Improvement
- Designed for fun, the horoscopes are a concrete demonstration that constraint-driven prompting can create fresh, enjoyable content.
- Plus+
- Each sign has its own lucky number rule and a chance at showing a nickname or “Cosmic Connection.” Hand-drawn zodiac icon art accompanies each entry.
Jumble
Interactive casual puzzle game · Claude Code skill
- Situation
- I wanted to create an interactive casual puzzle game.
- Approach
- I rebuilt the newspaper Jumble format around seven subjects: Sports, Screen, Arts & Literature, Music, Video Games, Historical Events, and Food & Drink. Answers can be guessed from clues and unscrambling letters.
- Solution
- I designed living HTML puzzles with a self-grading answer key and a scratchpad letter bank. Each subject has its own clue topics, like Athlete, Actor, Album, or Ingredient, and a Python validator proves letter-feasibility before rendering a puzzle. The project was usability tested, and dimming the used letters in the bank was a usability ask that shipped directly into the design.
- Impact and Skill Improvement
- I could use AI to create games that alternated between challenging and not overly challenging. I could also make games that generated their own puzzles, or, if I chose, took human direction for new puzzle ideas. An ongoing Jumble Improvement Project uses machine learning (a linear regression model) to label each new puzzle as easy, medium, or hard, and the site tracks how often players solve it.
See how the difficulty model works
- Plus+
- Clues are carefully checked to not give away the answers used later in a jumble. All answers in a puzzle are connected to the same subject, whether it's one athlete, movie, book, song, game, historical event, or dish.
FIN 579 Vibe Coding Exercise
FIN 579, Special Topics in Finance · individual class exercise
- Situation
- For a class assignment, I was asked to vibe code a simple app that lets anyone check a CSV file for missing values without opening a spreadsheet or writing code.
- Approach
- I wrote a prompt in plain language: list the column names, say whether each column is numerical and has missing values, and average every numerical column with no missing values. The app also lets the user pick any numerical column and see its average and standard deviation.
- Solution
- A standalone HTML app on this site, demonstrating the ease of writing a useful prompt. Upload or drag in a CSV file, and the results appear in four steps: variables, type and missing values, averages, and column statistics.
- Impact and Skill Improvement
- I saw how quickly a clear, plain-language prompt can become a working tool that's ready to share. Although the app is simple and easy to re-create, I've decided to leave it up on the page in case I want to use it in a pinch.
Try the exercise
- Plus+
- The file is read in the browser, so data is never uploaded or stored. The app handles messy files, too: commas inside quotes are read correctly, and blanks or entries like NA, N/A, and null count as missing.