In their little self-made universes, programmers are like little gods, small superheroes or tiny dictators who dominate and rule their own worlds. Like the Greek gods they may possess superhuman powers, but also have more or less innate human characteristics. In his world a programmer is a superhero, because programmers are the all knowing deities that know everything, every object, every name and every relationship in their programs. They have the superpower that allows them to peer into the inner working of their programs and to change every aspect of its behavior. In their tiny little universe (at least in principle), they are the superheroes that command everything, and they are the creators which have created everything out of nothing. They create worlds and universes. They say when something should start or end, and the tiny universe complies always (at least in principle..). They are creating a reality where they are in charge and everything works the way they like.
The problems begin when multiple programmers must work together, or if one enters the world of another: every programmer wants to create a world which works the way he likes, which is a bit different from the worlds his colleague likes. During the clash of the little gods and small dictators, opinions collide, hate and envy arise, and sometimes it comes to an epic struggle for the control of the universe. In worlds from other “deities”, the tiny gods lose their superpowers immediately. They are no longer the superheroes. Therefore programmers like to built everything from scratch: they are like tiny little gods who tear down a universe to create a new one, in order to regain their superhuman strength.
(The image of the greek god Poseidon is from Flickr user Dunechaser)
I was just browsing around and ended up reading this post, hah that is great. I really never thought of it that way but it’s so true.
And when things get too chaotic and crazy, you just delete and restart. :)