Heat Seek NYC Aims to Keep the City Warm with Code

Flatiron Alums William Jeffries and Tristan Siegel want to help NYC residents turn up their heat with an app that records temperature. 

Flatiron School
May 20, 2014 · 8 min read

Introduction

After a very warm response to Heat Seek NYC at NY Tech Meetup, William and Tristan are leveraging their newly-found community to make their app bigger and better. They’ve learned a lot (everything from brand new technologies to socio-political landscapes of underserved areas) to make Heat Seek NYC what it is now. But they also recognize that, for their app to make a difference to whole communities, they’ve got plenty of work ahead of them.

Interview

Let’s start with what were you doing before you learned to program.

William: When I was a CPA, I quickly realized there were a lot of inefficient manual processes that I thought should be automated, and in fact I found it was a lot more fun to figure out how to automate accounting than to actually do it. I started writing Excel macros in VBA and realized that I could add a lot more value doing that, which is what brought me to the Flatiron School.

So what made you start building Heat Seek NYC?

I ended up writing a blog post about maybe using it help measure temperature for people in lower income areas whose landlords won’t keep the heat on. At the time, I didn’t really know anyone who needed it. But my post seemed to resonate with Tristan.

Tristan: Yeah, my mom is actually a social worker in the South Bronx. She knows a lot of clients who experience problems with temperature in their apartments. To test the app out, we were actually able to arrange to have a Twine placed in one of her clients’ apartments for proof of concept. This was a great opportunity.

And I hear they’re in even more apartments now. Where?

William: And we’re researching hardware options to make things cheap enough to scale up. Initially, we built something that was good enough for a presentation at the school. We were having a lot of fun with it, so we just kept building.

Image for post
Image for post
William and Tristan presented Heat Seek at NY Tech Meetup in May.

In your presentation at NY Tech Meetup, you used the phrase algorithmic advocacy. What does that mean?

Tristan: In this case, technology can remove hearsay associated with temperature readings by having a third party control the readings and having taken automatically without human involvement to ensure the accuracy of the data they get and make sure it holds up in court.

Cool! But how do you know what kinds of data will hold up in court and best support tenants’ claims?

The Urban Justice Center was the first organization we talked to who had a specific lawyer with a specific need and enough time to talk to us. They do non-profit legal work for people, especially in lower income areas. They have a lot of clients dealing with temperature problems and were already looking for a solution to make the process of gathering evidence more painless. They were really helpful. They advised on the user interface and what makes strong evidence in court.

Tristan: Our contacts at the Urban Justice Center were really helpful. They sent us a copy of the HPD (Housing Preservation and Development) log from the Department of Housing used by actual inspectors. We modeled the data on the PDFs we generate after that. So judges will be familiar with what they’ll be looking at. Knowing how people use the data also helped us model our site’s userflows to best fit a tenant’s experience.

Working with the Urban Justice Center was like a crash course in agile development and how to work with a client. If they said “this is isn’t what I meant, or this is what we need to show,” we had to make changes to fit what the actual needs are.

So how does Heat Seek NYC work?

William: We used a lot of technologies, but we used Twine as the heat sensor. Twine comes with an API, but the API will only send requests to your webserver if there’s a triggering event (like if the temperature goes above or below a certain threshold). So you’re limited to a fairly low number of these triggers. For our application, we needed to be able to just ping their server and find out the temperature. That information is available on their website if you’re a regular user. You can log in and just see that number, but the API doesn’t expose that. Our work around was basically to build our own scraper to scrape their site.

Image for post
Image for post
Technical presentation of Heat Seek NYC

Did you experience any particularly challenging moments when building it?

William: We were really green when we started building Heat Seek NYC. A lot of things that other people would find simple were difficult for us. For example, we had to teach ourselves to learn Devise—which is a great tool for user authentication—and then we made our own authorization system, as well. It was a good learning experience with a lot of big challenges.

You mentioned that you had to teach yourselves Devise. How many of the technologies you used did you learn by yourselves?

William: Yeah, and Flatiron people helped us. We usually talked to a TA or an instructor beforehand, and said, “Here are some of the technologies that we think would be a good fit. What do you think, and how can we learn them?”

Then it was the foundation that we learned in Ruby, and all the experiences we had. For example, there was a deploy day were Spike Grobstein came in and taught us about deploying. He’s the one who taught us to use EGINXX and Passenger.

It seems like the Flatiron School’s approach to teaching technology is not to teach every tool you’d ever need but to give you a framework that helps you identify what tools to learn next, and to teach you how to go about doing that efficiently.

Are you planning to keep working on Heat Seek NYC?

We want to scale it up to a point where we could actually make a difference in the city, we might need to migrate to a cheaper sensor technology—we’ll either manufacture sensors ourselves or find a lower cost option off the shelf. We’re currently working with a hardware specialist to figure out what the best product is, then the best way to scale it.

Cool, so you’re building out an advisory team for NYC Big Apps?

Building out the team after we presented at NY Tech Meetup was getting overwhelming for the two of us. We were inundated with support from people who wanted to work with us, contribute hardware and connections, and help out with our technical challenges. It’s been great.

What’s Next

Stack

Developed in Ruby on Rails

Deployed to Digital Ocean

PostGreSQL on the backend

Served with Passenger

Data mapped with LeafletJS

Charts from Highcharts with gem wrapper Chartkick

Scraped by Poultergeist, PhantomJS, and Capybara

NYTM Presentation

Watch the full NYTM Presentation

Welcome to a place where words matter. On Medium, smart voices and original ideas take center stage - with no ads in sight. Watch

Follow all the topics you care about, and we’ll deliver the best stories for you to your homepage and inbox. Explore

Get unlimited access to the best stories on Medium — and support writers while you’re at it. Just $5/month. Upgrade

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store