Giter Club home page Giter Club logo

311's Introduction

311 app Build Status

Docker Image

The city now has a pretty good site for vizualizing the 311 (and other open data) so you should check it out here: https://explore.nola.gov/

Also, you can submit a 311 ticket online now! https://www.nola.gov/311/

This purpose of this project will now focus on working with the 311 data for data analysis use cases.

As a citizen,

  • I want to lookup info about my 311 request (by entering a reference # received from 311 or searching my previous history).
  • I want to visualize ticket types with bar charts (counts) and pie graphs (percentage).
  • I want to visualize the data on a map around me and filter and sort by ticket type, open/closed, date range.
  • I want to browse curated datasets before exploring the data myself (maybe showing less data that's more recent data will be useful; maybe by sharing my location, I can see more relevant data on a map zoomed to my address).
  • I want to see open requests near me.
  • I want to submit issues that integrate with the City's system (the city 311 system can notify the user).
  • I want the ability to choose the amount of information to share about myself (email required to submit ticket?)

Other nice to have features:

  • Commenting and upvoting on issues nearby me
  • Get notified about issues created by others (star/follow)
  • See filter of all issues a user has submitted (email required)
  • Map feature: Request per district (styled where color gets darker for more requests)
  • Frequency: analyze the frequency of 311 incidents (median time, types that stay open the longest, etc)

prerequisites

Ensure you have installed Node.js and Docker.

database setup

For local development, you can use Docker to setup the database

docker-compose up -d db

Then you can run the setup.sh script to download the data and load it into the database.

./setup.sh

If you are loading the data into a remote database, use environment variables to tell the script where to load:

NOLA311_DB_USER=nola311 \
NOLA311_DB_NAME=nola311 \
NOLA311_DB_HOST=c2rp0kujqp.us-east-1.rds.amazonaws.com \
NOLA311_DB_PORT=5432 \
./setup.sh

app setup

For local development, you can use Docker to run the application

docker-compose up -d app

some sample queries on the database

Login to the db with psql psql -h localhost -U nola311 and run some queries:

-- what are the top issues that people call about?
select issue_type, count(*) as num_calls
from nola311.calls
group by issue_type
order by num_calls desc;

-- which council district has the most calls?
select council_district, count(*) as num_calls
from nola311.calls
group by council_district
order by num_calls desc;

-- how many pothole calls have been opened and closed this year?
select ticket_status, count(*) as total
from nola311.calls
where issue_type = 'Pothole/Roadway Surface Repair'
and ticket_created_date_time >= '2018-01-01'::date
group by ticket_status;

--- dont forget to checkout the views
select *
from open_tickets_stats
where issue_type = 'Catch Basin Maintenance'
and year_created = '2018';

311's People

Contributors

marinamcgrath avatar mrcnc avatar nihonjinrxs avatar parkeristyping avatar siakaramalegos avatar valkyry3 avatar

Stargazers

 avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

311's Issues

possible new column error?

Loading data from /Users/mcenac/cfno/311/data/nola311_raw.csv
This may take a minute...

ERROR:  extra data after last expected column
CONTEXT:  COPY calls_tmp, line 2: "101000847991,Street Light,08/21/2018 02:03:55 PM,08/28/2018 09:38:35 AM,Closed,Issue: Outage Or Cycl..."

install remaining database objects

neighborhood stats

It would be useful to view the following stats for each neighborhood:

  • Total number of open tickets
  • Total number tickets by type
  • Rank median time to close across all neighborhoods
  • Median time to close (across all, and by type)
  • Top issue type
  • Most recently opened tickets
  • Most recently closed tickets
  • YTD number of closed tickets

create information architecture for the website

There is another more general problem that we are trying to solve. There is a lot of information about the 311 system, the Department of Public Works, and the Sewerage and Water Board that is spread over multiple sites. We want to bring all of that information together on a website to provide a summary of useful information that will help citizens understand infrastructure issues more deeply. For example, I think we could point how many potholes the city fixes and show how much that costs. That information is tracked and can be viewed on datadriven.nola.gov

The information architecture should be structured for usability. It should identify the ways the content of the website should be labeled and organized. There's a lot more to it and you can read more here.

open requests near me

As a citizen, I want to see open issues near me so that I can determine if someone already reported the issue.

To find issues near me, I can enter my address, allow the browser to access my location, or zoom into a map. Open issues should be filtered to only include results for this year.

load data daily

Create scripts to load data into the deployment environment

display aggregation info

As a citizen, I would like to view interesting aggregations on the 311 data.

Number of issues per request type
Most recently open issue
Most recently closed issue
Percentages of time spent open (median & histogram)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.