PDA

Просмотр полной версии : Законы программирования


Aeon
14.01.2003, 19:12
[list=1]
Ничто не работает так, как планировалось запрограммировать.
Ничто не программируется так, как должно работать.
Хороший программист характеризуется умением доказать почему задачу невозможно выполнить, когда ему просто лень её выполнять.
На решение проблемы уходит в три раза меньше времени, чем на обсуждение всех "за" и "против" её решения.
Обещанный срок сдачи - это аккуратно рассчитанная дата окончания проекта плюс шесть месяцев.
Программисту всегда известна последовательность действий, которыми пользователь может повесить его программу, но он никогда не чинит эту проблему, надеясь на то, что никому никогда не придёт в голову эту последовательность исполнять.
Настоящие программисты любят Windоws - все ошибки, сделанные по собственной тупости, можно свалить на Мiсrоsоft.
Следствие - 99% проблем, сваливаемых на Мiсrоsоft, является следствием тупости самих программистов.
В приступе злости все почему-то молотят по невинному монитору, вместо системного блока.
В случае голодовки настоящий программист ещё месяц сможет питаться едой, выковырянной из-под кнопок клавиатуры.
Настоящий программист уже как минимум поменял три залитых пивом клавиатуры.
Все, кто испытывает проблемы с настройкой кодировки, автоматически считаются неандертальцами.
Дилетантские разговоры о компьютерах вызывают резкую тошноту вплоть до приступов рвоты. Вопрос о том как поменять "обои" в Windоws вызывает желание перерезать горло вопрошающему.
У большинства людей, нуждающихся в твоей помощи, причина ошибки в работе программы чисто генетическая.
НТМL, НТТР, FТР, SМТР, ТСР/IР, RТFМ и т. д. - это слова, а не аббревиатуры.
Словосочетание "мышка-норушка" не несёт никакого смысла.
Самые мистические проблемы, широко раздуваемые и афишируемые, в конце концов оказываются твоими глупейшими ошибками.
Следствие - если твоя программа выполняет мистические действия, значит, ты сделал что-то невероятно тупое.
Самое плохое ощущение для программиста - когда вокруг тебя стоят десять человек и все пытаются найти причину проблемы в твоей программе, а ты уже понял, в чём проблема, но боишься сказать, потому что это что-то вопиюще глупое...
Решение всех жизненных проблем находится на интернете. Надо только уметь хорошо искать.
Конфликт логических указаний в жизни вызывает фатальную ошибку в работе мозга программиста - возможно повышение температуры и сильное головокружение вплоть до рвоты или потери сознания.
Тех, кто презирает программистов, программисты презирают сильнее, чем те, кто презирает программистов, презирают программистов, которые презирают тех, кто их презирает.
Если ты понял предыдущее - то ты программист.
[/list=1]

Ghost
15.01.2003, 03:16
Мне больше нравятится ТЕОРИЯ ОШИБОК из законов Мерфи.

Ошибки так же неисчерпаемы, как и атом.

Аксиома. В любой программе есть ошибки.

Закон пропорциональности. Чем более программа необходима, тем больше в ней ошибок.

Следствие. Ошибок не содержит лишь совершенно ненужная программа.

Фундаментальный закон теории ошибок. На ошибках учатся.
Следствие. Программист, написавший программу, становится ученым. Чем больше программист делает ошибок, тем быстрее он делается ученым. Крупный ученый-программист никогда не пишет правильные программы.
Замечание. На то он и ученый.

Определение. Тестирование - это процесс нахождения ошибок в тесте. Хороший тест должен содержать ошибки, компенсирующие их нехватку в тестируемой программе.

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

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

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

Системные программы облегчают процесс написания прикладных программ и их ошибок.

Закон необходимости ошибок. Программист может обнаружить ошибку только в чужой программе.
Следствие. Ошибке не все равно, кто ее обнаружит.

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

Определение. Будем называть языком ошибок правила, в обход которых пишутся программы.

Язык ошибок. Ошибки могут следовать друг за другом.
Коммутативность эквивалентных ошибок. От перестановки двух эквивалентных ошибок результат не меняется.

Две последовательные ошибки можно объединить в одну, более сильную.

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

