2019-01-19 - Improvisational Programming
Last year I took a couple improv classes and I have to say improv is very enjoyable. It's fun to just go somewhere and be silly for a couple of hours while trying not to think too hard. It's also interesting to me how improv is very similar to programming in some respects but completely different in others.
One of the reasons I signed up for improv is because I realized that a lot of my activities outside of work involved computers and when your work also involves computers that's a bit concerning. Improv seemed like it would be very human focused and not involve computers at all. I spend a lot of that computer time programming and the process of programming involves a lot of planning and refinement. You can think of a program as a script that the computer follows the best it can. As you develop that script you are repeatedly fine tuning it and making sure that it works precisely the way you want it to. Improv on the other hand skips the whole scripting step. You go up there and you just do stuff with no chance for planning or refinement. Once you are done a bit it's done forever and there's no real mechanism to redo it. Sure you can do the same game again and maybe even get the same prompt but since you didn't write down what you did last time it's hard to repeat it while also improving it. If you make a mistake while programming you go back and edit the code until it works. If you make a mistake while doing improv you just have to roll with it or run away. So in that regard programing and improv are almost opposites.
That being said the actual environment of programing and improv are both vary similar. Most programs start with the programming defining some data structures, describing what that data represents and what actions can be performed on that data but those concepts are all virtual. The data only means what it means because that's what the programming says it means. From the computer's perspective it's just a bunch of 1s and 0s and there's no difference between the temperature of a stove and the speed of a car. Improv works in much the same way with most of the scene being imaginary. The audience knows you are sitting at a table because you told them but there isn't actually a table there. You describe where you are and what you are doing. Both improve and programming require you to keep track of ideas that don't have any physical manifestation.
It's weird that I signed up for improv as a way to escape computers and programming but ended up finding that programming helps me improv better because it got me used to the idea of working within a virtual world.
Comments: