Back to index


  1. CSV Match

    Finds matches in two spreadsheets, optionally using various fuzzy-matching algorithms. Used by organisations including the Guardian, the Times, and news agency Irin who used it to identify a company the United Nations had a contract with who was also on its own sanctions list.

  2. Reconcile

    Enrich data, adding new columns based on lookups to online services. For example, take a spreadsheet of company numbers and turn it into a list of directors of those companies.

  3. Newsagent

    Automatically identify potential story leads. Lets you create autonomous bots which poll data sources and run predefined data analysis. Results are then compared to the last time the bot ran – and any additions or deletions trigger an email alert.

  4. Graphik

    Create simple static charts quickly – a tool for the non-technical. Can be easily customised to your organisation's house style using a simple stylesheet.

  5. CSV Pivot

    Produce pivot tables, much like those in Excel, but in the terminal.

  6. NDJson-to-CSV

    Convert NDJson format data (such as the Companies House PSC data) into CSV. Data is streamed, so files much bigger than the available memory can be converted. Takes into account nested Json objects.

  7. London Overground capacity display

    A prototype display showing the predicted space on each train carriage. Deployed at Shoreditch High Street station for the last quarter of 2017. A collaboration between Geovation and OpenCapacity with TfL.

  8. Track the dot

    Project management for an interdisciplinary creative team at Data4Change 2017 in Kampala, Uganda working with Kenyan NGO Chrips. The team developed a prototype offline-first campaign based on Chrips's research on urban violence that targeted community leaders in north Kenya.

  9. We are Sudan

    Built a prototype mobile-first website at Data4Change 2016 in Beirut, Lebanon working with Sudanese NGO Kace. The team developed a social media campaign based on Kace's research into quality of life as experienced by ordinary people in the country.

  10. Who follows who

    Finds which Twitter accounts follow each other from a predefined list.

  11. Scrapers

    I've written a number of scrapers for various websites as part of stories or for other projects, including: