Ingenious Review

In America there is no shortage of digital inventors, tinkerers, hackers, and dreamers. Companies form around the most ridiculous ideas, test them in the marketplace, often with unpredictable and surprising results. It’s an exciting time for innovators in the information age.

Go back one hundred years and you’ll find a similar state in the automobile industry. Look at this surprisingly long list of defunct automobile manufacturers!

Seven by Illuminati Motor Works, one of the teams competing for the Automotive X Prize
Seven by Illuminati Motor Works, one of the teams competing for the Automotive X Prize

Is there a peculiar combination of cleverness, determination, and blind optimism that compelling Americans to push the boundaries of convention and create great things? Or has America lost its ability to hack on cars forever?

Edison2's Very Light Car
Edison2’s Very Light Car

Jason Fagone’s book Ingenious: A True Story of Invention, Automotive Daring, and the Race to Revive America follows several teams competing to win the Automotive X Prize, a $10 Million cash award to someone who can demonstrate a production ready vehicle capable of traveling 100 miles at 100 MPGe or better. The contestants are not skunkwork projects at GM or R&D teams from Ford. They’re people building cars from scratch in their garage. They’re small racing teams using their expertise to increase MPG instead of MPH. There’s even a team of high school kids from West Philly.

Working in manufacturing for most of my career, I was not surprised to find there are still many car hackers out there. Without spoiling anything, the most frustrating part of Ingenious is how well the teams were able to do and how little anyone seemed to care about what they were doing. Government and industry pays lip service to the prize and the ingeniousness of the teams, but fuel economy growth in vehicles is still flat. I don’t think anyone believes industry will be held to the proposed standard of 54.5 MPGe by 2025.

But industry put at least $1 Million into an app that lets you send only the message, “Yo” to your friends.

