Softpanorama

May the source be with you, but remember the KISS principle ;-)
Home Switchboard Unix Administration Red Hat TCP/IP Networks Neoliberalism Toxic Managers
(slightly skeptical) Educational society promoting "Back to basics" movement against IT overcomplexity and  bastardization of classic Unix

Thoughts about programming and Shtilitz jokes (in Russian)

Softpanorama 1990, vol 2, No. 6

Softpanorama

May the source be with you, but remember the KISS principle ;-)
Home Switchboard Unix Administration Red Hat TCP/IP Networks Neoliberalism Toxic Managers
(slightly skeptical) Educational society promoting "Back to basics" movement against IT overcomplexity and  bastardization of classic Unix

Thoughts about programming

       мысли о программировании

Если программист признан незаменимым, то лучшее, что  можно сделать - избавиться от него как можно скорее.  "The Psychology of Computer Programming",   Джеральд Вейнберг, (VAN NOSTRAND REINOLD CO., 1971).

Некоторое время назад, когда КОБОЛ был светлой надеждой программистов, часто можно было слышать о возможности того, что администраторы смогут читать программы... Никто не принимал этого всерьез... Даже программисты не читают программ.  ( р.5 )

Eсть... программы, которые следует выбросить еще до использования. ( р.20 )

Tребовать и эффективности, и гибкости от одной и той же программы - все равно, что искать очаровательную и скромную жену... по-видимому, нам следует остановиться на чем-то одном из двух.  ( р.22 )

Eсли программист работает с языком, в котором разрешены только три уровня вложенности циклов, то вряд ли мы обнаружим больше трех уровней в программах на этом языке.  ( р.31 )

Собрать кучку людей для работы над одной проблемой - не значит сделать их коллективом. ( р.35 )

Конструктор системы страдает от того, что чем лучше его система делает свое дело, тем меньше пользователи знают о ее существовании.  ( р.124 )

... Каждая программа  имеет соответствующий уровень продуманности и запутанности в зависимости от цели, для которой она применяется.  ( р.127 )

Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство.   ( р.136 )

Для локализации ошибки, однако, желателен человек, обладающий упорством тещи и стадными инстинктами крысы. ( р.136 )

Если плохой работник ненавидит свои инструменты, хороший работник ненавидит плохие инструменты.  Результаты труда рабочего в значительной степени определяются его инструмента-
ми.  ( р.203 )

Ни один ремесленник, который стремится к вершинам своей профессии, не примет негодных инструментов; и ни один производитель, который ценит качество работы, не будет упрашивать
ремесленника принять их.  ( р.204 )

 Другой эффект (отсутствия устной формы) - это затруднения, которые мы испытываем, говоря о языке программирования без доски и мела либо карандаша и бумаги.  В каждой программистской лаборатории должны быть доска ( р.207 )

 "Программирование" - как и "любовь" - одно слово, за которым скрывается бесконечное множество занятий.   ( р.121 )

Очень важно не прерывать вопросов. Любопытство имеет свое право на существование.
                        (Альберт Эйнштейн)

 ... В некоторых диалоговых системах ... пользователь может уберечь свою программу от понижения в приоритете, играя с клавишей переключения регистров в то время, пока он размышляет.
                        ( В. р.209 )

Специалист - человек, который избегает мелких ошибок, неуклонно двигаясь к краху  ( аноним )

В природе программирования лежит то, что нет соотношения между "размерами" самой ошибки и проблем, которые она влечет.  ( В. р.247 )

Когда программист испытывает затруднения при поиске ошибки, это значит, что он ищет не там, где следует. ( В. р.251 )

Документация - касторовое масло в программировании... Руководители полагают, что это хорошее средство, ибо программисты так ее ненавидят. ( р.262 )

Мозг человека обычно загружен лишь на 10% своей мощности; остальное резерв для опереционной системы.  ( аноним )

