bash.im ithappens.me zadolba.li
7764

Технология «Антикопипейст»

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

Вместе с операционкой поставлялась книга документации этого самого гениального API в HTML-формате — так называемая BeBook. Книга была подробна, грамотно спроектирована, неплохо оформлена и пестрела интересными примерами кода. Вдруг выяснилось, что примеры, приведённые в книге, временами не то что падают с ошибками, но даже и не компилируются. Компилятор ругается на что-то, чего в исходном коде просто нет! Ещё веселее становится, если набрать этот же самый пример вручную: он без проблем компилируется и запускается.

Вдумчивое курение всего, что только можно, подсказало, где собака порылась. BeOS изначально работала в кодировке UTF-8, и в этой же кодировке была написана вся документация. Но поставляющиеся с BeOS шрифты не содержали абсолютно всех прописанных в UTF-8 символов. Так вот, там и сям в BeBook попадались эти самые UTF-символы, которые ничем не отображались, поэтому с точки зрения пользователя в любом вьюере или текстовом редакторе выглядели пустым местом. Но значения-то своего они при этом не теряли! Компилятор, неожиданно натыкаясь на непонятную пакость, считающую себя символом, естественно, начинал безбожно ругаться.

Некомпилирующиеся примеры из официального руководства программиста я никогда не забуду.

7763

Ничем-то вас не пронять

13 ноября 2011, 10:00

Мне на днях из МГТС позвонили.

— Сколько вы за интернет платите?
— 1500 рублей.
— А можете платить 300! — бодро отвечает телефонист.
— Какую скорость вы предоставляете?
— До полутора мегабит, вам этого хватит!
— На что мне этого хватит? — продолжаю я тратить время этого чудика.
— Например, фильм в DVD-качестве будет у вас скачиваться примерно три часа.
— Да, но сейчас у меня оптоволокно со скоростью 100 мегабит, и фильм в Blu-ray-качестве скачивается значительно быстрее, чем у вас DVD.
— Ну, оптоволокно — это прошлый век. Мы предоставляем ADSL2. А вы уверены, что ваш интернет выдаёт 100 мегабит?
— Да, — без единой доли сомнения отвечаю я.
— Замечательно! — неожиданно вскрикивает мальчик на том конце провода и кладёт трубку.

7762

Извините за неровный почерк

13 ноября 2011, 10:00

Зимняя сессия на заочном факультете. Пара по алгоритмам программирования. Препод ушла на совещание, оставив меня за старшего.

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

begin
var i, z:integer;
begin
forI:=0to5do
forJ:=0to5do
begin
z:=z+SrnToLnr(StreengGrid1.Ceiis[I,J]),
end;
end.
end;

У меня глаз чуть не выпал от такого «кода».

7761

С песней по жизни

13 ноября 2011, 08:00

Недавно получили от одной начальницы служебку:

В целях ускорения работы сотрудников подразделения прошу заменить клавиатуры на медийные со следующими кнопками:

— Вырезать
— Копировать
— Вставить
— Проигрывать
— Пауза
— Прибавить звук
— Убавить звук

7760

Позыв в формате CGI

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

Лежу я в полудрёме и думаю: «Скрипты — это здорово. Кода мало, компилировать не надо, тестятся прекрасно. Но вот хлынут посетители на сайт — и что тогда? Сервлеты-то постоянно в память загружены и мгновенно обслуживают запросы, а скрипт — его же каждый раз с жёсткого диска загрузить надо, да сопутствующие утилиты и библиотеки, да всякие прочие накладные расходы…»

Тут в засыпающее сознание поступает вполне конкретный физиологический позыв. Но кодинг не отпускает: «Вот взять хотя бы посещение туалета по малой нужде. Если ты встал с кровати, прогулялся до белого друга, выполнил все прочие формальности — это CGI. Батюшки, это сколько же накладных расходов! А вот сервлет — это другое дело. Его можно сравнить с ситуацией, когда ты, скажем, в памперсе или в скафандре, как космонавт. Поступил сигнал — сразу пошёл ответный процесс… Не-е-ет!»

В общем, бежал быстро и успел реализовать позыв в формате CGI. Может, оно и сурово, и с некоторой задержкой во времени, зато надёжно и гигиенично.

7759

Ещё проще, ещё пожароопаснее

13 ноября 2011, 08:00

Живу в общаге технического вуза. Нежданно-негаданно прилетает проверка на электроприборы: чайники и обогреватели нельзя. А мы с соседом только что чай вскипятили. Естественно, чайник у нас попытались конфисковать, а чтоб не носить кучу трофеев, забрали только подставку. Но мы же студенты, к тому же русские, и для нас нет ничего невозможного.

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

7758

Трижды твою мать!

12 ноября 2011, 10:00

У нас в банке шесть лет назад начальник отдела программирования выставил для проверки на пустую дату в платёжных документах 11 ноября 1911 года… Скотина.

А какая-то сволочь, не разобравшись в камментах, три года назад обновила программу и убрала проверку на пустую дату по веку, оставив только по году… Падла.

Вчера у нас был ад и холокост. У тысяч клиентов, решивших отправить платёжки через банк-клиент, программа выдала fatal error и завершилась, а платёж подвис в воздухе. С самого утра телефоны разрывались. Я-то не программист, но я сижу с этими скотами в одной комнате! Так вот, одна из этих сволочей по-быстрому накатала патчик, но не проверила его и воткнула в автообновление для всех клиентов. Патчик при установке вешал программу-сетапер. Начали звонить ещё и те, кто платежей не производил, но решил обновить программу.

Мозг кипит от звонков, начальство периодически заходит и орёт на всех, не разбираясь, программисты или сисопы. В коридоре — толпа клиентов, жаждущих крови. По телефонам уже звонят в соседние отделы, просят принести трубку сюда и ударить ею в голову.

Трижды одиннадцатого трижды проклятые три программиста с интервалом в три года попортили нам тройное количество нервов, а обед задержали на три часа. Кое-кто лишится премии и, возможно, пройдёт сеанс терморектального криптоанализа. Проверяйте свой код, товарищи.

7757

Блоков мы не покупали

12 ноября 2011, 08:00

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

Процессор Core i5…

И вот как прикажете занести в учёт эту вещь, чтобы потом проверка поверила на слово?

7756

Юнит-тестом — в живого человека?

Будни российской софт-компании.

— Ты не поверишь! Нам тут предлагают свой код тестить.
— Не, ты что! Это же инцест получится!
— Ну… Смотря как воспринимать свой код: как своё детище или как продолжение себя. Если как продолжение себя, то вообще онанизм выходит.