Work

Stories, apps and open-source software I've authored, typically in partnership with others.

2017
Nov. 04    Save My News
2016
Nov. 17    How Iowa voted
Nov. 08    2016 election results
Oct. 08    First Python Notebook
July 18    django-bigbuild
April 25    python-desknet
Feb. 12    django-postgres-copy
2015
Nov. 14    StoryTracker
June 11    django-project-template
March 08    First Django Admin
2014
Dec. 10    First Web Scraper
Nov. 04    2014 election results
Nov. 04    2014 election results
Aug. 14    django-urlarchivefield
Aug. 14    storysniffer
Feb. 28    First News App
2013
Nov. 11    checkbook-la-watchdog
July 30    uptime-grove
July 22    boundaries.latimes.com
June 13    PastPages API
June 13    pastpages2gif
May 01    DWP salaries database
March 11    lat-soundsystem
Feb. 04    Silent LA
2012
Nov. 14    Quiet L.A.
Nov. 06    2012 election results
Sept. 29    copyboy
March 13    django-bakery
Jan. 01    python-elections
2011
Dec. 15    django-softhyphen
Sept. 15    django-yamlfield
Aug. 17    python-googlegeocoder
Aug. 07    jquery-geocodify
July 22    latimes-statestyle
July 01    PastPages
May 31    python-lametro-api
May 10    timelines.latimes.com
April 14    python-documentcloud
March 05    spreadsheets.latimes.com
Feb. 27    Billions to spend
2010
Dec. 31    table-stacker
Dec. 14    latimes-calculate
Nov. 25    documents.latimes.com/
Nov. 07    appengine-template
Sept. 30    Mapping L.A.: Crime
Aug. 24    Hollywood Star Walk
Aug. 05    django-greeking
2009
Feb. 14    django-correx
2008
Sept. 08    California Schools Guide
Aug. 01    L.A.’s Top Dogs
May 26    California's War Dead
2007
May 22    Collateral damage
2005