Open Data Hacking

 

George Lee

@keokilee

github.com/keokilee

Who are you?

  • Your name
  • Are you a developer?
  • What brought you to this session?
  • What bothers you about living in Hawaii?

"Open Data"

(What does this even mean?)

Open Data

Open data is data that can be freely used, re-used and redistributed by anyone - subject only, at most, to the requirement to attribute and sharealike.

 

http://opendatahandbook.org/guide/en/what-is-open-data/

We gather a lot of data

Open Government Data

Government gathers a ton of data. Some of it is provided to the public by law.

 

But why do we care?

The Value of Open Data

  • Transparency
  • Make better decisions
  • Improved efficiency/effectiveness of government
  • And more ...

This feels like a huge burden

Open Data is a Learning Opportunity

Learning with open data

  • Learn to code
  • Try out new technologies
  • "Intentional practice"
  • The barrier to entry is low
  • Build your open source portfolio
  • And more ...

But, someone probably did this already

How do I get started?

Data Sources

  • data.honolulu.gov
  • data.hawaii.gov
  • data.hawaii.edu

Crime Incidents

Try Fetching

Go to the documentation and sign up for a token

https://dev.socrata.com/foundry/data.honolulu.gov/9kc2-xdwh

 

Fill out the required fields

When you are done, execute:

curl -H "X-App-Token: <Your token>" https://data.honolulu.gov/resource/a96q-gyhq.json

ArcGIS

ArcGIS Layers

Let's look at the neighborhood board subdistricts.

 

You can view this on a map, but we're interested in querying the layer.

Basic Query

Click on "Query" at the bottom of the page.

 

Some magic settings:

  • Set "Where" to "1=1"
  • Set "Out Fields" to "*"
  • Set "Return Geometry" to "False" (Important!)
  • Set "Format" to "JSON"

Complex Query

Find a lat/lon on Google Maps

Blaisdell is 21.301693, -157.849541

 

Settings:

  • Set "Geometry" to "<lon>,<lat>"
  • Set "Geometry Type" to "Point"
  • Set "Input Spatial Reference" to "4326"
  • Set "Spatial Relationship" to "Intersects"
  • Other fields remain the same

Some Projects

HI Park

City Camp Hackathon,
January 2012

 

Find parking spots near UH and see when they're available.

 

Django

jQuery Mobile

Redeem HI-5

http://redeemhi5.com

September, 2012

 

See all recycling centers on the island of Oahu and when they are open.

 

Node.js (0.8)

jQuery Mobile

Backbone.js

Coffeescript

HI Traffic

Dev League Cohort 3,

February, 2015

 

API for fetching traffic incidents.

 

Node.js

Cheerio (screen scraping)

Ionic / Angular.js

Tutorial in React Native

Park Carma

Reboot the Commute,

May 2015

 

App for finding parking spots and how long they're available

 

Ionic / Angular.js

Firebase

Trash Pickup

Started February 2016

 

App for seeing when your next trash pickup is

 

React Native

ArcGIS

The Challenge

Made with Slides.com