Читать «Bash IT Happens Истории ## 4601 – 4700» онлайн - страница 3

Bash.org.ru IT

— Это слишком мало. Если бы вы посещали лекции, знали бы больше! Встретимся на следующей неделе.

«Ни хрена себе: оказывается, для экономиста этого мало!» — думал я, выходя из кабинета. Тут меня осенило, что же преподаватель имела в виду. Подождал, попытался всё объяснить. Женщина на меня смотрела круглыми глазами, когда до неё дошло, что в айтишном мире понимают под знанием языка. Преподаватель извинилась и пообещала экзамен автоматом.

#4608: Антииндийский код

12:00 05.11.2010, IT happens

Мудрость наших отцов и дедов гласила: «Нет такой программы, которую нельзя было бы сократить хотя бы на один оператор». Учитывая, что вводить код приходилось с перфокарт, индийский подход был нежизнеспособен. Те времена прошли, но «мышечная память» всё ещё жива в некоторых преподавателях программирования.

История эта произошла со мной, когда я учился на первом курсе МИРЭА. Очередная лаба по программированию: матрица N?N с рандомными числами, задающими расстояние, в которой надо было провести расчет кратчайшего пути из {1; 1} в {N; N}. Первая версия программы была напичкана циклами и массой условий. Работала быстро — ну, насколько это позволял третий «пень». Тётечка-преподаватель, оценив код, сказала, что надо бы оптимизировать. Почесав репу, я изрядно переписал код: количество циклов сократилось вдвое, а условий — втрое. «Всё равно много», — сказала тетечка.

Десятая версия выглядела примерно так:

i := 0;

while ((48 условий) and (i <= N*N)) do inc(i);

Только после этого я получил зачёт и фразу, которая вьелась мне в мозг: «Памяти много не бывает!»

#4609: Чужих — армейским сапогом

14:00 05.11.2010, IT happens

Ковыряюсь в панели управления NVIDIA, пытаясь выжать все соки из своей новой видеокарточки. Через некоторое время на что-то натыкаюсь, но бегу дальше. Запоздалая реакция в мозгу заставляет меня вернуться в список предустановок для разных игр. В громадном списке рекомендуемых настроек натыкаюсь на следующее:

Aliens Versus Predator 3 — avp.exe

И ладно бы просто название — а ведь это прямой путь к моему красноармейцу в комплекте с иконкой! Вона как красная армия, оказывается, «чужих» изводит...

#4610: HP BurnJet14:00 05.11.2010, IT happens

Купили для нужд кладовщиков цветной лазерный принтер. Их начальница (хотя с компьютером почти на «ты») сильно удивилась:

— Я всю жизнь думала, что лазерный принтер печатает, выжигая лазером буквы на бумаге, поэтому может быть только чёрный цвет!

#4611: Сорцы давно минувших дней

14:00 05.11.2010, IT happens

...Обратите внимание: несмотря на низкую человекопонятность, недостаточную структурированность, а также на появление в последующие годы более совершенных языков и стилей разработки, этот код считался образцом правильно спроектированных систем ещё 0x40 лет. Каждый из вас даже при поверхностном анализе сможет выявить в нём не менее 0x800 уязвимостей. Дайте-ка, посчитаю с нуля... У меня получилось 0x81c, но это с минимальной глубиной анализа. Ну так вот: несмотря на огромное количество уязвимостей, эта система считалась образцом надёжности и защищённости. Репутацию спасало лишь слабое развитие аппаратных средств: если бы самый мощный пракомпьютер конца эпохи UNIX начал анализ, который я только что произвела, в момент выхода первой версии ядра, мы с вами не дожили бы до обнаружения им первой из только что найденных мною уязвимостей.