> That's where I got my first taste of programming - writing a PID controller for a tank turret so I could point the tank's gun using my mouse.
Yeah, same here! I had done a couple of simple personal Flash games previously, but Garry's Mod is where I really felt like I cut my teeth on programming. Doing Wiremod/Expression 2 taught me PID controllers and some basic linear algebra, and after having helped some friends debug their code, taught me the importance of style and good practices.