Here are some of my better programming projects.
-
Nantucket E-Books and
Shanty
Nantucket E-Books is a platform that makes it easy for writers to create and share e-books. The e-books are browser-based, so no special apps or devices are required to read them. They are mobile-responsive, so they’ll look good on smartphones, tablets, or desktop computers. They have interactive features like note-taking, bookmarking, dark mode, text-resizing, and favoriting, all while respecting the reader’s freedom.
Nantucket E-Books are written in Shanty, a markup language I wrote. This allows authors to write in any text editor or word processor they want, and since the files are plain-text, they’re future-proof while being easy to store and share. Shanty has proven to be a versatile language: it’s at the heart of my blog updates, my livestream presentation app, and templating for websites.
nantucketebooks.com also involved writing a number of tools for managing the site.
- Official Nantucket E-Books Website
- Official Manual for Shanty
- Pi Pond
Pi Pond was inspired by an excercise in A.K. Dewdney's recreational computer science book The Armchair Universe. In essence, it’s a way to approximate the value of Pi by firing cannonballs into a pond. The challenge is interesting because it allows you to get data out of randomness.
This was my first project to make use of the HTML canvas element, which I used for the animations.
- Pi Pond GitHub Repository
- Dragon Curves
This program draws a Dragon Curve fractal on the screen. The user can choose how many iterations of the fractal they want to have drawn. It goes up to eighteen iterations, with the last one containing over a quarter-million lines.
I used this program to create a Lego design of the fractal, which I used to tile my coffee table.
The inspiration for Dragon Curves was Michael Crichton’s novel Jurassic Park, where successive iterations of fractals were used as a metaphor for the increasingly chaotic nature of the park ecosystem.
- YouTube video about my Dragon Curve project
- Dragon Curves GitHub Repository