Книга: Отъявленный программист: лайфхакинг из первых рук

Медленное программирование

Медленное программирование

Итак, популярное на Западе движение cлоулайферов начинает проникать в ИТ, где оно породило свой собственный по отношению к коммерческому мейнстриму контртренд — медленное программирование. Это движение ориентируется не на дедлайны и отношения, выраженные критерием время/извлеченная выгода, а (о черт, далее — ненормативная для бизнес-среды лексика) исключительно на совершенство.

Медленное, вдумчивое программирование, осторожный и минимальный рефакторинг, никаких компромиссов между совестью и представлениями клиента, никаких окриков руководства и бесконечных митингов. Лишь кропотливый поиск максимальной эффективности решения и, конечно же, получение личного кайфа от такого рода медитативного программирования.

Часто происходит так: затянули проект, провалили все сроки, упорно «делали все на совесть», но оказалось, что все не так просто, как предполагали на этапе постановки задачи... Короче говоря, в конце концов всех уволили. Существует огромное количество подобных историй, но сегодня я расскажу лишь одну — про Рона Авицура (Ron Avitzur), программного инженера Apple. Вернее, уже бывшего инженера этой компании, хотя потом они его попытались нанять снова... Но давайте лучше по порядку.

Рон Авицур принимал участие в создании первых версий MacOS. Конкретно Рон отвечал за разработку калькулятора, встроенного теперь в эту ОС, но тогда все находилось еще в зачаточном состоянии. Сроки по созданию нового инновационного визуального калькулятора, концепцию которого, собственно, и разработала группа под руководством самого Рона, постоянно сдвигались.

Концепция была настолько нова, что задача состояла не только в том, чтобы «запрограммировать это», а скорее сводилась к поиску «как это вообще сделать». Творческий процесс программирования и разработки концептуально новых приложений — штука сложная сама по себе, но это вдвойне сложно, когда этот процесс монопольно контролирует менеджмент, нацеленный на жесткие сроки, отчетность, обязательства перед партнерами, прибыль... В общем вы поняли.

После очередного переноса сроков сдачи проекта Рона его закрыли (проект, а не Рона). Навсегда. Всех программистов его группы уволили, а менеджеров наконец перебросили «на более серьезные задачи». Предварительно менеджмент пытался спасти ситуацию, уговаривая Рона на компромисс: остановить разработку концепта и сделать более-менее обычный калькулятор с отдельными элементами былых задумок, ужавшись до требуемых сроков. Но Рон не видел никакого смысла в создании «еще одного калькулятора», поэтому сказал «нет».

Рон вспоминает, что этот день никак не выделялся: они, как обычно, сидели, погрузившись в работу. Зашедший старший менеджер очень кратко объяснил ситуацию, принятое решение и указал на коробки в углу, которые из-за крайней занятости так и не успели убрать со времен вселения в офис.

Собственно, тут и начинается настоящая история знаменитого графического калькулятора.

Оглавление книги


Генерация: 1.084. Запросов К БД/Cache: 3 / 0
поделиться
Вверх Вниз