Ошибки могут образовывать циклы. Наиболее устойчивый из них - бесконечный.

Рекурсивность ошибок. Ошибки могут вызывать друг друга и сами себя .

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

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

Взаимодействие ошибок с базовой операционной системой. Во время исполнения ошибки имеют наивысший приоритет. Прервать исполнение ошибки может только другая, более активная ошибка. При работе с файлами ошибки могут пользоваться файловой системой базовой ОС и ее ошибками. Запросы операционной системы к ошибкам ошибками могут игнорироваться. Запросы ошибок к операционной системе игнорироваться не могут. На ЭВМ с параллельной архитектурой может выполняться несколько ошибок одновременно.

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

helldomain
23.01.2003, 08:11
Gi. Prawda.

Ghost
23.01.2003, 16:54
Создать хорошую страницу не так легко, как кажется, - всегда найдутся люди, которые делают это лучше, быстрее и правильнее вас. На их фоне вы будете выглядеть некомпетентно. Поэтому сразу отбросьте все мысли о занятиях веб-мастерингом.
if (previous==true)
{END};
else {
--------------------------------------------------------------------------------
Глобальные закономерности
--------------------------------------------------------------------------------
Любая ошибка, которая может вкрасться в ваш код, вкрадется в него.
--------------------------------------------------------------------------------
Любая ошибка в коде скрипта будет нацелена на причинение наибольшего вреда как серверу, так и клиенту.
--------------------------------------------------------------------------------
Нет кода, который нельзя было бы улучшить.
Следствие
Число багов бесконечно по определению.
Следствие
Для доделывания сайта до конца необходимо бесконечно много времени.
Следствие
Учитывая конечный срок жизни отдельно взятого веб-мастера, сделать сайт нельзя, в принципе.
--------------------------------------------------------------------------------
Если вы и ваши друзья не нашли багов на вашей странице, значит вы что-то пропустили.
--------------------------------------------------------------------------------
Сколько бы народу ни тестировало ваш сайт, у всех остальных он не заработает.
--------------------------------------------------------------------------------
Если ваш сайт нравится вам, всем вашим друзьям, и друзьям ваших друзей, - то всем остальным он не понравится.
--------------------------------------------------------------------------------
При безупречном дизайне ошибается программист; при идеальном программинге дизайнер подбирает цветовую гамму, беря за основу рисунки душевнобольных.
Следствие
Совместив эти две должности в одном человеке, вы получите неработающие скрипты и отвратительный дизайн.
--------------------------------------------------------------------------------
Время, потраченное на создание сайта, обратно пропорционально его размеру и значимости.
--------------------------------------------------------------------------------
Сложность структуры сайта растет до тех пор, пока не превысит фантазию автора.
--------------------------------------------------------------------------------
Если навигация по сайту на первый взгляд проста, то разобраться в ней будет трудно. Если на вид она трудна, значит разобраться в ней будет абсолютно невозможно.
--------------------------------------------------------------------------------
Как бы проста ни была навигация по вашему сайту, никто, кроме вас, ее не поймет.
--------------------------------------------------------------------------------
Если на момент создания тема вашего сайта не имела аналогов в сети, на момент опубликования она будет самой распространенной и избитой.
--------------------------------------------------------------------------------
Какие бы данные вы ни помещали в сеть, все они будут устаревшими.
--------------------------------------------------------------------------------
При предварительной сдаче сайта клиенту, он, зайдя на произвольную страницу, сразу же наткнется на самую грубую ошибку.
--------------------------------------------------------------------------------
Как бы часто вы ни проверяли линки на предмет существования, половина из них умрет именно в тот момент, когда к вам зайдет сетевой журналист, обозреватель или член конкурсной комиссии.
--------------------------------------------------------------------------------
Из ста ссылок на сайте недоступными окажутся те 10, которые они наугад выберут.
--------------------------------------------------------------------------------
Если ваш сайт работает, получает только хвалебные отзывы, хорошо доступен, то ожидайте неприятностей в ближайшем будущем.
--------------------------------------------------------------------------------
Законы броузеров
--------------------------------------------------------------------------------
Вы никогда не сможете сделать так, чтобы страница подобающе выглядела и в Netscape и в MSIE.
Следствие
Не стоит даже и думать, чтобы она выглядела одинакого.
Следствие
Не стоит даже и думать о совместимости с другими броузерами.
--------------------------------------------------------------------------------
Пользователи в разных ОС по-разному увидят вашу страницу, даже если пользуются броузером одной версии.
--------------------------------------------------------------------------------
Если на данный момент имеется специфицированная версия HTML номер n, все существующие версии броузеров поддерживают версию n-1.
--------------------------------------------------------------------------------
Сделав страницу доступной для старых текстовых броузеров, вы будете получать гневные письма с обвинениями в отсталости от прогресса. Использовав же самые новые технологии - будете обвинены в невнимательности к среднестатистическому пользователю.
--------------------------------------------------------------------------------
Все допустимые отклонения в интерпретации кода броузером накапливаются однонаправленно, чтобы причинить, в конечном счете, максимальный вред.
--------------------------------------------------------------------------------

Ghost
23.01.2003, 16:55
Законы кодировок
--------------------------------------------------------------------------------
Сколько бы кодировок вы ни поддерживали, пользователь будет работать в другой.
--------------------------------------------------------------------------------
В случае использования unicode броузер пользователя не будет его понимать.
--------------------------------------------------------------------------------
Windows хуже всего понимает кодировку win-1251.
--------------------------------------------------------------------------------
Если из-под Windows страница в Mac-кодировке выглядит отлично, на Маке она не прочитается.
--------------------------------------------------------------------------------
Законы веб-графики
--------------------------------------------------------------------------------
В какой бы палитре вы ни сохраняли картинки, у клиента они будут выглядеть отвратительно, даже если это веб-палитра.
--------------------------------------------------------------------------------
Графика выглядит по-разному в разных ОС, даже если они установлены на одном компьютере.
--------------------------------------------------------------------------------
Везде, где можно обойтись 8-16 цветами, будет использовано 256.
--------------------------------------------------------------------------------
Везде, где можно обойтись 256, будет использован jpeg.
--------------------------------------------------------------------------------
Везде, где нужен jpeg, будет использован gif с палитрой 4 цвета.
--------------------------------------------------------------------------------
Все изображения, предназначенные для jpeg, будут сохранены в gif и наоборот. В результате получится графика минимального качества, занимающая максимум места.
--------------------------------------------------------------------------------
Законы хостинга
--------------------------------------------------------------------------------
Даже если ваш сайт мгновенно открывается из дома в глухой сибирской деревушке по модему 2400, пользователь, подключенный к опто-волоконному каналу, не дождется его загрузки.
Обобщенное следствие
Доступность вашей страницы обратно пропорциональна ширине канала пользователя.
--------------------------------------------------------------------------------
Если сайт идеально отлажен на локальной машине, при помещении на сервер он не будет работать.
--------------------------------------------------------------------------------
Из всего вашего сайта недоступна будет именно та страница, которая пользовалась наибольшей популярностью (или та, где расположено содержание).
--------------------------------------------------------------------------------
При создании сайта под NT-сервер везде строго соблюдается регистр символов. При создании сайта для UNIX-сервера половина имен файлов и ссылок на них оказываются представлены разным регистром, причем, в самых неожиданных комбинациях.
--------------------------------------------------------------------------------
Хост, на который вы положили сайт, в ближайшие два дня либо станет для всех недоступен, либо будет сбоить, либо вообще прекратит свое существование.
--------------------------------------------------------------------------------
Чем строже вы соблюдаете правила пользования вебъ-сервисом (счетчик, рейтинг, баннеры и тд.), тем скорее вас отключат от него по обвинению в мухлеже.
--------------------------------------------------------------------------------
Законы поисковых роботов
--------------------------------------------------------------------------------
Поисковые роботы игнорируют слова, включенные в тег <content>, который был создан специально для работы поисковых роботов.
--------------------------------------------------------------------------------
Какие бы слова вы ни включили в контент, пользователь будет искать ваш сайт абсолютно по другим словам.
Следствие
В контенте можете писать все, что вашей душе угодно. Например, объяснение в любви к противоположному полу.
--------------------------------------------------------------------------------
Индексирующие роботы доберутся до вашего сайта на полгода позднее соседнего сайта на том же хосте.
--------------------------------------------------------------------------------
Если до опубликования страницы по некоторой теме вы ввели в поисковке ключевые слова и не получили ни одного уникального документа, то после публикации на те же слова выдастся несколько тысяч документов, но вашего в этом списке не будет.
--------------------------------------------------------------------------------
Если все вышесказанное с вами не произошло, то обязательно произойдет в ближайшем будущем.
--------------------------------------------------------------------------------
Парадокс времени
За три часа (если это часы с 00:00 до 3:00) вы успеваете сделать больше полезного, чем за шесть часов (но с 12:00 до 18:00).
--------------------------------------------------------------------------------
Поправка оптимиста
Не важно, что ваша страница глючит и подвешивает машину, - возможно она хорошо при этом выглядит.
--------------------------------------------------------------------------------
Дилемма известности
Чем авторитетнее и известнее веб-мастер, тем больше людей считают его бездарным.
--------------------------------------------------------------------------------
Правило стажа
Заслуги запоминаются, просчеты записываются. };
--------------------------------------------------------------------------------
В мире 90% всего - дерьмо. И Веб не исключение. Главное, умудриться попасть в остальные 10%.
--------------------------------------------------------------------------------