I enjoyed Ingenious. It pairs very well with My Life and Work by Henry Ford, which captures the spirit of the early 20th century automobile industry (Note: Ford’s autobiography is a manufacturing masterpiece, but skip the anti-Semitic chapters that start around #12)

VizWar @ Philly Tech Week 2014

Fellow RJMetrician Austin Lopez and I competed in a data visualization contest/hackathon called VizWars at WHYY last night. It was hosted by Acumen Analytics and Tableau.

NCAA 2014 Dendrogram
NCAA 2014 Dendrogram

The goal was to come up with the best visualization from either NCAA Basketball tournament statistics or Earthquake data they provided. This is what we came up with.

The D3 animation shows the progression of each round in a clustered dendrogram. Each team is colored to make it easier to follow their path through the tournament. We won Best Pro Team, although we would have loved another 20 minutes to get more things working. Our goal was to set the line thickness to various game metrics like point differential, # of fouls, turnovers, etc.

Out of 5 teams, we took the title of Best Pro Team (of which I think there were only two).

Announcing Lineage: A Family Tree Data Expression Engine

Lineage screen shot

Last week at the Philly JS Dev meetup, I demoed a new project I’ve been working on called Lineage.

It all started as a way to try and visualize all the research my Aunt Peggy has done over the last 50 years. Using D3, I was able to build a way to search, filter and analyze thousands of family relationships in a network graph. It even lets you start at a given year and watch the family grow and connect as the years tick by.

See a live demo of Lineage here.
I’ve open sourced it on github.
My slides from the Philly JS Dev Meetup

I wanted the project to be useful, but also stand alone as art, so I kept the user interface as minimal as possible and included an option for music during play mode. If you like the music you can download it on Soundcloud. I’m happy with how it turned out. An enormous amount of gratitude goes out to Peggy Haley for doing this research over the last 50 years.

Note for anyone who is actually in the tree, I have done very little in the way of making sure this data is accurate. If you find anything incorrect, email me and I’ll try and get it fixed in the future.

Best Things This Year (2013)

Anecdotally, it seems like a lot of people shook up their lives in 2013. I certainly did. Here are the best things that happened to me in 2013.

1. RJMetrics – In March I started working at RJMetrics, an e-commerce data analytics firm in center city Philadelphia. Leaving Garvey Corp was a difficult decision, but being a developer at of the best SaaS data visualization companies in the world has been amazing.


2. The Bulldog Budget – I worked with Philadelphia City Controller candidate Brett Mandel to implement his vision for the city’s open data future. We built a visualization tool using D3 and MySQL that gives both a high level view of the General Fund budget, but still allows you to drill down to individual transactions. A lot of people got excited about it and I think it made an impact in Philadelphia. It also influenced similar projects in Italy and Oakland, California.

Treemap of the Philadelphia General Budget
Treemap of the Philadelphia General Budget

3. Coffeescript – I was skeptical at first whether Coffeescript was a worthwhile abstraction from Javascript. After 9 months of using it at RJMetrics, I’m a fan. Here’s why:

  • Cleaner syntax: No parenthesis, braces, or semi colons. The time I save writing console.log instead of console.log(); has been worth the switch.
  • Improved workflow: Continuously running the Coffeescript to Javascript compiler alerts me of stupid mistakes (ie. ones that won’t even compile) faster than finding them after I’ve loaded the browser.
  • Existential operator: I can’t count the number of bugs I’ve fixed with one character are due to Coffeescript’s great ? operator, which checks to see if it’s null or undefined before proceeding. For example, if in javascript you previously did this:

    if (player != null) {

    In Coffeescript you just write:


  • Comprehensions: The docs say you almost never have to write a multiline for loop and they can be replaced by comprehensions. For example:

    for (player in players) {
    if ( < 0) { player.kill(); } }

    In Coffeescript you can write:

    player.kill() for player in players when < 0
  • I'm looking forward to getting better at Coffeescript in 2014.

4. AngularJS - I don't want to develop another interactive UI without AngularJS.

5. Bought this swingset from craigslist - With the help of my friend Mike and my father in law, we disassembled, packed it up and a U Haul, and reassembled it in my back yard. I'm amazed it went back together so well.


6. Read 13 Books - My morning commute afforded me more reading time. Here's what I did with it.

  • Bonfire of the Vanities by Tom Wolfe
  • Ready Player One by Ernest Cline
  • Look at the Birdie by Kurt Vonnegut
  • The Trial by Franz Kafka
  • A Beautiful Mind by Sylvia Nassar
  • Boys from Brazil by Ira Levin
  • Game of Thones (books 1-3) by George RR Martin
  • Life of Pi by Yann Martel
  • Timequake by Kurt Vonnegut
  • How to Win Friends and Influence People by Dale Carnegie
  • Thinking Fast and Slow by Daniel Kahneman

7. Public Speaking - I got way out of my comfort zone this year and did some public speaking at Ignite Philly and Technically Philly's Civic Hacking Demo Night.

8. Built the Gonginator

9. Spark Program - Some coworkers and I participated in an apprenticeship program for Philadelphia school kids where we spent 2 hours a week with 8th graders interested in programming and computers. Together we built a game!

That's as much as I could remember from 2013. Check out my lists from 2012 and 2011.

My Ignite Philly 11 Presentation on Data Visualization

Update: Here’s the video of my presentation

Last Thursday I gave a talk on Data Visualization at Ignite Philly 11. I was nervous as hell, but the encouragement you get from that crowd is amazing. The organizers (David, Geoff and Adam) did a great job and it could not have gone smoother.

Me speaking at Ignite Philly 11
Photo by Kara LaFleur

Here are my slides with some additional commentary that doesn’t fit into 15 seconds.

First, a few fun facts about my talk:

  1. I never tested it in Powerpoint. I meant to, but I didn’t.  I just wrote it in Keynote, exported it, and prayed it would look ok.
  2. The next day, James Miller complained on twitter how much he would have liked to have been there and didn’t realize there was a woman there chanting his name.
  3. I tried to put on one of Brett Mandel’s campaign tattoos before the presentation, but it wouldn’t stick, so I just used one of his giant stickers instead.

Why data visualization works and how it can save the world
I tried to go for big problems in the talk. Earlier versions included a number of interesting sports visualizations, but in the end I felt they detracted from my overall thesis, but I snuck one into my opening slide which shows NL East games above 0.500 for 2007. See how far the Phillies were out of the race at the end of the season but ended up tied for first on the last day.   They beat the Nationals that day 6-1 and the Mets fell to 2nd place.  I use a version of this on my example page for evidensity.js.

primitive societies don't have math
The info about pre-math societies came from the excellent book Here’s Coming at Euclid by Alex Bellos. In chapter 0 he talks about how primitive societies make decisions without mathematics and why we eventually needed math. This slide also gave me a chance to post a picture of Phil Hartman’s Unfrozen Caveman Lawyer. RIP.

ignite-philly-slides.003 Making snap, life and death decisions based on ratiosThis was my least favorite slide and of course, it’s the one shown in most of the pics I’ve seen of my talk. It’s just a tree with fruit and a lego guy about to get jumped. I used it to represent why we need the ability to make quick decisions in the wild and I struggled with what to use here.

ignite-philly-slides.004 the brain eye system
The 10-20Mbs figure comes from Ed Tufte and a UPenn study. Originally my talked was called, “How Data Visualization Works” and then I realized I didn’t have any idea of HOW it actually works. I only know WHY, because we’ve evolved over millions of years to make life and death decisions based on the ratios of visualized objects. So I changed it.

The numbers on this page represent the area in square pixels on the next slide.  I used it to show how much faster you can pick out the largest and smallest values when they are visualized as shapes.

ignite-philly-slides.006I missed out on a good eye-chart sobriety test joke here.

Hopefully at this point I’ve convinced you of the plausibility of why dataviz works from an evolutionary standpoint, and that we’ve been given this great gift of receiving and processing visual data. This slide is call to action. It says, “You have a superpower and you don’t even realize it. Let’s use it for good.”

My whole talk was a just a way to show this slide to anyone who never heard of Minard’s masterpiece, Napoleon’s March. Seeing it inspired me to think more about what data visualization could be.

I needed more than 15 seconds so I took Pam Selle’s advice and doubled up on the slide.

I probably should have disclosed that I’m working for RJMetrics now, but I only had 15 seconds to get through each slide! In fact, I actually have to start talking about this slide about 3 seconds before it shows up in order to make it through. It’s a picture of our awesome new UI we’ve been working on which should be out soon.

This is a screenshot from my macbook air’s terminal window. It only shows 0.0026% of the data in the Philadelphia General Fund Budget.

This is an exploded view of Mayor Nutter’s budget summary. I think he deserves a lot of credit (along with Mark Headd) for opening up the city’s data, but I wonder how many people read this summary.

The infamous Bulldog Budget, powered by d3.js and a bit of Ruby and mysql. If you’re an advocate for open government and open data, you should really consider voting for Brett Mandel in the Democratic primary in May. Read what Technically Philly wrote about the Bulldog Budget in January.

“Yeah James Miller!” I loved this map from the 2000 census and had no idea until recently it was by James Miller, brother of my friend and journalist Jen Miller. I think the woman chanting his name was just swept away by the enthusiasm of the night, but who knows?

On August 14th, I stopped by Azavea to hear some guy named Mark Headd give a talk on open data. The same night, Casey Thomas, now at Axis Philly gave a presentation on an app that tracked voting records and lobbying expenses together. But it was Tamar Manik-Perlman’s map showing the impacts of Pennsylvania’s voter ID laws on poor Philadelphia neighborhoods that blew my mind. Here was the perfect case for how data visualization can help illuminate a problem. People like me and most of you reading this live in a world where getting an ID is not a problem. It’s difficult to imagine life being any other way. You can concede that maybe there would be some people affected, but seeing on a map that in some neighborhoods over 60% of voters could be impacted was shocking. I don’t know how much of an influence it had on the eventual delaying of the law, but it had a huge one on me.

I rehearsed this slide many times and just could not fit it into 15 seconds, so it got double duty as well.

I originally had this image here, but I had to purge the sports visualizations. This slope graph is literally sickening. We spend twice as much for middle-of-the-pack results. The only downside was that I’m sure it was impossible to read on stage at Johnny Brenda’s. If you like it, check out this great article on slopegraphs.

I gave my conclusion over the next two slides and didn’t mention the content at all.

Seeing pictures of a devastated city make us more likely to help others and my conclusion was that data visualization taps into those same parts of the brain that motivate us. They create the will and courage to act. This is a tool we all posses no matter where you come from or what your education level is.

Admittedly, the last two charts could have looked a little better and I wish I had more time to either get better ones or recreate my own with the data, but I ran out of time.

It felt more powerful to just talk and let them speak for themselves and I think that was the right call.

I had an absolute blast and loved doing IgnitePhilly 11. The other speakers were fantastic so check out Technically Philly’s recap.

Media Roundup for Mandel Bulldog Budget

The reaction to the Mandel for Controller Bulldog Budget has been amazing! Here’s a list of all the places it was mentioned online.

Technically Philly – “Use the coolest, most comprehensive City of Philadelphia budget visualization you’ve ever seen”

Made it to story #4 on Hacker News with over 60 comments

Tons of activity on twitter

Reddit Discussion

Flying Kite Media

Axis Philly video tutorial


City Paper

And a big thanks to Indyhall for hosting the launch event!