Innovation Session: Pothole-No-More

I live in San Francisco and bike everywhere. It is the fastest and easiest way to get around the city. There are a few things that make the life of bikers in the city difficult though; hills, rain, cars & road conditions. Tonight I’m going to invest some energy into a creative solution to one of those – potholes.


There seem to be two steps in the process of a pothole getting fixed. First, the pothole has to be identified by the necessary party, second, a crew needs to show up with materials to fix it.

Part One: Identifying potholes

San Francisco is actually pretty advanced in how it deals with potholes. The public works department lets you call into 311 where you can report a hole and they will add it to a queue to get fixed. Unfortunately like most things the government does, speed is not their strength. On the other side of the state in San Diego, one citizen got so frustrated after repeatedly calling about a pothole that he eventually fixed it himself.

Part Two: Fixing potholes

Apparently pothole fixing presents a few limitations. The first problem – like that of any government funded operation is budget constraints. The second is that some potholes get fixed hastily and then break again (sounds like software). Apparently the city would need to spend upwards of $40 Million per year to keep the roads in even decent condition. We currently don’t have the money and raising taxes doesn’t always go over well.

An individual pothole can cost between $20-40 to be properly fixed which isn’t a ton on its own, but apparently there are over one million potholes in San Francisco. Woah! The causes include traffic, water & damaged sewers – all of which the roads are repeatedly subjected to – so new potholes pop up every year.


Combining the citizen servant-hood of the aforementioned San Diegan, Primo Vannicelli, with mobile infrastructure and a micro-payment bidding system I’ve come up with ‘Pothole-No-More’.

Potholes are something that affect people personally and specifically. While a resident might have a hard time agreeing to a tax increase for a general repairs project – they would feel closer tied to a specific pothole that they encounter on their everyday commute. You know – that pothole you always have to dodge on your way home.

The system lets you use your mobile phone to capture the location and a picture of the pothole which is then submitted for processing.

Google maps on an iPhone?Instagram filters recommended

We then categorize (read: mechanical turk, image recognition &/or task rabbit) each pothole to come up with a project completion cost. Once the pothole is processed it goes live on the site where anyone can donate money towards it getting fixed.

No that is not VLC player - though VLC does cost $0 - bless them.

 Once the full amount has been donated the funds are routed to the city to be repaired by the appropriate team. ALTERNATE ENDING: we take the money, send a crew to get supplies and fix the pothole ourselves using the cover of night and ninja outfits to avoid arrest!


I can think of a number of ideas to iterate on as this idea gets traction.

1) Potholes get cheaper to fix the more you fix – economies of scale and all. If this gets popular enough we can use our friend math to optimize the best route for repairs and batch the fixes in an appropriate manner.

2) With this system potholes in areas of high traffic will likely get fixed sooner which is good. There might also be a bias however towards potholes in more affluent areas being fixed – as people living there will have more discretionary income to donate. We could explore charging a slight premium on potholes and using the excess money towards fixing potholes in other parts of the city. We might also need to explore using some of those funds for app maintenance.

3) Some cities won’t be on board with a project like this. Tough. If you’re not getting arrested or sued, you’re probably not disrupting hard enough. Working with local governments will certainly be important though – most will likely be fine having citizens provide extra money towards public projects – but the implementation will look different in every city. Having local champions help get the app introduced to the city will have to be a part of the growth hacking plan.

4) Army of robotic pothole fixers. Automation for the win!

5) Map-my-ride feature. Use the app to automatically map your frequent commutes and dedicate a set amount per month towards fixing any potholes on that commute line. Don’t just fix the problem – get proactive and make sure new potholes are addressed quickly before they get out of hand.

Final Note

I am not currently planning on doing this project – tonight was more of a thought exercise. If it sounds interesting to you though – you have my blessing to follow through with it.

If you want to pitch in but are looking for other people to help – contact me using the link above and I’ll connect you to whoever else replies. Safe biking!


Innovation Session: Best NFL Team