Мы стоим на пороге новой эры, эры, ставшей возможной благодаря революции, совершенноя вычислительной машиной. Стоя на пороге, мы колеблемся в выборе пути - к золотому веку свободы или к темному веку тирании, причем и тот, и другой век может превзойти все, что когда-либо видел мир. Возможно, никакие отдельные усилия не скажутся на результате, но мы никогда не должны оставлять попыток, ибо иначе результат наверняка окажется тиранией.   ( В. р.279 )

        Проект (OS/360) был закончен с опозданием, система потребовала большего объема памяти, чем планировалось, затраты значительно превысили предварительные оценки, вся система начала работать как следует только после создания нескольких вариантов, последовавших за первым.
                        "Мифический человеко-месяц", Фредерик
                        Брукс-мл.,р.8 (М., "Наука", 1979).

        Корабль на мели - моряку маяк.     голландская пословица.

        Неподатливость проблемы (срыва планов разработки систем) вызывает всеобщее изумление, и разобраться в ее природе непросто.
                        ( Брукс, р.10 )

        Вычислительная машина обладает притягательной силой бил-
лиарда или музыкального автомата, доведенных до логической
завершенности.
                        ( Б. , р.13 )

        Программист, как поэт, работает почти исключительно
головой.
                        ( Б., р.13 )

        Вы печатаете на клавиатуре заклинание, и вот экран
дисплея оживает, показывая объекты, которых не было и могло
не быть никогда ... (но) если хоть один символ, один пробел
в магической формуле не находится строго на своем месте,
волшебство не работает.
                        ( Б., р.14 )

        ... Во всех областях творческой деятельности формальный
объем прав никогда не согласуется с ответственностью.
                        ( Б., р.14 )

        Выдавать глобальные идеи - это удовольствие; искать
сволочные маленькие ошибки - вот настоящая работа.
                        ( Брукс )

        Как только проект окончательно принят, он становится
устаревшим в смысле своих концепций.
                        ( Б., р.15 )

        Хорошая кухня требует времени. Если вы готовы подо-
ждать, мы обслужим вас гораздо лучше, и вы получите большее
удовольствие.
                        ( меню ресторана "Антуан",
                                Новый Орлеан )

        Все программисты - оптимисты.
                        ( Б., р.17 )

        На этот раз программа обязательно пройдет.
                        ( аноним )

        Я только что нашел последнюю ошибку.
                        ( аноним )

        Большой программистский проект ... включет в себя
много отдельных задач, каждая из которых может зависеть от
окончания другой . Вероятность того, что каждая задача будет
идти нормально, становится исчезающе малой.
                        ( Б., р.19 )

        Стоимость проекта действительно зависит от числа людей
и числа месяцев, но его успешность - нет. Следовательно,
человеко-месяц как единица измерения объема работы является
опасным и вводящим в заблуждение мифом.
                        ( Б., р.19 )

        Чтобы выносить ребенка, нужно девять месяцев, незави-
симо от того, сколько женщин будет к этому привлечено.
                        ( Б., р.20 )

        Когда кажется, что все уже работает, все объединено в
систему - вам еще осталось работы на четыре месяца.
                        ( Чарльз Портман , ICL )

        Отметим, что настойчивость руководителя может определить
график выполнения задания, но не в состоянии определить срок
его действительного завершения.
                        ( Б., р.23 )

        ... Если за две минуты он (омлет) еще не готов, у
заказчика два выбора - подождать или съесть его сырым .
                        ( Б., р.23 )

        Закон Брукса: если программистский проект не уклады-
вается в сроки, то добавление рабочей силы только задержит его
окончание.
                        ( Б., р.26 )

        ... Концептуальное единство является самым важным
соображением при проектировании системы.
                        ( Б., р.36 )

        Система программирования предназначена для того,
чтобы облегчать пользование вычислительной машиной.
                        ( Б., р.36 )

        Ни функциональность, ни простота сами по себе не гаран-
тируют... высокого качества (проекта).
                        ( Б., р.37 )

        Добавляя малое к малому, получишь большую кучу.
                        ( Овидий )

        Он сядет здесь и будет распоряжаться: сделайте то!,
сделайте это! - но абсолютно ничто не сдвинется с места.
                        ( Г.Трумэн, "О презедентской власти " )

        Никогда не выходи в море с двумя хронометрами:
бери один или три.
                        ( пословица )

        Я в этом разбираюсь. Я знаю, что нужно делать - но
