We really wanted to explore the data released by the NYC Government and develop a solution that would benefit all New Yorkers. We were looking for a project that would involve utilizing the skills that we developed during our course of graduate study and that could also help everyday New Yorkers.
Just as one would expect from one of the largest cities in the world, New York has its share of crime. We wanted to explore how can we learn from what has happened in the past and help incorporate this insight in people's everyday life.
What it does
Given a source and a destination, WalkSafe is able to provide alternative routes and provide an overview of historic criminal activity along that path. When providing this overview we have taken into account factors which showed high variance in historic data like time of day and month. We create a weighed composite rating of the path and show that to the user. We also show a heat-map of past criminal activities in the vicinity
How we built it
1] Data Exploration: Once we had a general notion of where we were heading, we started sniffing through public data-sets and trying to find something that we could use to create a practical tool. We looked information available and brainstormed ideas of how we could derive inferences from data and show it to the user. We narrowed down our option and picked this as something we could accomplish in this Hackathon's time frame
2] Test Local Proof of Concept We extracted the data and isolated attributes that we were interested in. We wrote small scripts to re-assure ourselves of the feasibility of the project. After success, we started developing a server and client and came up with our infra-solution.
3] Setup Infrastructure and develop a relatively mature solution We setup our instances on AWS and used AWS's Elastic-search as our data-store. We used it because of its fast retrival time and ability to do location based quarries. We started developing our client on Android.
4] Perform data cleaning to optimize our model Simultaneously, we were also looking at data and removing unimportant fields. We restructured the data to make it easier for querying and aggregation. We looked at how different field values varied over time and which fields showed high variances.
--- Sleep ---
5] Connect client and server and polishing We finally bridged the client-server gap and created an integrated systems. Once the overall communication flow was figured out, we even managed to create a client on another platform (iOS)
Challenges we ran into
-> It was difficult to model the data and we had to go through several iterations before finalizing one. -> Systems that were supposed to work out-of-box like libraries required considerable tinkering.
Accomplishments that we're proud of
-> We were able to achieve a MVP by the deadline and were able to interact with it.
What we learned
-> Data modeling, working with Mapping libraries on different platforms.
What's next for walksafe
-> More features.