На одном АТП внедрили систему электронного заполнения путевых листов. Процесс заполнения путевых листов шайтан-машиной проходил так: в щель агрегата просовывался бланк путевого листа, внутренности гремели, звенели, и после изъятия путевого листа работяги лицезрели выбитые время-дату. Когда на предприятии появился чудо-агрегат, водители не обрадовались: ни тебе премиальных, ни левака. С человеком, заполняющим бланки, всегда можно было договориться, а с электроникой...
Недолго длилось горе шофёрское. Придумали они, как обойти систему. В щель автомата мужики всунули вместе с бланком лист жести. Автомат крякнул и заглох.
На этом опыт внедрения системы электронного заполнения путевых листов закончился. Следующая попытка была уже в новом веке.
#4236: Агент N/A
15:00 23.09.2010, IT happens
Дело было во времена появления Pentium II — одних из первых массово продававшихся RISC-CISC-трансляторов, а не классических CISC-процессоров, как Pentium и Pentium MMX. Да, именно тогда свет увидели оптимизация очереди выполнения команд, подстановочные регистры и разбиение команд на подкоманды.
Писали мы как-то с одногруппником одну задачку на ассемблере x86. По нажатии определённой комбинации клавиш надо было вывести на экран надпись: «Привет от агента 009!» Задача простая: резидент с обработчиком прерывания от клавиатуры; перехват комбинации, вывод надписи на экран, задержка и её стирание методом восстановления того, что было под ней. Да, примитивно, да, клавиатура «вставала колом» на время этой задержки, но нам для изучения прерываний больше и не нужно было.
Надпись в упор не хотела выводиться целиком. «Привет от агента» появлялось, а «009!» — ни в какую. Было выпито много пива и потрачено полдня. Уже и задержку в пять секунд вставили — не хочет.
Прихожу домой, запускаю на своём компьютере. Работает, выводит строчку целиком. Оказывается, Celeron 333 приятеля оптимизировал код на лету, и первые 16 байт строки выводились сразу, а последние 5 — непосредственно перед стиранием. Естественно, их мелькание на экране было совершенно незаметным. Мой же старенький Pentium 200 MMX ничего не изобретал — выводил всё целиком, а только потом исполнял цикл задержки. Стоит ли говорить, что ещё более древний институтский 80286 тоже не стал ничего изобретать, и лабу мы защитили успешно?
#4237: Дилинк и Зайксел
15:00 23.09.2010, IT happens
Речь пойдёт о многострадальной локальной сети, созданной задолго до того, как я пришел работать в контору. Сетевой шкаф находится у меня в кабинете. Ни один из проводов, которых насчитывается около полусотни, не подписан. Понять, как работает эта чудо-сеть, я честно пытался — не помогло даже пиво.
Я всегда боялся, что один из свитчей умрёт смертью храбрых. Захожу в кабинет утром — из сетевого шкафа доносится предсмертный писк. Я был в ужасе, ибо денег на новый свитч мне точно не дадут. Вынул, разобрал, прочистил кулеры, заменил один конденсатор, включил — не пищит. Ставлю в шкаф, включаю. Идиллия.
Через два часа история с писком повторяется. Вынимаю второй свитч, чищу кулеры, один заменяю, перепаиваю кучу конденсаторов (состояние было куда хуже, чем у первого), включаю — работает. Через несколько часов история повторяется. Проверяю питание — нет ли «упса» рядом? Осматриваю всё, что только может пищать, разбираю оба свитча в поисках встроенного динамика... Всё впустую. Тут меня осенило: как только я начинаю производить какие-либо действия со свитчами, производя шум, писк прекращается.
Обе живности (то ли тараканы, то ли сверчки какие-то) были пойманы и посажены в банки. Назвал Дилинком и Зайкселом.
#4238: ПТУшная логика
15:00 23.09.2010, IT happens
Сейчас я программлю на 1С, но во времена студенчества работал на Delphi и C++. Денег у студента нету, зато есть куча людей, у которых они есть, и они готовы ими делиться ради написанных программ. Брался я с охотой, делал максимально хорошо. Проблем с заданиями не возникало, тем более если они были толково составлены преподом.
В пору сессий «подфартило» мне взяться за задачи каких то ПТУшников. Профит ожидался небольшой, но студенту три задачи по 40 рублей, помноженные на 40 человек в группе ПТУ, могли только сниться. Естественно, меры предосторожности я принял, сперва взявшись за задачи лишь одного человека. Полчаса — и две готовы, а взглянув на третью, я понял, что задания надо читать сразу. Не буду приводить точный текст, но требовалось написать программу, которая парсит и вычисляет логические выражения.