Projects
Software is most interesting when it turns a vague idea into something useful. Here are a few projects that have shaped how I think about useful, flexible systems.
Tangential Solutions
Family Sessions
A family activity tracker built for quickly logging how time is spent, whether an activity is happening now or was completed earlier.
What makes it interesting
- A session can include multiple children, while validation prevents overlapping timers for the same child.
- Quick-start timers and manual entries support both real-time tracking and logging activities after the fact.
- Custom activity categories make the tracker adaptable to each household instead of prescribing a single routine.
- Daily and weekly rollups feed gentle goals for doing at least—or no more than—a chosen amount of an activity.
Tangential Solutions
Budget
A personal finance app for planning monthly income and category budgets, recording transactions, and seeing at a glance how much remains to spend.
Tangential Solutions
WebScrape API
An API for triggering customizable web scrapes, with an architecture designed to accommodate the changing shape of data on the web.
What makes it interesting
- MongoDB provides a flexible home for scrape results whose schema changes from one source to the next.
- Scraping strategies are composable, making it straightforward to add specialized behavior for links, images, and other resources.
- Ruby's
>>operator composesProcobjects, passing the result of one operation into the next. - Background work runs through Resque so larger scrapes do not hold up API requests.
More experiments live in the Tangential Solutions organization.