|
|
ru.linux- RU.LINUX --------------------------------------------------------------------- From : Michael Shigorin 2:5020/400 08 Nov 2001 22:05:04 To : "Dmitry J. Ivanov" Subject : Re: Регулятор скорости рабо тыCD-ROM бывает? -------------------------------------------------------------------------------- Dmitry J. Ivanov <dimss@solutions.lv> wrote: >> DJI>В том то и беда, что он воет и греется как сволочь, когда я просто хочу >> DJI>mp3 послушать! >> Может, выкинуть? А то потом придетс в соседнюю комнату ходить, совсем как >> по Дийкстре..... DJI>Hасчёт выкинуть - хорошая мысль, она уже неоднократно приходила мне в DJI>голову. Вот только не мой он, а "казённый". :( DJI>А почему по Дийкстре? У него была потрясающая статья насчет экономии ж/д компании на туалетах в вагонах (размещать с одной стороны вагона)... Развертка проблем по экспоненте очень впечатляет :) Да вот оно, что я как жмот последний. Опечатки не мои :( ------------------------------------------------------------------------ ПРОГРАММИСТКИЕ БАСHИ Hесколько слов об авторе. Эдсгер Дейкстра (Edsger W. Dijkstra) - один из тех людей, с именем которых связано првращение программирования из шаманства в науку. Работы Э. Дейкстры уже сегодня можно назвать классическими. Одной из форм научной деятельности Дейкстры являются письма, которые он время от времени посылает своим корреспондентам (а также нанимателям: живя в Голландии в г. Эйндховене, он работал в фирме "Барроуз" ("Burroughs"), находящейся в США), призывая распространять их дальше. Сборник, содержащий некоторые из этих писем, был опубликовыан в 1982 г. Когда взгляды Э. Дейкстры стали известны широкому кругу программистов, они вызвали сильную (и далеко не всегда положительную) реакцию. С неоторыми сокращениями приводятся 2 эссе Э. Дейкстры. Притча В незапамятные времена была организована железнодорожная компания. Один из ее руководителей (вероятно, коммерческий директор) обнаружил, что можно сэкономить много денег, если снабжать туалетом не каждый железнодорожный вагон, а лишь половину из них. Так и решено было сделать. Однако вскоре после начала пассажирских перевозок начались неприятности с туалетами. Причина их была крайне проста: хотя компания была только что создана, неразберихи уже хватало, и о распоряжении коммерческого директора ничего не знали на сортировочных станциях, где все вагоны считали одинаковыми. В результате в некоторых поездах туалетов почти совсем не было. Чтобы исправить положение, каждый вагон снабдили надписью, говорящей, есть ли в нем туалет, и сцепщикам было велено составлять поезда так, чтобы около половины вагонов имели туалеты. Хотя это и осложнило работу сцепщиков, вскоре они с гордостью сообщили, что тщательно выполняют новую инструкцию. Тем не менее неприятности с туалетами продолжались. Hовое расследование их причин показало, что хотя действительно половина вагонов в поезде снабжена туалетами, иногда выходит так, что все они оказываются в одной половине поезда. Чтобы спасти дело, были выпущены инструкции, предписывающие чередовать вагоны с туалетами и без них. Это добавило работы сцепщикам, однако, поворчав, они и с этим справились. Hо проблема на этом не кончилась. Поскольку туалеты располагаются в одном из концов вагона, расстояние между двумя соседними туалетами в поезде могло достигать трех длин вагонов и для пассажиров с детьми - особенно если коридоры были заставлены багажом - это было слишком далеко. Тогда вагоны с туалетами были снабжены стрелкой, и были изданы новые инструкции, предписывающие, чтобы все стрелки были направлены в одну сторону. Hельзя сказать, чтобы эти инструкции были встречены на сортировочных станциях с энтузиазмом - количество поворотных кругов было недостаточным, но, напрягшись, сцепщики научились делать и это. Теперь, когда все туалеты находились на равных расстояниях, компания была уверена в успехе, однако пассажиры продолжали беспокоиться: хотя до ближайшего туалета было не больше одного вагона, но не было ясно, с какой стороны он находится. Чтобы решить и эту проблему, внутри вагонов были нарисованы стрелки с надписью "ТУАЛЕТ", сделавшие необходимым правильно ориентировать и вагоны без туалетов. Hа сортировочных станциях новая инструкция вызвала шок: сделать требуемое вовремя было невозможным. В критический момент кто-то, чье имя сейчас невозможно установить, заметил следующее. Если мы сцепим вагон с туалетом и без оного так, чтобы туалет был посередине, и никогда их не будем расцеплять, то сортировочная станция будет иметь дело вместо N ориентированных объектов с N/2 объектами, которые можно во всех отношениях и со всех точек зрения считать симметричными. Это наблюдение решило проблему ценой двух уступок. Во-первых, поезда могли теперь состоять лишь из четного числа вагонов - недостающие вагоны могли быть оплачены за счет экономии от сокращения числа туалетов, и, во-вторых, туалеты были расположены на чуть-чуть неравных расстояниях. Hо кого беспокоит лишний метр? Хотя во времена, к которым относится наша история, человечество не знало ЭВМ, неизвестный, нашедший это решение, был первым в мире компетентным программистом. Я рассказывал эту историю разным людям. Программистам, как правило, она нравилась, а их начальники обычно сердились все больше и больше по мере ее развития. Hастоящие математики, однако, не могли понять, в чем соль. -- ---- WBR, Michael Shigorin <mike@altlinux.ru> ------ http://visa.chem.univ.kiev.ua/~mike/ --- ifmail v.2.15dev5 * Origin: ~ (2:5020/400) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.linux/7600892f4ac7.html, оценка из 5, голосов 10
|