WorldLine Project

A visualization of daily activity data taken with a prototype iPhone app I built called HabStats.

A visualization of daily activity data taken with a prototype iPhone app I built called HabStats.

For some time I've been fascinated with the notion of recording my daily activities. I recall in 2001 as a postdoc in Toronto installing a time tracking app on my Palm Pilot (something like this), and using it vigilantly to keep track of how I was making use of my time. I felt empowered to actually have hard data, which often contradicted my subjective sense of time. I also realized that the act of recording what I was doing increased my in-the-moment awareness, but at the same time was tedious. After a month or so I eventually abandoned the practice.

Years later, after the iPhone had been released upon the world, my interest in time tracking was rekindled, and I began to devise what such a re-envisioned time tracking app would look like on the iPhone. I eventually purchased an iPhone in 2009, and an Apple developer account, largely driven by my desire to build this tool. So, in my spare time, I learned Objective C and taught myself how to use the iPhone SDK. It took a couple of years of starts and stops, but eventually I had a working app I called HabStats, with plans to release to the App Store. However, after using the app to  continuously track my activities for a week in March of 2012, I became discouraged by the tediousness and intrusiveness of having to interact with my phone throughout the day. I put my project aside once again, later giving a summary of it as a show and tell presentation at the Chicago Quantified Self meetup.

The project never died, but has pivoted in a new direction. To alleviate the insurmountable tediousness of having to manually record activities, I began exploring the possibility of using GPS, motion sensors, and RF proximity sensors to build up a data set that could be cultivated for human activity information. This is becoming an increasingly crowded problem space. There already exist mobile apps, such as Moves, that track your movements using GPS. Coupled with Apple's iBeacon platform, and motion trackers like the Fitbit, I think it will be possible to pinpoint one's activities fairly accurately. This is what I'm currently working on, rechristening the project WorldLine. Hopefully I'll be able to make progress in the coming months.

The Quantified Car

The Automatic device plugs into the diagnostics port of your car to track your driving habits by monitoring your trips, and gives you visual and audio feedback through the accompanying mobile app.

The Automatic device plugs into the diagnostics port of your car to track your driving habits by monitoring your trips, and gives you visual and audio feedback through the accompanying mobile app.

Earlier this month I began an offsite project at work, which means I'll be spending an hour commuting to and from work every day. I decided to finally get rid of my `99 VW Beetle, and replaced it with a new Subaru Crosstrek, which I'd had my eyes on for over a year. That very same day, I drove to the Apple Store to pick up an Automatic device to track my driving habits. It plugs into the diagnostics port of your car (typically located on the driver's side under the dashboard). The device interfaces with your car's onboard computer system, and can record data such as speed, gas mileage, hard breaking and hard acceleration. They provide a beautifully designed mobile app that shows you a summary of data for every trip alongside a map showing you the route obtained using the GPS in your phone.

The primary use of the device is to improve your fuel efficiency. Driving at speeds higher than around 60 MPH, as well as hard breaking and accelerating, all have a negative impact on the fuel efficiency of your car. So, by monitoring these parameters, and alerting you when you operate outside the optimal range, you can adapt your driving habits to better optimize your car's fuel consumption.  That's pretty cool, but for me personally, being a data nerd, I'm excited to be collecting this data (which should be accessible through their API) and look forward to playing with it down the road, so to speak.

Map Sandbox Project

A choropleth map showing crime incident levels in Pittsburgh census blocks. Original 2008 Pittsburgh incident data from GIS Tutorial for Crime Analysis; Census blocks from City of Pittsburgh.

Earlier this year I became interested in geospatial visualization and analysis, and so began a self-guided study of the field in my spare time, focussing on crime mapping. I recently kicked-off a project blog hosted on GitHub Pages to document my progress:

I’ve always found the best way to learn a new topic or technology is to build something, a tool of some sort, that drives the learning process and provides a conceptual scaffolding upon which emerging concepts can grow. So I’ve been working on an idea for a mobile and/or web app for visualizing a side-by-side comparison of neighborhood livability metrics. My initial focus will be on crime statistics to keep it focussed initially, but what I’m building should be extensible to other kinds of socioeconomic attributes.

I’m doing this project ‘just for fun’, purely as an evening/weekend side-project. I’m drawn to this kind of project because there is a mix of problems to be solved that engage different parts of my brain: data wrangling/modeling/analytics, infographics and UI/UX design, and software engineering.  In the short term, I’ll embark on a series of exploratory spikes as I make my way through the fundamentals of geographical analytics and figure out how to best achieve the desired features. I’ve already begun working my way through various articles and books.

In parallel to the project blog, I’m also maintaining a GitHub repo of my code. Initially I’ll be tapping into the scientific computing platform Mathematica (recently rebranded as the Wolfram Language), which is my go-to tool for these kinds of projects (I worked at Wolfram for nearly six years before pivoting my career into mobile app development). In parallel I’ll be learning python, since there are so many open-source geo-processing tools available. As a side effect, it will be useful to have two distinct implementations to verify and validate as I go along.