I am an Atlanta Falcons fan. This is by no obvious reason, I have lived in California for most of my life. A few years ago, though, I had the pleasure of working with Tony Gonzalez, aka. #88 & Tight End of the Falcons. Since then I have been rooting pretty hard for them. I want him to win a Super Bowl ring – he is a good guy and one of the best players the sport has seen. No one deserves it more.

The Falcons are having a good year, they are 11-1 and tied for first place. But, unfortunately they are getting less credit for it than they deserve. Despite their record, most commentators are less than optimistic about their playoff hopes. I hear a lot of that around the office as well. We can’t get no respect.

Tonight I will attempt to use a few of my data skills to visualize the NFL as a network graph to see it lends any strength to my opinion. I am hoping that by setting up the teams as nodes and games played as edges we’ll be able to see that the Falcons are clearly the best team in the NFL. If not – I guess I’ll have to be an honest data guy and trust what I find.


  • Get clean data on the NFL 2012 season
  • Vizualize it as a network graph
  • Tweak the weights and layout to add context
  • BONUS: getting the Gephi image API to work so the nodes are the team logos/helmets

Step 1: Get clean data on the NFL 2012 season

Getting clean data is always a bother – after searching for a short bit my best bet seems like ESPN. This page looks fairly clean right off the bat and I trust it’s accuracy (ESPN NFL scores & schedule).

A bit of cleaning and I have a nice edges csv – ideal for importing.

Step 2: Vizualize it as a network graph

The visualization tool I’ll be using today is Gephi, an open source tool that makes beautiful displays. (Trivia: LinkedIn hired one of the lead devs behind Gephi and he now gets to do cool things with them)

I ran into a bit of an issue with the fact that teams in the same division play each other twice. I counted each game as a directed edge with the weight being the diff in game scores. Unfortunately Gephi doesn’t support multiple edges between two nodes. Bummer. I think we will be ok though – if two teams play each other more than once, the two diffs will just combine into a single edge. A win & loss of equal amounts will cancel each other out.

Now I’ve loaded the data into Gephi – here is what I’m seeing on first pass.

Viewing the NFL as a network graph

Step 3: Tweak the weights and layout to add context

My goal is to find the team that is best by seeing who has won the most games by the most points against the toughest teams. So in theory, more wins is good, but wins against teams with low records isn’t as good as wins against teams with large records. This seems like a perfect application for something like Google’s PageRank – I’m not sure if I’ll get that far tonight though.

The first thing I’ll do is apply a weighted in-degree to the node size. This looks at the amount of points the team beat it’s opponents by. Basically a seasonal point differential.


This highlights the teams that have beaten their opponents by the most points. Bigger team names = bigger victory margins. Atlanta isn’t doing too well here – they have been winning by small margins all season. The New England Patriots on the other hand had a few weeks where they made other teams look like youth teams as they ran the score up. That helped my fantasy team a ton on Thanksgiving.

Next up I am going to combine this with the total win-loss record. Using color to distinguish the teams with the most wins.


Now things are a bit more interesting. Teams in red have the most wins while blue teams have the fewest. New England might have a large point differential but they are only 9-3 right now, so they are in light purple.

What I want to do now is look at the opponents the team played. Winning is important, but winning against good teams is more important. We have already established a color pattern with blue teams being those with less wins (read: easy teams) and red teams those with more. Lets apply this to all of the edges to see what our strength of schedule looks like.


This one is a bit revealing. We can see some bright red lines between a few teams – Houston & Green Bay, San Francisco & The Giants, Denver & New England. These are the games you probably made sure to watch – the clashes of titans. My Falcons aren’t in many of those – the  games against the Saints were great – but New Orleans is a purple team at best this season.

I want to do one more thing – apply a layout algorithm to this to place teams closer to opponents they played more often.

Of the power house teams in red, a few are much closer together, particularly those in the top left of the graph. Meanwhile Atlanta is very far to the bottom right – basically they were shielded from most of the good teams in the NFL and only played blue to purple teams.

