How to treat programming with illogical seriousness
Developers are gods, not typists how dare you
What is the difference between a gorilla and a computer scientist? The gorilla knows it can’t code. Animals can’t write software because they are stupid.
Software is poetry. Software is engineering. Software is the highest form of art - we create something out of nothing. Or a spreadsheet and a Word document and a conversation. Code comes closer to perfection than any other field because it combines the practical with the theoretical. Dream up something; a developer can likely make you poor by building it.
Developers are monks, magicians, artists. Code is not typed; it is created out of thin air. Computers are not practical tools; they are inferior approximations of the raw beauty, staggering really, that is in a programmer’s mind. Theories are beautiful until and occasionally after they encounter ugly facts. A developer is the ultimate generalist: they switch domains while learning all the technical details underneath at the same time. They are not hacking away at approximations based on a limited understanding. No, it is you who does not understand.
All software work should be treated with dead seriousness. Embedded software that runs pacemakers and a CRUD application for company intranet blog posts are both sacred work products. Programmers should view themselves as a sort of clergy that provides the secrets of the universe to a lower form of life. When new software ships, it is like a new species being born.
Until that species stops working, you must release another species, like evolution, but faster and less diverse. But older software is not poetry; you do not study it because it is old and, therefore, bad - ew gross. Only new software is art and sacred. The only sacred text to study is that from a new prophet, I mean hacker, who has written a different templating library with an even cooler name. Wow, such powerful art.
Software developers should consider themselves superior and be treated as superior, forgoing all humility. Never mind that if you walk into any business and ask them what they think of the software they use daily, their responses are roughly the same: I hate it, it slows everything down, I can’t do this one thing that I need to, do you know anybody who works where they build this, do you have their address, also there is no documentation, why is it always changing, the older version was better, I hate this crap, why are you crying.
The peasants just don’t understand.
Paid subscribers view additional commentary about this post, with links to useful resources on how to treat your work. If you are reading this and thinking, “well it depends,” or “this is a gross oversimplification,” or “what an idiot,” then you might be interested in Additional Commentary for this post.