В чем заключается удовольствие от программирования?
Возможно, это связано с процессом создания чего-то из ничего. Для акта творения нужны только компьютер и клавиатура: программист открывает пустой текстовый файл, начинает писать в нем код, и через считанные минуты содержимое файла выполняет какую-то работу.
Другая версия заключается в том, что программистам нравится процесс написания кода. Программирование напоминает написание хорошего текста — нужно убирать лишнее и переписывать непонятные куски так, чтобы они легко читались. Одновременно с этим нужно написать код так, чтобы он хорошо и быстро работал. Рабочий день программиста — это интенсивное упражнение в стремлении к красоте и эффективности.
Третья версия менее приятна: программисты — это зависимые люди. Они зависят от эйфории, которая наступает тогда, когда код начинает работать. Несколько дней работы могут пройти в плохом настроении и сомнении в своих силах. Но затем куски пазла наконец-то складываются, и программист становится самым счастливым человеком на свете. Спустя короткое время начинается следующий цикл из зачастую раздражающего опыта написания кода и редких моментов радости.
Все версии верны. Программист — это одновременно и Создатель, и влюблённый в своё мастерство ремесленник, и одержимый наркоман. В этих трёх ипостасях и кроется удовольствие от программирования.