Выбрать главу

День в муках рождался документ, и вот настал торжественный момент передачи задания исполнителю. Я развернул лист и увидел там самое краткое ТЗ в мире:

Программисту написать программу.

#7650: В далёкой-далёкой галактике, в большом-большом театре

12:00 31.10.2011, IT happens

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

Как-то раз в Большом театре должен был проходить какой-то масштабный концерт. Соответственно, потребовались трансляционные экраны, и этот человек оказался в бригаде. До генеральной репетиции они успели уложиться с работой на сцене, остальное действо проходило уже с пультами. Все подключено, осталось оттестировать. К счастью, экраны мог видеть только дирижёр, которому наверняка стоило титанических усилий сохранить самообладание. Ребята не нашли ничего лучше, чем проверить экраны нарезкой из «Звёздных войн».

А что делали вы, когда космические корабли бороздили Большой театр?

#7651: Бьём в одну точку

12:00 31.10.2011, IT happens

Однажды пришлось мне настраивать SMS-уведомления сотрудникам компании о предстоящих мероприятиях. Ну, как обычно: делаю выборку телефонов и имён из БД, перебираю массив и отсылаю сообщение: «%name%, напоминаем вам, что…» Вследствие того, что у одного пользователя может быть больше одного телефонного номера, сделал ещё один перебор массива с номерами внутри массива с сотрудниками. Поставил LIMIT 1 в SQL-запросе, проверил на себе — всё работает. Убрал лимит и запустил скрипт.

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

#7652: Смотрите все: я знаю алфавит!

12:00 31.10.2011, IT happens

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

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

{Podschet dlini}

Reset(f1);

koclass="underline" =0;

while not eof(f1) do begin

readln(f1,l);

For i1:=1 to length(l) do if (l[i]='a')or(l[i]='A') or (l[i]='b')or(l[i]='B')

or(l[i]='c')or(l[i]='C')or(l[i]=' ')or(l[i]='d')or(l[i]='D')

or(l[i]='e')or (l[i]='E') or(l[i]='f') or(l[i]='F')

or (l[i]='g')or (l[i]='G') or (l[i]='h')or(l[i]='H')

or(l[i]='i')or(l[i]='I')or(l[i]='J')or(l[i]='j')

or(l[i]='k')or(l[i]='K')or(l[i]='l')or(l[i]='L')

or (l[i]='m')or (l[i]='M')or(l[i]='n')or(l[i]='N')

or (l[i]='o')or(l[i]='O')or(l[i]='p')or(l[i]='P')

or(l[i]='q')or(l[i]='Q')or (l[i]='r')or (l[i]='R')

or(l[i]='S')or(l[i]='s')or(l[i]='t')or(l[i]='T')

or(l[i]='v')or(l[i]='V') or(l[i]='w')or(l[i]='W')

or(l[i]='u')or(l[i]='U')or(l[i]='x')or(l[i]='X')

or(l[i]='y')or(l[i]='Y')or (l[i]='z')or(l[i]='Z') then

koclass="underline" =kol+1;

end;

WriteLn('kol=',kol);

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

#7653: Быстрее, выше, больше

12:00 31.10.2011, IT happens

Как правило, новые версии программ предъявляют более высокие требования к железу, нежели предыдущие. Ведь новые рюшечки и перламутровые пуговки — это так практично, эргономично и прочие «-ично»! Но 2010-й офисный пакет от мелкомягких и тут смог отличиться. До чего же удобно и красиво смотрится изменение формата файла из XLS в XLSX с одновременном увеличением размера с 500 КБ до 125 МБ!

#7654: Такой дорогой, такой беззащитный

14:00 31.10.2011, IT happens

Приходит клиент, заказывает комплектующие. Говорим, что соберём и привезём на дом бесплатно. Не соглашается: он, дескать, не дурак, сам сможет собрать, тем более это очень интересное занятие. Довольный, уходит с дорогой покупкой.

На следующий день клиент приносит собранный собственноручно комп и спокойно указывает, что тот почему-то не работает. Подключаем для проверки и с удовольствием наблюдаем дым из системника. Разбираем и находим провод питания FDD, подключённый к четырёхконтактному разъёму питания процессорных вентиляторов на материнке. Оказывается, очень даже неплохо подходят по размерам.