Edsger Dijkstra известные цитаты

последнее обновление : 5 сентября 2024 г.

other language: spanish | czech | german | french | italian | slovak | turkish | ukrainian | dutch | russian | portuguese

Edsger Dijkstra
  • Если отладка - это процесс устранения программных ошибок, то программирование должно быть процессом их устранения.

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

  • Тестирование программы может быть использовано для того, чтобы показать наличие ошибок, но никогда для того, чтобы показать их отсутствие!

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

  • Информатика связана с компьютерами не больше, чем астрономия - с телескопами.

  • Простота является необходимым условием надежности.

  • Как нам убедить людей в том, что в программировании простота и ясность - короче говоря, то, что математики называют элегантностью, - это не непозволительная роскошь, а важнейший вопрос, который определяет успех или неудачу?

  • Использование COBOL калечит разум; поэтому его преподавание должно рассматриваться как уголовное преступление.

  • Тестирование показывает наличие, а не отсутствие ошибок.

  • Эффективное использование своих способностей к абстракции следует рассматривать как одно из наиболее важных занятий компетентного программиста.

  • Остерегайтесь "реального мира". Апеллирование оратора к нему - это всегда приглашение не оспаривать его молчаливые предположения.

  • Цель абстракции состоит не в том, чтобы быть расплывчатой, а в том, чтобы создать новый семантический уровень, на котором можно быть абсолютно точным.

  • Поднимите свои стандарты качества настолько, насколько это возможно, не тратьте свое время на рутинные проблемы и всегда старайтесь работать как можно точнее, на пределе своих возможностей. Делайте это, потому что это единственный способ понять, как следует продвигать эту границу.

  • Если мы хотим подсчитать строки кода, мы должны рассматривать их не как "созданные строки", а как "потраченные строки".

  • Мне не нужно тратить свое время на компьютер только потому, что я специалист по информатике.

  • Традиционный математик распознает и ценит математическую элегантность, когда видит ее. Я предлагаю пойти еще дальше и рассматривать элегантность как неотъемлемую составляющую математики: если она неуклюжа, это не математика.

  • Программирование - одна из самых сложных областей прикладной математики; более бедным математикам лучше оставаться чистыми математиками.

  • Математики похожи на менеджеров - они хотят улучшений без изменений.

  • Наиболее важным, но и наиболее неуловимым аспектом любого инструмента является его влияние на привычки тех, кто обучается его использованию. Если инструмент является языком программирования, это влияние, нравится нам это или нет, влияет на наши привычки мышления.... Язык программирования - это инструмент, который оказывает глубокое влияние на наше мышление.

  • Опыт ни в коем случае не приводит автоматически к мудрости и пониманию.

  • Джон фон Нейман обращает внимание на то, что ему показалось контрастом. Он заметил, что для простых механизмов часто проще описать, как они работают, чем то, что они делают, в то время как для более сложных механизмов обычно все наоборот.

  • Затаенное подозрение, что что-то можно упростить, является богатейшим в мире источником полезных задач.

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

  • Не должно быть такой вещи, как скучная математика.

  • Самосовершенствование - это такое же отучение, как и самоучка.

  • Поскольку убедительная демонстрация корректности невозможна до тех пор, пока механизм рассматривается как черный ящик, наша единственная надежда заключается в том, чтобы не рассматривать механизм как черный ящик.

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

  • На волне культурной революции, а теперь и экономического спада я наблюдаю растущее стремление к сотрудничеству и поощрению "командной работы". Из-за своей антииндивидуалистической направленности такое стремление, конечно, вызывает большие подозрения; некоторые люди могут быть к нему не столь чувствительны, но одного взгляда на Гитлерюгенд в действии достаточно, чтобы на всю оставшуюся жизнь остерегаться "командного духа". Очень.

  • Использование антропоморфной терминологии вынуждает вас с лингвистической точки зрения придерживаться операциональной точки зрения. И это делает практически невозможным обсуждение программ независимо от их выполнения.

  • Если мы исходим из того, что ответственность программиста заключается не только в создании правильной программы, но и в том, чтобы убедительно продемонстрировать ее правильность, то вышеприведенные замечания оказывают глубокое влияние на деятельность программиста: объект, который он должен создать, должен быть удобно структурирован.

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

  • ..Упрощения оказали гораздо большее долгосрочное научное воздействие, чем отдельные проявления изобретательности. Возможность упрощения очень обнадеживает, потому что во всех примерах, которые приходят на ум, простые и элегантные системы, как правило, легче и быстрее проектируются и доводятся до совершенства, более эффективны в исполнении и намного надежнее, чем более сложные приспособления, которые необходимо отлаживать до определенной степени приемлемости....Простота и элегантность непопулярны, потому что для их достижения требуются упорный труд и дисциплина, а также образование, которое будет оценено по достоинству.

  • Напишите статью, обещающую спасение, сделайте ее структурированной или виртуальной, абстрактной, распределенной, более высокого порядка или прикладной, и вы можете быть почти уверены, что основали новый культ.

  • Красота - это наш бизнес.

  • Если вам нужны более эффективные программисты, вы обнаружите, что они не должны тратить свое время на отладку, они не должны с самого начала вносить ошибки.

  • Проблемы реального мира - это прежде всего те, с которыми вы сталкиваетесь, когда отказываетесь применять их эффективные решения.

  • Строя замки из песка на пляже, мы можем не обращать внимания на волны, но должны следить за приливом.

  • Когда у нас не было компьютеров, у нас не возникало проблем и с программированием. Когда у нас было несколько компьютеров, у нас были небольшие проблемы с программированием. Столкнувшись с машинами, в миллион раз более мощными, мы столкнулись с гигантской проблемой программирования.

  • PL/1, смертельная болезнь, относится скорее к набору проблем, чем к набору решений.

  • Слишком немногие люди осознают, что высокие технологии, столь прославляемые сегодня, по сути, являются математическими технологиями.

  • Информатика связана с компьютерами не больше, чем астрономия - с телескопами, биология - с микроскопами, а химия - с мензурками и пробирками. Наука - это не инструменты. Речь идет о том, как мы их используем и что мы узнаем, когда делаем это.

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

  • В этом отношении программа подобна стихотворению: вы не можете написать стихотворение, не написав его. Однако люди говорят о программировании так, как если бы это был производственный процесс, и измеряют "продуктивность программиста" с точки зрения "количества созданных строк кода". При этом они записывают это число не в ту сторону бухгалтерской книги: мы всегда должны ссылаться на "количество израсходованных строк кода".

  • Слава богу, у нас есть не только серьезные проблемы, но и нелепые.

  • [Хотя информатика - довольно новая дисциплина, она в основном основана на картезианском мировоззрении. Как отметил Эдгар У. Дейкстра] Научная дисциплина возникает - как правило, довольно медленно! - выявление того, какие аспекты могут быть осмысленно изучены изолированно ради их собственной согласованности.

  • Я думаю о компании, рекламирующей "Мыслительные процессоры", или о колледже, который делает вид, что изучения БЕЙСИКА достаточно или, по крайней мере, помогает, в то время как преподавание БЕЙСИКА должно быть приравнено к уголовному преступлению: оно неизлечимо калечит разум.

  • Возможно, я очень наивен, но я также думаю, что предпочитаю оставаться таким, по крайней мере, на данный момент, а возможно, и на всю оставшуюся жизнь.

  • Об использовании языка: невозможно заточить карандаш тупым топором. Столь же тщетно пытаться сделать это десятью тупыми топорами.

  • Обучение ничего не подозревающих молодых людей эффективному использованию формальных методов - одна из радостей жизни, потому что это чрезвычайно полезно.

  • Благодаря значительно улучшившимся возможностям общения, мы переоцениваем его важность. Еще больше мы недооцениваем важность изоляции.