Jacob Budin is a 28-year-old software developer. He works at Kettle and lives in Jersey City. He graduated Phi Beta Kappa from Penn State with degrees in English and marketing.

Wednesday, January 15, 2014

Feed NYC at Reinvent 311

Feed NYC, a mobile Web app and RESTful API, for New York City’s food insecure population won Judge’s Pick (top prize) tonight in the Reinvent 311: Mobile Content Challenge hosted by NYC 311, Code for America Brigade, and Stack Exchange. Thanks to them for inviting me, and welcoming me back for lunch.1

My presentation could have used a little more polish (who still uses PowerPoint?, why do they have a 4:3 projector?). I also had my notes written on a napkin. But I think having a very functional demo with a clean UI and straightforward UX helped. The API and frameworks are fast enough that you don’t feel you’re relegated to just a Web app.

My designer colleague Lydia White suggested she’d be open to building something with me next time. (With her, we’d be shooting fish in a tea cup.)

Mobile Web app

Feed NYC can be viewed on a mobile device at: http://feednyc.jacobbudin.com. It was built using App.js, CoffeeScript, Sass, and Bourbon. The site is best viewed on an iOS device.


The RESTful API is hosted on Heroku at: https://feednyc.herokuapp.com. It was built using Python 3.3 with Flask, Beautiful Soup, and SQLite. It responds with JSON and is cross-origin compatible. There are three GET endpoints:

  • /providers
  • /providers/{:id}
  • /cities

You can use the following query strings: id=1,2,3, city=brooklyn,bronx, lat=49&lng=-71, hour_start=1430&hour_end=1500 (“human readable” format, 1430 is 2:30 p.m.), days=4 (bitwise-designated day of week, 1 is for Sunday), kind=1,2 (0 is food pantry, 1 is soup kitchen, 2 is senior center).

In a nod to the StackExchange API, the /providers response is paginated and will return a has_more key with a boolean value. You can use page and pagesize query string parameters.

The data is derived from Open311 Inquiry and the Food Bank for New York City.

  1. If any frustrated, curious, or belligerent Stack Overflow users have any questions I can pass along, e-mail me.