I was building a custom STUN server in Go (which is great for network coding). STUN is a protocol for traversal of NAT peers in order to try and establish a p2p link between two private hosts. It's part of webRTC, which by writing a crappy version of, I was trying to understand better. It was awesome once I saw my two private hosts become peers via the public internet. UDP hole punching is pretty neat!