ru.humor.14
Книга 3
Разработка

Так говорил Учитель:
“Когда программа тестируется,
поздно вносить исправления в проект”.

3.1

Как-то раз на большую компьютерную выставку пришёл человек. Заходя, он сказал охраннику у двери: “Я великий вор, прославившийся своими ограблениями. Будьте бдительны, на этой выставке я не останусь без добычи”.

Эта речь сильно обеспокоила охранника, так как внутри находилась компьютерная техника, которая стоила миллионы долларов — он следил за этим человеком очень внимательно. Но человек просто бродил от стенда к стенду, бормоча что-то про себя.

Когда человек выходил, охранник осмотрел его и обыскал его одежду, но ничего не нашёл.

На следующий день выставки человек пришёл опять и сказал охраннику: “Вчера я ушёл с большой добычей, но сегодня её будет ещё больше”. В конце дня охранник обыскал его ещё тщательней, но ничего не нашёл.

На последний день выставки охранник не мог больше сдержать своего любопытства. “Господин Вор”, — сказал он, — “я так озадачен, что не могу жить в согласии с самим собой. Пожалуйста, просветите меня. Что вы воруете?”

Человек улыбнулся. “Я ворую идеи”, — сказал он.

3.2

Жил некогда на свете Учитель, который писал неструктурированные программы. Его ученик, который пытался подражать ему, так же стал писать неструктурированные программы. Когда ученик попросил Учителя оценить его прогресс, учитель отругал его за написание таких программ, сказав: “Что позволено Учителю, не позволено ученику. Ты должен постигнуть Дао до того, как структура станет трансцендентальной”.

3.3

При дворе волшебника Ву жил некогда программист. Однажды волшебник спросил его: “Что легче разработать: бухгалтерскую программу или операционную систему?”

“Операционную систему”, — ответил программист.

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

“Нет”, — сказал программист, — “когда разрабатывается бухгалтерский пакет, программист выступает в роли посредника между людьми, имеющими разные идеи: как это должно работать, какие отчёты должны создаваться и как всё должно соответствовать налоговому законодательству. Напротив, операционная система не ограничена внешними условностями. Когда она разрабатывается, программист ищет наипростейшую гармонию между машиной и идеями. Поэтому операционная система проще в разработке.”

Волшебник Ву кивнул и улыбнулся. “Это всё хорошо и прекрасно, но что из них проще отлаживать?”

Программист не дал ответа.

3.4

Менеджер пришёл к Учителю и показал ему требования на новое приложение. Менеджер спросил Учителя: “Сколько потребуется времени для разработки этой системы, если я назначу на неё пять программистов?”

“Один год”, — ответил Учитель.

“Но эта система нужна нам как можно скорее! Сколько потребуется времени, если я назначу десять программистов?”

Учитель нахмурился. “В этом случае потребуется два года.”

“А если назначу сотню программистов?”

Учитель пожал плечами. “Тогда разработка никогда не закончится”, — сказал он.