каждый раз, когда я пытаюсь заняться технической проблемой,
какой-нибудь идиот требует, чтобы я принял решение насчет
грузовика, или телефонов, или другой такой же чертовщины.
                        ( Роберт Хайнлайн,
                "THE MAN WHO SOLD THE MOON" )

        Проблема - в том, что все, кто здесь работал, и я в
том числе, хотели сделать действительно чистую работу, только
они не хотели чистой работы, они хотели много - и быстро.
                        ( Рик Бэйкер, гример в фильмах:
                        "Кинг-Конг", "Звездные войны" и т.д.)

        Генерация случайных чисел - слишком важный вопрос, чтобы
оставлять его на волю случая.
                        ( Роберт Ковзю, Окриджская
                                лаборатория. )

        Я не знаю причины, по которой нам не следует этого де-
лать, но, возможно, позже мы придумаем какую-нибудь.
                        ( Марк Дэвисон )

        - Ошибка? Это не ошибка, это системная функция.
                        ( Т. Джон Уэнделл )

        Комьютер "делает из всех нас дураков".
                        ( В. р.152 )

        Глупец, лишенный способности посмеяться над собой вместе
с другими, не сможет долго выносить программирование.
                        ( В. р.152 )

        У компьютера всегда есть оправдание; у программиста -
никогда.
                        ( Марк Дэвисон )

        Пользователь не знает, чего он хочет, пока не увидит то,
что он получил.
                        ( Э. Йодан )

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

        Работа не может быть выполнена должным образом, если нет
необходимых инструментов.
                        ( PROCEEDINGS OF THE IEEE, 2/78, р.174 )

                Я слышу и забываю.
                Я вижу и запоминаю.
                Я делаю и понимаю.
                        ( Конфуций )

        На пустом диске можно искать вечно.
                        ( COMPUTERWORLD BUTTON )

        Я пишу все свои критические программы на ассемблере, а
комедийные - на фортране.
                        ( аноним )

        Бесполезно придумывать защиту от дурака - ведь дураки
так гениальны.
                        ( Э.Мэрфи, DEC )

        Интуитивно ясно, что наличие ошибки в программе не
скажется на результатах тестирования, если содержащая ошибку
программная компонента при тестировании не выполнялась.
                        ( Дж.Хуанг, "PROGRAM INSTRUMENTATION
                        SOFTWARE TESTING", COMPUTER, volume 11,
                        number 4 )

        Если отладка - процесс удаления ошибок, то программиро-
вание должно быть процессом их внесения.
                        ( Э.Дейкстра )

        Вы уже дошли до состояния, когда у вас нет времени,
чтобы разрешить те проблемы, которые отнимают у вас все время???
                        ( Марк Дэвидсон )

 =============================================================================
* Forwarded by Dmitry Zavalishin (2:5020/32)
* Area : REL.HUMOR (REL.HUMOR)
* From : [email protected], 2:5020/32 (21 Oct 93 09:03)
* To   : All
* Subj : ... в Релкоме
=============================================================================
X-RealName: Alexey Polyakov


Штирлиц получает адрес в Релкоме:
- Какое имя выберете? - спрашивает представитель Релкома.
- Otto, - отвечает Штирлиц.
- А какой пароль?
- Isaev, - не моргнув глазом ответил Штирлиц.

                        * * *
Штирлиц пишет статью в телеконференцию: "Hi, All"..., но потом быстро исправляет на "Hi Hitler!!!"

                        * * *
Штирлиц давно не получал писем с Родины. "Hаверное опять гейт в Россию закрыли" - подумал Штирлиц.

                        * * *

Штирлиц посылает донесение в центр: "Jgznm pae,fkb 'nb velfrb".
- @#$%^! - выругался Штирлиц и переключил регистр на русский.

                        * * *
Штирлиц просматривает электронную почту. Hезаметно входит Мюллер.
У Штирлица на экране появляется бессмысленный набор символов.
"Шифровка!!!" - подумал Мюллер.
"UUENCODE" - подумал Штирлиц.

--
Извиняюсь, если это вторая копия.
-$-
  /* "Da ist der hund begraben!" */

  Alexey Polyakov, computer communication engineer.