Ghost
23.01.2003, 17:01
Программерский Мерфи
--------------------------------------------------------------------------------
Закон Любарского о Компьютерной Ентемологии
Всегда есть еще одна ошибка.
--------------------------------------------------------------------------------
Аксиома Робертса
Существуют только ошибки
Следствие Бермана
Что для одного ошибка, для другого - исходные данные.
--------------------------------------------------------------------------------
Пятый закон ненадежности
Ошибаться человеку свойственно, но окончательно все запутать может только компьютер.
--------------------------------------------------------------------------------
Первая Аксиома Компов
Чтобы ошибиться, достаточно компьютера, но чтобы действительно испортить все, нужен все-таки еще и человек.
--------------------------------------------------------------------------------
Третий закон Грида
Машинная программа выполняет то, что вы ей приказали делать, а не то, что бы в хотели, чтобы она делала.
--------------------------------------------------------------------------------
Первая компьютерная аксиома Лео Бейзера
Закладывая что-то в ЭВМ, помните, куда вы это положили.
--------------------------------------------------------------------------------
Руководство по системному программированию Штейнбаха
Никогда не выявляйте в программе ошибки, если не знаете, что с ними дальше делать.
--------------------------------------------------------------------------------
Постулаты Трумэна по программированию
Самая грубая ошибка будет выявлена, лишь когда программа пробудет в производстве, по крайней мере, полгода.
Контрольные перфокарты, которые не могут стоять в неправильном порядке, будут перепутаны.
Если назначен специальный человек для контроля за чистотой исходной информации, то найдется изобретательный идиот, который придумает способ, чтобы неправильная информация прошла через этот контроль.
(Если бы контроллер ввода отвергал бы любую лажу, то нашелся бы гениальный идиот, который бы придумал, как его обдурить.)
Непечатный жаргон - это тот язык, которым решительно все программисты владеют в совершенстве.
Защита от "дурака" спасает только от неизобретательного дурака.
Если у Вас вдруг появляется гениальная идея, Вы ее тут же забываете, но если она неверна, то пытаетесь ее применить.
Если установка программы прошла нормально с первого раза, ничего не будет работать.
--------------------------------------------------------------------------------
Законы ненадежности Джилба
Компьютеры ненадежны, но люди еще ненадежнее.
Любая система, зависящая от человеческой надежности, ненадежна.
Число ошибок, которые нельзя обнаружить, бесконечно, в противовес числу ошибок, которые можно обнаружить, - оно конечно по определению.
В поиски повышения надежности будут вкладываться средства до тех пор, пока они не превысят величину убытков от неизбежных ошибок или пока кто-нибудь не потребует, чтобы была сделана хоть какая-то полезная работа.
--------------------------------------------------------------------------------
Закон Брука
Увеличение числа участников при подготовке опаздывающей программы только замедляет процесс.
Прилагая усилия, когда заказной софт запаздывает, вы лишь еще более оттягиваете сроки его выпуска.
Если программистский проект не укладывается в сроки, то добавление рабочей силы только задержит его окончание.
--------------------------------------------------------------------------------
Законы мира ЭВМ по Голубу
Неточно спланированная программа требует в три раза больше времени, чем предполагалось; тщательно спланированная - только в два раза.
(Выполнение великолепно продуманного проекта занимает ровно в три раза больше положенного времени; на выполнение просто хорошо продуманного уходит всего в два раза больше времени.)
Усилия, прилагаемые для исправления ошибки, увеличивают ее в геометрической прогрессии по отношению к затраченному времени.
Работающая над программой группа питает отвращение к еженедельной отчетности о достигнутых результатах, поскольку она слишком явно свидетельствует об отсутствии таковых.
--------------------------------------------------------------------------------
Принцип Шоу
Создайте систему, которой сможет пользоваться дурак, и только дурак захочет ею пользоваться.
(Сделай систему, с которой сможет работать даже дурак, и только дураки будуть с ней работать.)
--------------------------------------------------------------------------------
Закон компьютера применительно к АЛУ
Машина считает, человек принимает (решения,...)
--------------------------------------------------------------------------------
Закон Дикстры о Комповой Инерции
Если вы точно не знаете, что ваша програма должна делать - должно ли ее начинать?
--------------------------------------------------------------------------------
Закон Сатлингера
Компьютер будет работать лучше, если его включить
--------------------------------------------------------------------------------
Теоpема Бакупа
Для пеpезаписи любого пакета ПО всегда не хватает одной и только одной дискеты.
Дополнение Овеpа -- Иншуpанса
Если дискет все же хватает -- число дефектных из них окажется не меньше числа оставшихся после записи плюс единица.
--------------------------------------------------------------------------------
Лемма Фуллбокса
Комплект дискет с копией софтвеpного пpодукта занимает целое число коpобок плюс одна-две дискеты. Последние с необходимостью теpяются.
--------------------------------------------------------------------------------
Теоpема Сетупа
Потеpять пеpвую загpузочную инсталяционную дискету невозможно.
Следствие Лонгтайма
Если установка большого пpогpаммного пpодукта обламывается, то в 99.9% случаев -- когда две тpети инсталяционных дискет уже использованы.
--------------------------------------------------------------------------------
Топологическая гипотеза Ваpпа
Путем необъяснимого пока наукой искpивления пpостpанственно-вpеменного континуума, на копиpуемые дискетки обычно наносятся невеpные поpядковые номеpа. Отмечены случаи пеpемешивания и готовых нумеpованных наклеек. Hекотоpые исследователи утвеpждают, что опpеделенные концентpические конфигуpации магнитных полей пpиводят к пpоскальзыванию электpопpоводных пишущих пpиспособлений чеpез 4-е измеpение
--------------------------------------------------------------------------------
Лемма неpавномеpности Инстолла -- Оpдеpа
Веpоятность того события, что после дискеты с номеpом N будет запpошена дискета с номеpом N+1 экспоненциально убывает по меpе pоста N.
Замечание Hеизвестного
Вы все pавно пеpепутаете дискеты -- метод полного пеpебоpа часто оказывается эффективнее дpугих.
--------------------------------------------------------------------------------
Теоpема Хаpда -- Оема
Hечитабельность вашим компьютеpом инсталляционных дискет нестандаpтного фоpмата есть достаточное условие того, что инсталлиpуемая система фатально несовместима с любыми пpогpаммами pасшиpения возможностей BIOS.
--------------------------------------------------------------------------------
Законы Лопатина о программировании
Если ты наконец-то выучил язык программирования, то он никому уже не нужен.
Если ты думаешь, что знаешь язык программирования, то ошибаешься - твои знания безнадежно устарели.
Если язык программирования необычайно полезен и популярен в этой стране, то за ее пределами он никому не нужен.
--------------------------------------------------------------------------------
Закон о надежности компьютера
Компьютеры - вещь слишком сложная, чтобы работать в принципе. Поэтому то, что они работают хоть как-то, уже чудо.
--------------------------------------------------------------------------------
Второй закон Вейнберга
Если бы строители строили здания так же, как программисты пишут программы, первый залетевший дятел разрушил бы цивилизацию.

