Forest Fires
It’s looking kinda biblical outside today. My house is far from any active fires. But the smoke is blocking the sun, turning the whole sky Doomsday red. The photos don’t quite do it justice: it’s almost as dark as night, and the sky is glowing.
New Job at Roblox
I got a new job! After 5 amazing years at Expedia as tech lead of the Voice team, I have accepted a new role at Roblox. I will work on search and recommendations. In the nick of time, too!
Chain of Command
In Visualizing Social Networks, I found that the Minimum Spanning Tree (MST) is a scalable way to visualize large social networks. But it has some problems… Meet a close cousin of MST, the balanced, degree-constrained Arborescence. A single overall leader is chosen using the Harmonic Centrality algorithm, unlike MST which is more decentralized. The MST…
Archiving ScumZone.com
ScumZone.com is a website I made for SCUM, a supermax open world survival game. The online multiplayer island mixes elements of The Hunger Games and Escape from New York. But it’s too big. Players have trouble finding each other. Player-vs-player action is rare, holding back the fun potential of the game. To address this, I…
Visualizing Social Networks
I visualized my gaming clan. As the size of the group has increased, the methods for drawing it have evolved. These diagrams are made using Python, NetworkX, and Matplotlib. The vertices of the graph are people (Discord users) and the weights are 1 / t, the time they spent together in voice chat. To make…
Canada Election 2019
For Canada’s federal election on Oct 21, I published AnyoneButTrudeau.ca and AnyoneButScheer.ca. The pamphlets are a follow-up to a similar effort from 2015. The websites are backed by an open-source election forecasting model. The model correctly predicted the overall election outcome: a Liberal minority government. Of the 338 individual districts, the model got 85% of…