David Herring

Software Engineer | Full-Stack & AI Applications

About Me

I came to software engineering through a love of literature and geography. I wanted a tool that would let readers place locations from books onto maps of the real world, so I tried to build it.

Mercury Game

React | TypeScript | FastAPI | Supabase | OpenAI API | Render | Netlify

Negotiation simulation where one human and eight AIs act as country and NGO representatives to debate mercury pollution policies.

Built as a full-stack application combining deterministic game logic with LLM-generated player outputs.

Interactive AI Data Explorer

React | TypeScript | Vite | Vercel AI SDK | OpenAI API | Strava API

Data application that allows a user to explore activity data visually and through natural language with an AI collaborator.

Designed with a shared analysis state for the visualization tools and LLM, ensuring the conversations are grounded in current selections.

Learning & AI Minicourse

Learning Design | Generative AI | Adaptive Practice

A sample instructional module exploring practical and responsible uses of generative AI in learning and assessment.