Commuting Heatmap

I’ve made some more progress on my heatmap project using the Google Maps APIs and produced a couple cool maps of the sum of commute times for my girlfriend (to UCLA) and myself (to Long Beach) from locations across LA. 

Below are some of the maps. Scale is unfortunately not always consistent and I don’t have specific numbers (except where mentioned).


8 am Monday projected travel time. Travel to UCLA: Public Transit; Travel to Long Beach: Driving. When taking transit, it really pays to be close to your destination. The minimum is right around UCLA (and right around where we live!)


8 am Monday projected travel time. Travel to UCLA: Driving Travel to Long Beach: Driving. The scales on this and the above one are actually the same (the max deep-red is 5 hours of summed travel time). Minimum is pretty much in the same location as before, but the whole length of the 405 is pretty good. Below is the rescaled version to see detail a but better.


There are plenty more variations that would be cool to see, such as transit in both directions, or MIN(transit, driving), or MIN(transit, driving * some_pain_and_suffering_multiplier). But Google really doesn’t like this use of their API and I kept running into query limits. At >100 datapoints, I had to slow the process and add a 5 second delay between requests. This was very tedious and I ended up just letting some of these run while I went to the UCLA football game last night (Go Bruins!). I’m ready to call this project done– at least for now.

This is available on Github, though I’ve killed my API key so you’ll have to BYOK. Note: Keep the dataset small and/or delay high.

Read More

Asymmetric Multiplayer

I dream about unmade games all time time– on long runs, in the car, when playing other games– and asymmetry is one of the things that pops up disproportionally often. 

I’ve always the social aspect of gaming (though not exclusively) and many of my most-played games are multiplayer in general and esports in specific. Looking at the multiplayers games I have loved and loved-less, I’ve noticed that the ones with staying power have at least some component of asymmetry.

To give a converse example, Rocket League is a very popular, highly competitive multiplayer game based on the simple goal of “get ball in opponent’s goal”. It’s a fantastic example of how a game with simple rules and few mechanics can be hugely difficult to master (irl Rocker League, soccer, is popular largely for this reason). It’s fast paced without feeling light and every goal is satisfying. 

But I just couldn’t get into it. Maybe I’m just bad at it and haven’t put in enough time to change that. Or maybe it’s just too symmetric.

Now looking at some of the esports I have known at love– Counter-strike, Starcraft– they have strong asymmetry, which I think gives them a level of depth, engagement, and replayability that symmetric games can’t match. Every round in CS:GO feels exciting and unique, since the terrorists (Ts) have to anticipate how the counter-terrorists (CTs) are going to approach to plant the bomb, while the CTs have to stay unpredictable in order to compensate for the Ts’ defender’s advantage. Even in a direct shootout, the weapons available to each side are different, meaning they have to employ different attack/defend strategies. Then at halftime, the teams switch and it basically becomes a new game with new rules, goals and strategies for each team.

Starcraft 2 is played entirely differently depending on which races are playing against each other. A high-level Protoss playing against Zerg looks little like the same player playing against Terran. As each player learns more about what the other is doing, they adapt their approach, keeping the game dynamic (to watch and play). Mirror matches (e.g. PvP) are pretty boring in comparison, since it either becomes a rock-paper-scissors of who chose which tech path best, or a race to do the same thing better/faster than the opponent.

Asymmetry can turn non-competetive games into something innovative and exciting. Keep Talking and Nobody Explodes is the first VR party game that I’ve played that’s actually designed to be a party game (tilt brush is actually really cool to play in big groups).

Read More