Duel for Middle-earth
I'm building a fan-made web adaptation of The Lord of the Rings: Duel for Middle-earth. The same persisted game supports live two-browser play or asynchronous turns, with the base game and Allies expansion.
Software, research, games, and films I've worked on.
I've worked on full-stack and backend software in Java, C++, and JavaScript, using Spring Boot and Node.js. My personal projects have also included server administration with nginx, PM2, and GitLab CI.
I'm building a fan-made web adaptation of The Lord of the Rings: Duel for Middle-earth. The same persisted game supports live two-browser play or asynchronous turns, with the base game and Allies expansion.
Liberty Letters is a Revolutionary War–themed letter-recognition game. It has a browser activity and a printable PDF for practicing letters away from the screen.
My wife and I take subjects our family is interested in and make games or projects we can work on together. We write about what we tried with our own family.
These are four applications I built before the current projects. The surviving TTT rules PDF is included; the apps are no longer available.
I built a server/client controller for our homemade live-action version of Trouble in Terrorist Town. It works best in a large place with lots of side rooms, such as a museum.
I built this for exchanging Steam games with friends. It supported custom dates, prices and information, email notifications, and non-overlapping assignments.
I made a game where you swipe dots in the correct direction. It had several difficulty levels and worldwide leaderboards.
I made this Android app to solve basic algebra through three-variable functions.
I built it because I had to make an app before I was allowed to get a smartphone.
I wrote these papers at Northern Michigan University, UW–Madison, and Argonne National Laboratory. The links open the original PDFs.
We used large pre-trained models to extract features, then trained a differentially private model on those features and compared its accuracy at low ε with earlier benchmarks.
For our CS 740 group project, we profiled cloud resource use while scaling a Twitter sentiment-classification task.
For our CS 760 group project, we made a GAN that tried to turn lizards into dinosaurs and dinosaurs into lizards.
For my senior project, I built a client for running simulations on the A* lattice, a plane of hexagons. I also recorded the presentation.
My final paper for MA 340 used equations to estimate the number of possible chessboard positions.
I worked on controlling robots with augmented reality during the SULI program at Argonne National Laboratory.
As a hobby, I make movies with friends and family under the Sunset Films name. There are heists, dragons, and plenty in between.
We made three science-fiction and fantasy films in the northwoods with friends from Northern Michigan University.
You can also visit the 2017 TrefSoftware page, along with the old Sunset and Whetstone pages.