«Цена надежности – это погоня за предельной простотой.Такая цена по карману не каждому богатому»
Сэр Энтони Хоар, 1980..
В академической науке, промышленности и в мире коммерции
широко распространена уверенность, что Информатика стала совершенной наукой и
что, следовательно, она «выросла» от теоретической научной проблемы до
практической дисциплины для инженеров, менеджеров и промышленников, т.е. в
основном людей – и таких немало! – которые готовы применять научные приложения
в случае очевидной выгоды, но которые чувствуют себя довольно неуверенно в
процессе их разработки, потому что они не понимают, к чему приводит проведение
исследований с непонятными целями и негарантированными результатами. Эта
всеобщая уверенность, впрочем, оправдана только в том случае, если мы
акцентируем внимание на решенных задачах Информатики и забываем о тех задачах,
при решении которых потерпели неудачу, даже если они слишком важны, чтобы их
игнорировать.
Все же я замечу, что центральная проблема Информатики, а
именно «Как во всем этом не запутаться», до сих пор не решена. Напротив,
большинство наших систем гораздо сложнее, чем может считаться разумным, и
слишком запутанны и хаотичны, чтобы ими было удобно и надежно пользоваться.
Среднего пользователя компьютерной индустрии обслуживают так скверно, что он в
любой момент ожидает сбоя своей системы, и мы наблюдали массовое
распространение программного обеспечения, нашпигованного ошибками, по всему
миру, за что нам должно было бы быть весьма стыдно.
Для нас, ученых, слишком велико искушение переложить вину за
печальное состояние дел на недостаток образования среднего инженера,
недальновидность менеджеров и злой умысел промышленников, но это никуда не
годится. Видите ли, в то время, как мы все знаем, что причиной всех бед
является неуправляемая сложность, мы не знаем, ни какой степени простоты можно
достичь, ни до какой степени внутренняя сложность разработки в целом должна
отражаться на видимых интерфейсах. Мы попросту до сих пор не знаем, насколько
сможем выпутаться из этого. Мы до сих пор не знаем, можно ли отличить
сложность, присущую самой задаче, от случайной сложности. Мы до сих пор не
знаем, будут ли возможны компромиссы. Мы до сих пор не знаем, сумеем ли
разработать для сложности осмысленную концепцию, на базе которой сможем
построить полезную теорию. Откровенно говоря, мы просто до сих пор не знаем, о
чем нам следует говорить, но это не должно нас беспокоить, поскольку это только
иллюстрирует, что имеется в виду под «непонятными целями и негарантированными
результатами».
Это всего лишь один из примеров. Мораль: ответ на вопрос,
является ли Информатика совершенной наукой или нет, зависит только от
нашего мужества и нашего воображения.
Остин, 19 ноября 2000 г.
[Написано для Communications of the ACM]
prof. dr. Edsger W. Dijkstra
Department of Computer Sciences
The University of Texas at Austin
Austin, TX 78712-1188
USA
Information
- Posted on 31.01.2010 22:35
- Просмотры: 2696