Sharing code is like sharing minds. It is every bit as intimate as a relationship with a lover — moreso, perhaps.
Unlike the things we share in other areas of our lives, there is no option for dishonesty, no artifice in which to hide. By your comments, patterns, and bugs, your deepest and most intimate truths are exposed. The very working of your mind is laid out in the editor’s colored monotype for all to see, tracked in meticulous detail by your source control system, critiqued in cold honesty by the heartless computer.
It is possible to develop a deep love or profound disdain for someone, simply by reading their code. You can get a sense of intellects far above or beneath your own. Our minds laid bare in the pursuit of beauty and magic, yearning for appreciation, correction, growth. I am convinced: there is no other way on earth to achieve this level of naked vulnerability. The connection is frightening and life affirming, powerful and cruel, lovingly cold.
Perhaps it is right that programmers seem to give up a piece of their humanity in the pursuit of their craft. What we get in return is worth the price.