Ghost
23.01.2003, 17:02
Законы программирования
--------------------------------------------------------------------------------
Любая действующая программа устарела.
--------------------------------------------------------------------------------
Любая программа обходится дороже и требует больших затрат времени, чем предполагалось.
--------------------------------------------------------------------------------
Если программа полностью отлажена, ее нужно будет скорректировать.
--------------------------------------------------------------------------------
Если программа полезна, ее изменят.
--------------------------------------------------------------------------------
Если программа бесполезна, она будет документирована.
--------------------------------------------------------------------------------
Любая программа стремится занять всю доступную память.
--------------------------------------------------------------------------------
Ценность программы прямо пропорциональна весу ее `выдачи`.
(Ценность программы пропорциональна весу ее аутпута (в кг.))
--------------------------------------------------------------------------------
Сложность программы растет до тех пор, пока не превысит способности программиста.
(Сложность программы будет нарастать до тех пор, пока позволяют знания програмиста.)
--------------------------------------------------------------------------------
Сделайте так, чтобы програмисты писали программы на английском и вы узнаете, что они не умеют писать на английском.
--------------------------------------------------------------------------------
Внутри каждой большой программы есть маленькая, которая там совсем не нужна.
--------------------------------------------------------------------------------
Все ошибки, описанные как особенности, в момент сдачи программы не сработают или будут вести себя, как ошибки.
--------------------------------------------------------------------------------
Все программы содержат ошибки, просто о некоторых мы не догадываемся.
--------------------------------------------------------------------------------
Если Вы заводите в компьютер ерунду, то ничего кроме ерунды оттуда не выходит, только прошедшая через обработку такой умной машиной ерунда становится ценной и значимой в глазах начальства.
--------------------------------------------------------------------------------
Если Вы точно не знаете, что ваша программа должна делать, надо ли ее начинать?
--------------------------------------------------------------------------------
Именно та ошибка, о которой не знаешь, в один прекрасный день запорет твою работу за последние пять лет, одновременно уничтожая все игры на диске начальника.
--------------------------------------------------------------------------------
Компьютерам свойственно ошибаться, но людям свойственно делать это намного чаще (В каждой ошибке компьютера Вы найдете, по крайней мере, две ошибки человека).
--------------------------------------------------------------------------------
Мощность компьютера увеличивается как квадрат цены. Таким образом, если Вы хотите сделать ваш компьютер в два раза дешевле, Вам нужно сделать его вчетверо быстрее.
--------------------------------------------------------------------------------
Неопределимые ошибки бесконечны, а определимые ограничены способностями компилятора.
--------------------------------------------------------------------------------
Новый компьютер сломается как раз тогда, когда старый отключат и выбросят.
--------------------------------------------------------------------------------
Работа с автоматическим исправителем ошибок приведет к обнаружению его узких способностей и широких недостатков.
--------------------------------------------------------------------------------
Сделать компьютер значительно проще и дешевле, чем заставить его что-то делать.
--------------------------------------------------------------------------------
Программы тестирования обязательно находят ошибку там, где их нет. Если ошибка все-таки есть то она в другом месте (например, на 5-10 символов выше, за границей экрана).
--------------------------------------------------------------------------------
То, что некоторые пользователи зовут в программе, пользуясь ей, ошибкой, на самом деле является особенностью. Вывод: все что является для них особенностью или просто крутым (например, Windows) на самом деле есть не что иное, как одна большая ошибка.
--------------------------------------------------------------------------------
Усилия, прилагаемые для исправления ошибки, увеличивают ее в геометрической прогрессии по отношению к затраченному времени.
--------------------------------------------------------------------------------
Мощность компьютера увеличивается как квадрат цены. Таким образом, если Вы хотите сделать ваш компьютер в два раза дешевле, Вам нужно сделать его вчетверо быстрее.
--------------------------------------------------------------------------------
Любая система, которая основывается на людской точности - неточна.
--------------------------------------------------------------------------------
Основное различие между ЮЗЕРОМ и ХАКЕРОМ, взламывающими какую-либо систему, - это то, что действия ЮЗЕРА непредсказуемы и он действут на более широком фронте.
--------------------------------------------------------------------------------
Чем более сложна и совершенна програма, тем более неточные результаты она выдает.
--------------------------------------------------------------------------------
Программы тестирования обязательно находят ошибки там, где их нет. Если ошибка все-таки есть, то она в другом месте (например, на 5-10 символов выше, за границей экрана).
--------------------------------------------------------------------------------
Неопределимые ошибки бесконечны, а определимые ограничены способностями компилятора.
--------------------------------------------------------------------------------
Если вы находите ошибки, исправить которые - дело долгое и нудное, ничего не делайте - просто внесите их в список особенностей программы.
--------------------------------------------------------------------------------
Все глюки, описанные как особенность программы, в момент сдачи софта не сработают или вести себя будут как глюки.
--------------------------------------------------------------------------------
Любая, даже самая гениальная программа никогда не заработает безглючно в момент сдачи ее заказчику.
--------------------------------------------------------------------------------
То, что некоторые юзеры зовут в программе, пользуясь ей, ошибкой - на самом деле является особенностью программы.
Вывод:
Все, что является для них особенностями программы или просто крутым (exm Windows), на самом деле есть не что иное, как один большой глюк.
--------------------------------------------------------------------------------
Software на самом деле hard, а Hardware на самом деле soft - сделать компьютер значительно проще и дешевле, чем заставить его что-то делать.

