{
  "slug": "87k-windows",
  "title": "Two lights and a thread",
  "description": "Building 87K Windows at the 65 Labs Gemini hackathon: local Gemma as a privacy layer, a deliberately boring matcher, and a Gemini that opens the door then gets out of the way.",
  "url": "https://tanveerriaz.me/blog/87k-windows",
  "datePublished": "2026-08-23",
  "markdownUrl": "https://tanveerriaz.me/blog/87k-windows/index.md",
  "jsonUrl": "https://tanveerriaz.me/blog/87k-windows/index.json",
  "text": "Singapore has roughly 87,000 seniors living alone. This weekend, the 65 Labs Gemini hackathon gave me one track - Silver AI: designing Gemini for seniors - and 48 hours. The question I kept circling wasn't \"what can AI do for older people?\" It was the reverse: what do older people have that the rest of us need? The ~83-second landing story film: an elder with a story, a newcomer who needs it, same block. Streams from the live app. Flip the direction of care Most senior tech puts elders on the receiving end - reminders, monitoring, companionship apps. But the people I had in mind are witnesses, makers, and teachers. What's usually missing isn't capability. It's a clear signal that somebody is genuinely ready to listen or learn. So 87K Windows asks one gentle question, turns a lived memory into a consented offer, and makes the result visible: a Singapore housing block where one warm window lights up when a story has been witnessed, and two windows plus a fine blue thread appear only when the evidence actually connects two people. The prepared demo is deliberately small: repairing radios in Queenstown in the 1970s, with an explicit offer to teach - matched against someone who wants to learn how old radios worked. Queenstown · 1970s · radio repair · teach ↔ learn . The build floor - teams heads-down, real inference on real constraints 48 hours, one room, one track Two models, two jobs The architecture splits the AI along a privacy boundary, and each model has exactly one visible job. Gemma is the privacy layer. During the judged demo it runs locally - gemma3:4b through Ollama on my Mac - and receives redacted words only. It returns a structured capsule: place, era, skill, offer or want, a safe summary, and its own uncertainty. Zod validates every field; malformed output is rejected, not patched. Gemini 3.6 Flash is the senior facilitator. It enters only after a match, receives only the approved safe capsules and the visible evidence, and returns two gentle questions that can be read aloud slowly. It never sees raw memory text, photos, contact details, or unmatched submissions. YOUR WORDS → redaction → local Gemma → structured capsule → your approval → transparent matcher → MATCH or NO MATCH YET → (match only) Gemini 3.6 Flash → two gentle questions Not an AI companion. Gemini opens the door, then gets out of the way so two people can talk. The most important component has no AI in it The matcher is MiniSearch plus a transparent scorer with a hard threshold. Boring on purpose. Weak evidence returns NO MATCH YET - one light, no thread, no invented invitation. A model in that seat would be tempted to make everyone match, because agreement feels like success. But loneliness deserves better than fabricated warmth. Trust in this system comes from being able to point at the evidence and show exactly why two windows lit up - or honestly say they didn't. Honest demos ship Two rules carried the build. First, no silent fallback: if neither real model is available, the demo stops rather than simulating inference. Second, respect the hardware: local extraction handles one story at a time on a MacBook Air and says so, instead of faking a queue. The public app runs the same Node process on Railway with hosted Gemma 27B for extraction and Gemini 3.6 Flash for facilitation - every surface labels which model is actually active. The critical Playwright test uses two browser contexts: a phone submission must light the projected wall, survive a reload, and then refuse a deliberately weak fixture. Demo hour - every team on the big screen Real builds, seams and all The builder, mid-build Wrapping up at the spotlight wall Demo crowd - the version of AI building I want more of Demo hour made the weekend. A room full of teams shipping real inference on real constraints, then showing exactly where the seams are. Next time you design a system for someone vulnerable, ask the question this weekend forced on me: where, precisely, does the AI get out of the way? Open the live app → 87k-windows on GitHub →"
}
