– What problem is your project aimed at solving? Alternatively, why would someone want to use what you are making in your project?
My project is not necessarily aimed at solving a problem, but more an interesting tool that might turn out to be useful. I am making this tool so that it can be quick and easy for a user to check how the counties or districts of California compare on different issues (environmental, gay rights, tax reform, etc.), the party they registered for, their age, and possibly more factors (based on how the population voted, registered, or Census data). In addition to quenching a users interest I could imagine a scenario where a user was thinking of moving and wanted to know what areas were fairly well aligned with their political views to help in making the decision. Another scenario would be to quickly find areas in the state that could use more attention during campaign season based off how populations have voted in the past.
– Is your project doable given the constraints of time, our starting knowledge?
This project is doable but likely in a limited fashion. I will take a scaling approach and start with just California split into counties. I’ve still had trouble finding good sources of election result data sets but I have found fairly detailed registration data. This gives me slightly different data to map with but a good amount to work with and build with. If I have to I can just had input state wide vote results to work with the existing data. I’m also sure that my technical ability can keep up with the needs of this project.
– What interface are you imagining? Is it a web, desktop, or mobile application? What platform are you running?
This would be a web based application. A user will be able to select the parameters of the color coded map and then the map will be generated (picture below is edited from a pdf downloaded fromhttp://swdb.berkeley.edu/maps.html to resemble a zoomed in view on a map that was created to measure democrats registered versus republicans registered). If I can get all that running smoothly I would like to add the ability to change options on the fly and have the map recolor itself but that might be beyond my abilities for now.
– What data or services are planning to bring together? Be specific.
I will be bringing together voting, registration, census and other data from different cities, counties and states to be combined to create color coded comparison (temperature) maps.
– What’s your plan for getting the data?
These are files that I can find very separately (pretty much as subdivided as possible) but am still hoping to find in one place. I will also be introducing registration data gained fromhttp://swdb.berkeley.edu/. This registration data will really widen the parameters to create maps based off of. I am currently investigating census data as well as http://www.datamasher.org/ (a recent Sunlight Foundation Apps for America 2 winner) for further data sets.
– Do the APIs you plan to use actually support the functionality that you need in your application? Show how it does so.
This is where most of the complexity of this project will likely come in. I would love it if I could just write a script to grab the information I need, but it looks like I will most likely need to grab the data myself and possibly even parse it myself.
– What programming language do you plan to use?
PHP. I think server side is where I’ll be keeping all my data so that is where I’ll be doing all my computing.
– Break down the project into steps. You can end up changing the steps later, but I want to make sure you have a clear conception on what the steps are.
1) Write script to take data from http://swdb.berkeley.edu/ and return the number hex color code that each district should be colored.
2) Write a script to generate the map based off the resulting colors.
3) Create user interface to select from voter registration data.
4) Find more relevant data to use.
5) Add scripts to generate correct numbers from new data files.
6) Add data to parameters available to users.
7) Repeat from 4 with more data or more states.
– Identify areas of “high risk,” areas that you are uncertain about and/or things that might undermine the entire project. Write about how you are planning to deal with these potential problem areas.
1) I’ll likely have to move to Python if I want to allow for on the fly changing of map parameters.
2) Difficulty in finding the data sets I started out looking for has caused me to start using other data. This data is still interesting but not quite what my original intention was, I would really like to get voting data but hand entry will just prove to time consuming, so if it comes to that I will likely only feature a few options in that category. This might be solved by allowing users to update data as they see fit, but i would then have to provide an interface to allow user input.
Leave a Reply
You must be logged in to post a comment.