Conclusion: Atlanta has done well this year, but their wins have been small and their opponents haven’t been the toughest. They have a shot at the title, but it isn’t an easy road ahead.

I’m running out of time for tonight’s innovation session – but I want to change one last thing. Just for style I’m switching the color scheme to ATL colors; black & red. There are still a few weeks left in the regular season, including our upcoming games with the Giants – but I think like myself most Falcons fans are most concerned with our upcoming playoff games. We can use this to remember which teams it will feel the best when we beat on our road to victory.


Anatomy of a Facebook Business Page

Reposed from the Hearsay Social blog – See the original post here

One of the things I love about working at Hearsay Social is the freedom to explore new tools and methods of analysis. I recently spent some time digging into the open source data visualization program Gephi and decided to share some of the insights I came across.

Many marketers still measure the value of their social media pages by a count: either a count of fans or a count of engagements (likes, comments, etc.). Unfortunately, the insights provided by these measurements are nominal. If you want to know the true value of your fans or how your social media communities are contributing to real ROI and sales results, then these basic counts should be a start, not an end.

We have already learned that not all fans should be valued equally and that local fans can be worth as much as 40x that of corporate fans. There are additional ways to analyze a page – one of which is by viewing the composition of its fan graph as a network.

Below is an image representing Hearsay Social’s Facebook business page. The data used to create this visualization is all of the public posts, likes, and comments over a one-year period. Each point on the graph represents a fan and the edges (curved lines) between them represent shared interests as determined by common stories they interacted with.

It’s not just a pretty graph. After analyzing the image, here are a few important takeaways our data team has come up with:

  1. Your entire fan base is actually made up of many smaller groupings.
    At the time of this writing, our Facebook page has nearly 5,000 fans. You can see from the image above that those fans make up a number of smaller clusters – about 20 by my count. Each of these sub-groupings has a distinct personality, set of interests, and motivation for interacting with your page. Understanding more about your own Facebook page’s sub-groups will let you better segment and target your messaging to increase its effectiveness. This is a very common practice in email marketing but it has not yet seen widespread application in social media outside of some very basic geographical targeting.When thinking about your business, you can probably think of a few sub-groups of customers. Are each of those present on social media? Are some more prevalent than others?
  2. You have power fans and influencers — each with their own personality.
    Below is the same graph above, filtered by the most active fans of Hearsay Social. You can see that while there are a dozen or so power fans, they do not all share exactly the same interest. Much like the sub-groupings, each power fan has their own reason for interacting with your content. Many of these power fans are in fact strong representatives of a sub-group. Identifying these people can help you better understand how to effectively communicate with the sub-groups they share the most in common with.
    Have you identified your power fans? Do you know which sub-groups they represent?
  3. Clusters of fans that have interacted with the same content can help us infer social graph connections and use Facebook’s EdgeRank to our advantage.
    Below is a magnified image of a single sub-group. Digging deeper, I traced down the common interest that these fans share: a blog post about Starbucks CEO Howard Schultz visiting the Hearsay Social office.  Most of them aren’t common ‘likers’ of content which makes us suspect that their having seen the content – and thus liking – was in part caused by Facebook’s EdgeRank. (Facebook doesn’t show every post a page makes to all of its fans but tends to show it more to people who’s friends have interacted with that content.)

    I’m not certain that anyone in this sub-group are Facebook friends with each other, but I suspect a few might be. In this case, we only have a few data points for this particular sub-group; the more data we have, the more accurate our predictions will be. (By the way, if anyone listed below happens to be reading this, leave a comment below to let us know if my hypothesis is correct!)

In conclusion, thinking about your social media connections as merely a number greatly limits your ability to understand them. The more complex your analysis model, the better your understanding will be. Social media is all about connections and networks, so one of the best ways to analyze and learn about your fans is by viewing them as an interconnected network graph.

Do you notice anything else interesting in the images? I’d love to hear your observations.