Projects
Video Player
YouTube-style video controls
Video Player
3 Days total duration
I built a video player that brings YouTube's controls and playback behavior to local files and remote videos, on desktop and mobile. I also use it in other projects.
- Playing local files, media URLs, and HLS streams
- Recreating YouTube's desktop and mobile controls
- Restoring playback positions and saved file references
Gothic Lock Picking
Gothic lockpicking solver
Gothic Lock Picking
11 Weeks total duration
I recreated the lockpicking puzzles from Gothic 1 Remake, with a solver and practice mode for trying different locks.
- Modeling and rendering the lock mechanism
- Solving and generating puzzles in a web worker
- Building a lock catalog and shareable configurations
Game AI
AI training for games
Game AI
7 Months total duration
I built a tool for training AI models to play games, with remote training workers and a dashboard for comparing runs and configuring experiments.
- Building the game and reinforcement-learning pipeline
- Running training on local and remote workers
- Finding and fixing a TensorFlow.js bug
Event Media
Photos and videos from guests
Event Media
8 Months total duration
I built an app that lets guests scan a QR code and upload event photos and videos straight to the organizer's OneDrive.
- Connecting event uploads to OneDrive
- Resuming interrupted uploads
- Building private galleries with invitation links
Live Quiz
Live quizzes across devices
Live Quiz
7 Days total duration
I built a better Kahoot! with a quiz editor, presenter controls, and live answers from participants' phones.
- Building the quiz editor and presenter controls
- Synchronizing questions and answers across devices
- Managing join codes and participant scores
Habit Tracker
Custom habit tracking
Habit Tracker
4 Weeks total duration
I built a habit tracker around a customizable panel of clickable tiles. Tasks have their own schedules and scores, and the tiles can be rearranged and resized.
- Building clickable, draggable, and resizable task tiles
- Preserving task history when settings change
- Charting daily and weekly progress
Artist Website
Gerard Almirall's portfolio
Artist Website
10 Months total duration
I built Gerard Almirall's website to show his artwork and exhibitions, with an admin area where he can update the content himself.
- Designing artwork galleries and exhibition pages
- Building an admin area for images and content
- Adding responsive images and thumbnail loading
Qortex
Workflows and org charts
Qortex
3 Months total duration
I built Qortex's web editor for creating workflows and org charts. You can also use its AI assistant to read and edit those diagrams.
- Building the workflow and org-chart editor
- Connecting workflow steps to external APIs and n8n
- Adding AI tools for creating and editing diagrams
Hirnstammtisch
Talks and discussions
Hirnstammtisch
3 Months total duration
I built a site for organizing talks and discussions, with sign-ups and an archive of recordings and presentation materials.
- Scheduling talks and managing attendance
- Sharing recordings and presentation materials
- Building member sign-in and access controls
Spending Insights
Explore your spending
Spending Insights
3 Weeks total duration
I built a browser app for exploring my spending, with custom categorization rules and bank transactions stored locally.
- Importing bank CSVs and merging transactions
- Building custom categorization rules
- Preparing transaction data for charts
Koenig Migration
Silas König's consultancy
Koenig Migration
8 Days total duration
I built a website for Silas König's immigration consultancy, with his services and contact details on one page.
- Designing the service and contact page
- Adapting the layout for phones and larger screens
- Setting up the website's hosting and domain
ETL Migration Tool
Data Manager to DataStage
ETL Migration Tool
7 Months total duration
I built a tool that generated DataStage replacements for roughly 1,200 IBM Data Manager jobs, with little direct access to the client's systems.
- Reverse-engineering Data Manager job definitions
- Generating DataStage job files
- Building tools to inspect jobs and parser errors
RedSchnell
Audio and video transcription
RedSchnell
14 Months total duration
I built an app for transcribing recordings, with a choice of transcription models, timestamps, and editable speaker names.
- Managing recording uploads and transcription jobs
- Connecting multiple transcription providers
- Displaying timestamps and editable speaker names
Faster ETL Pipelines
Faster data processing
Faster ETL Pipelines
8 Months total duration
I redesigned two ETL pipelines that together touched more than 20 tables, cutting their combined runtime by roughly 80% by moving less data between the database and DataStage.
- Redesigning two large ETL pipelines
- Reducing data transfers between the database and DataStage
- Building five more ETL pipelines
Cognos AI Assistant
Chat with your report data
Cognos AI Assistant
4 Weeks total duration
I built a chat assistant that sits inside Cognos reports and answers questions about the data on screen.
- Building a chat interface inside Cognos
- Connecting a Custom Component to a Jupyter Notebook
- Giving the assistant access to report data
AI Team & Prototypes
AI research and prototypes
AI Team & Prototypes
10 Months total duration
I researched language models, coordinated a four-person team, and built three prototypes for BI reports and internal tools.
- Researching language models before the team formed
- Planning and coordinating a four-person team
- Building three AI prototypes
Tracing Reporting Bugs
Finding reporting bugs
Tracing Reporting Bugs
6 Months total duration
I traced incorrect report values through a large reporting system that was still being built, then turned the checks I kept repeating into reusable SQL templates.
- Investigating tickets and tracing reporting errors
- Inspecting SQL generated by Cognos
- Building reusable SQL checks
Cognos Report Migration
Excel reports to Cognos
Cognos Report Migration
7 Months total duration
I took over an unfinished Cognos reporting project, built a Python toolkit for bulk changes, and cut load times from more than three hours to about ten minutes.
- Cognos Report Development
- Custom Component Development
- Python Toolkit for XML modification