15. The Joy of Programming

What is the joy of programming?

Perhaps it has to do with the process of creating something out of nothing. All you need for the act of creation is a computer and a keyboard: a programmer opens an empty text file, starts writing code in it, and in a matter of minutes the contents of the file do some work.

Another theory is that programmers enjoy the process of writing code. Programming is like writing a good text, you have to take out unnecessary things and rewrite incomprehensible pieces so that they are easy to read. At the same time, the code must be written so that it works well and quickly. A programmer's workday is an intense exercise in striving for beauty and efficiency.

The third theory is less pleasant: programmers are addicted. They depend on the euphoria that comes when the code starts working. A few days of work can pass in a bad mood and doubts about their abilities. But then the pieces of the puzzle finally add up, and the programmer becomes the happiest person in the world. After a short time, the next cycle of this often annoying experience of writing code and rare moments of joy begins.

All theories are true. A programmer is simultaneously a creator, an artisan in love with their craft, and an obsessive junkie. In these three forms lies the joy of programming.