Ghost
23.01.2003, 17:03
Мысли о программировании
--------------------------------------------------------------------------------
Если программист признан незаменимым, то лучшее, что можно сделать - избавиться от него как можно скорее.
--------------------------------------------------------------------------------
Некоторое время назад, когда КОБОЛ был светлой надеждой программистов, часто можно было слышать о возможности того, что администраторы смогут читать программы... Никто не принимал этого всерьез... Даже программисты не читают программ.
--------------------------------------------------------------------------------
Есть... программы, которые следует выбросить еще до использования.
--------------------------------------------------------------------------------
Требовать и эффективности, и гибкости от одной и той же программы - все равно, что искать очаровательную и скромную жену... по-видимому, нам следует остановиться на чем-то одном из двух.
--------------------------------------------------------------------------------
Если программист работает с языком, в котором разрешены только три индекса, то вряд ли мы обнаружим больше трех.
--------------------------------------------------------------------------------
Конструктор системы страдает от того, что чем лучше его система делает свое дело, тем меньше пользователи знают о ее существовании.
--------------------------------------------------------------------------------
Каждая программа имеет соответствующий уровень продуманности и запутанности в зависимости от цели, для которой она применяется.
--------------------------------------------------------------------------------
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство.
--------------------------------------------------------------------------------
Для локализации ошибки, однако, желателен человек, обладающий упорством тещи и стадными инстинктами крысы.
--------------------------------------------------------------------------------
Другой эффект (отсутствия устной формы) - это затруднения, которые мы испытываем, говоря о языке программирования без доски и мела либо карандаша и бумаги. В каждой программистской лаборатории должны быть доска, мел и достаточное количество тряпок.
--------------------------------------------------------------------------------
"Программирование" - как и "любовь" - одно слово, за которым скрывается бесконечное множество занятий.
--------------------------------------------------------------------------------
В некоторых диалоговых системах ... пользователь может уберечь свою программу от понижения в приоритете, играя с клавишей переключения регистров в то время, пока он размышляет.
--------------------------------------------------------------------------------
В природе программирования лежит то, что нет соотношения между "размерами" самой ошибки и проблем, которые она влечет.
--------------------------------------------------------------------------------
Когда программист испытывает затруднения при поиске ошибки, это значит, что он ищет не там, где следует.
--------------------------------------------------------------------------------
Документация - касторовое масло в программировании... Руководители полагают, что это хорошее средство, ибо программисты так ее ненавидят.
--------------------------------------------------------------------------------
Мозг человека обычно загружен лишь на 10% своей мощности; остальное резерв для опереционной системы.
--------------------------------------------------------------------------------
Мы стоим на пороге новой эры, эры, ставшей возможной благодаря революции, совершенноя вычислительной машиной. Стоя на пороге, мы колеблемся в выборе пути - к золотому веку свободы или к темному веку тирании, причем и тот, и другой век может превзойти все, что когда-либо видел мир. Возможно, никакие отдельные усилия не скажутся на результате, но мы никогда не должны оставлять попыток, ибо иначе результат наверняка окажется тиранией.
--------------------------------------------------------------------------------
Проект (OS/360) был закончен с опозданием, система потребовала большего объема памяти, чем планировалось, затраты значительно превысили предварительные оценки, вся система начала работать как следует только после создания нескольких вариантов, последовавших за первым.
--------------------------------------------------------------------------------
Неподатливость проблемы (срыва планов разработки систем) вызывает всеобщееизумление, и разобраться в ее природе непросто.
--------------------------------------------------------------------------------
Вычислительная машина обладает притягательной силой биллиарда или музыкального автомата, доведенных до логической завершенности.
--------------------------------------------------------------------------------
Программист, как поэт, работает почти исключительно головой.
--------------------------------------------------------------------------------
Вы печатаете на клавиатуре заклинание, и вот экран дисплея оживает, показывая объекты, которых не было и могло не быть никогда (но) если хоть один символ, один пробел в магической формуле не находится строго на своем месте, волшебство не работает.
--------------------------------------------------------------------------------
Выдавать глобальные идеи - это удовольствие; искать сволочные маленькие ошибки - вот настоящая работа.
--------------------------------------------------------------------------------
Как только проект окончательно принят, он становится устаревшим в смысле своих концепций.
--------------------------------------------------------------------------------
Все программисты - оптимисты.
На этот раз программа обязательно пройдет.
Я только что нашел последнюю ошибку.
--------------------------------------------------------------------------------
Большой программистский проект ... включет в себя много отдельных задач, каждая из которых может зависеть от окончания другой . Вероятность того, что каждая задача будет идти нормально, становится исчезающе малой.
--------------------------------------------------------------------------------
Когда кажется, что все уже работает, все объединено в систему - вам еще осталось работы на четыре месяца.
--------------------------------------------------------------------------------
Отметим, что настойчивость руководителя может определить график выполнения задания, но не в состоянии определить срок его действительного завершения.
--------------------------------------------------------------------------------
Концептуальное единство является самым важным соображением при проектировании системы.
--------------------------------------------------------------------------------
Система программирования предназначена для того, чтобы облегчать пользование вычислительной машиной.
--------------------------------------------------------------------------------
Ни функциональность, ни простота сами по себе не гарантируют... высокого качества (проекта).
--------------------------------------------------------------------------------
Добавляя малое к малому, получишь большую кучу.
--------------------------------------------------------------------------------
Генерация случайных чисел - слишком важный вопрос, чтобы оставлять его на волю случая.
--------------------------------------------------------------------------------
Ошибка? Это не ошибка, это системная функция.
--------------------------------------------------------------------------------
Комьютер "делает из всех нас дураков".
--------------------------------------------------------------------------------
Глупец, лишенный способности посмеяться над собой вместе с другими, не сможет долго выносить программирование.
--------------------------------------------------------------------------------
У компьютера всегда есть оправдание; у программиста - никогда.
--------------------------------------------------------------------------------
Пользователь не знает, чего он хочет, пока не увидит то, что он получил.
--------------------------------------------------------------------------------
На пустом диске можно искать вечно.
--------------------------------------------------------------------------------
Я пишу все свои критические программы на ассемблере, а комедийные - на фортране.
--------------------------------------------------------------------------------
Бесполезно придумывать защиту от дурака - ведь дураки так гениальны.
--------------------------------------------------------------------------------
Интуитивно ясно, что наличие ошибки в программе не скажется на результатах тестирования, если содержащая ошибку программная компонента при тестировании не выполнялась.
--------------------------------------------------------------------------------
Если отладка - процесс удаления ошибок, то программирование должно быть процессом их внесения.

helldomain
25.01.2003, 04:00
Gi.