7434

А в кино были синий и красный

Работал ремонтником-монтажником у провайдера. Мои коллеги наверняка могут прочувствовать всю ненависть к бешеным бабкам в холлах.

Заходим в лифт в одном из проблемных подъездов, с нами бабка. Ехать долго: ей на 16-й, нам на 22-й. Прижимаюсь в лифте к стене. В рюкзаке включается LAN-тестер. Тестер был умным, показывал метраж обрыва, как обжат кабель и прочее, но кнопки Hold на нём не было, вот мы и соединяли его с заглушкой — как включится, пищит. Батарейки нам раз в месяц выдавали.

— Бомба сработала! — шепчет напарник испуганно.

— Да… Плохо, мы так до чердака не доедем, — подыгрываю я.

— Ну так выключи её скорее!

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

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

7433

Аид на связи

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

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

7432

Так или никак

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

QBasic. Вместо чёртовых чисел в начале строки использованы метки. Куда ж удобнее 30-40 раз написать какое-то число, нежели использовать всего две метки на весь код, не правда ли?

Pascal. В начале не объявлено посередине экрана имя программы, несущее величайший смысл. «Неуд»!

Студентом проявлена инициатива и здравый смысл: при вводе переменных предусмотрена проверка принадлежности заданного значения области допустимых. Так делать категорически нельзя! Пусть программа делит на ноль, ищет корень из отрицательного числа, зато ничего лишнего. А если вылезет ошибка, студента отправят переделывать, не удосужившись глянуть в код.

Для экономии нервов и времени вся формула записана в одну строчку в пределах одного экрана. Зачем, если основную функцию можно разбить на …дцать слагаемых, посчитать в отдельной строчке (с числом в начале!) каждое, а затем ещё в одной отдельной строчке их сложить?

Этот список можно продолжать долго, но бессмысленно. Наверняка каждый встречался с советской тёткой с советским учебником, кричащей: «У тебя сделано не так, как в моей книжке, я проверять это не буду! Выключай процессор, дома переделаешь и на листочке мне принесёшь!»

К сожалению, забавного тут мало. Меня просто терзает вопрос: доколе? Не так ли зарождаются бухгалтеры?

7431

Вперёд без оглядки

Есть у меня знакомая Катя. Человек хороший, но в работе с компьютерами у неё проблемы. Во-первых, ей вообще к технике противопоказано подходить; во-вторых, старший сын (12 лет) то с порносайтов вирусов натянет, то документы рабочие убьёт, чтобы место для игрушки освободить.

В один прекрасный день решил я поставить Кате Убунту — дольше продержится, вирусы не страшны, да и сыну пароль можно не давать, а то надоело раз в месяц консультировать, что сохранять перед полной переустановкой системы и как ставить драйвера.

Решил научить ставить ОС самостоятельно. Пришла Катя ко мне. Я предумотрительно бэкапнул диск ноутбука на свой комп. Ставила она сама; я работал за своей машиной и говорил, что и где вводить.

Дело дошло до разметки диска. Я повторил, чтобы разметила, но не подтверждала, теорию рассказал (не зря два года курсы вёл). Сказала, что понятно. Разметила. Встаю посмотреть, вижу ошибку.

— Всё верно, кроме одного.

— А куда делась винда?

— Правильно, Катюша, ты сама дала команду её снести. Но не всё потеряно: жми «Отменить» и размечай заново.

Естественно, Катя нажала не «Отменить», а «Далее». Я с радостью понял, что сохранение данных было совсем не лишним.

7430

Китайский сюрприз на память

Был у меня ноут брендовый. Покупался ещё в 2006 году, потому памяти в нём был всего гигабайт, чего для моих нужд было не совсем достаточно. Давно думал расширить до двух, но никак руки не доходили.

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

Через 20 минут игры комп вылетел в «синьку». Ну всё, приехали… Для чистоты эксперимента я повторил процесс. Расстроенный, вытащил старый модуль и на одной планке работал до конца праздников.

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

На энной попытке понял, что вылет происходит при сильном нажатии на некоторые клавиши. Решил протестировать. Выключаю, включаю, приподнимаю край ноута и роняю на стол. Виснет. Выдёргиваю первый слот памяти, повторяю процедуру. Опять виснет. Выдёргиваю второй слот, ставлю первый. Всё нормально. Меняю планки местами. Опять глючит только второй слот.

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

Взгляд падает на какой-то металлический предмет, лежащий на ножках разъёма. Аккуратно пинцетом вытаскиваю… железку — блестящий уголок, которому отвалиться просто неоткуда: никаких следов крепления под винт или зажим у уголка нет.

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

7429

Гнездо ищет штекер

Пришёл к нам новый айтишник. Симпатичный. Я то мышку «сломаю» (из системника вытащу), то ярлык от аськи в корзину уберу и скажу, что она не работает, то Касперский у меня «что-то постоянно ищет». При этом софт нужный я всегда сама ставила. Айтишник каждый раз в шоке приходил: вроде девчонка умная, а с техникой беда…

Только через два месяца парень понял, как у меня техника «ломалась». И кто теперь умнее: юзеры или сисадмины, дальше собственной бороды не видящие?

7428

Шашечки или ехать?

Когда у вас отвалился инет, и вы звоните в саппорт, с вероятностью 99% те, кто его будут поднимать, уже знают, что он отвалился. Дополнительный звонок от человека, который ещё раз скажет, что инет упал, и даже подскажет, что сломалось, специалистам провайдера не просто не нужен — он вреден.

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

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

Отделу бухгалтерии почти из четырёх десятков человек хватило всего двух звонков для достижения отличного воспитательного эффекта.

7427

Ушла на базу, вернусь не сразу

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

Как-то раз в разговоре мне случилось упомянуть словосочетание «операционная система». Бабушка живо заинтересовалась, что это. Я пыталась объяснить доходчиво, как-то так: «ОС, если говорить очень грубо, — это базовый набор программ, при помощи которых запускаются все остальные программы».

Довольно долго вещала. Под конец бабушка, вскочив со стула и стремительно приблизившись ко мне на два шага, произнесла: «Ну давай, показывай эту свою операционную систему. Она вообще внутри или снаружи?»

7426

Пошлю его на…

На сайте, администрированием которого я занимаюсь, стоит известный счётчик посещений. Сайт создавал не я; конечно же, логина-пароля я не знаю. Кликаю на «забыл». Четыре опции:

— Забыл логин;

— Забыл пароль;

— Забыл логин и пароль;

— Забыл логин, пароль и контактный e-mail.

Выбираю последнюю. Предлагают ввести ID счётчика. Ввожу. Сайт радует сообщением:

На ваш контактный e-mail было отправлено письмо. Когда вы его получите (а, соответственно, узнаете, какой e-mail является контактным), воспользуйтесь формой восстановления логина и пароля.

Жаль, что в морду разработчику нельзя дать по TCP/IP.

7425

Кучка с горкой

Выполнял лабораторную работу по программированию под DOS (чтоб не забывать историю, наверное) на старом компиляторе, который в прогу добавляет проверку на присваивание нулевому указателю. Начали появляться сообщения об этом ошибочном присваивании. Для локализации ошибки закомментировал часть кода. Всего осталось примерно 800 строк кода на C++, в которых могла быть ошибка. Перечитал весь код, исправил пару ошибок. Ошибка пропала. Начал убирать комментарии — появилась опять. Ясно, что где-то глюк с указателем, и на ход выполнения программы влияет её размер. Ещё два раза перечитал весь код, нарыл пару мест, где можно было бы добавить проверки. Ошибка осталась. Под отладчиком в режиме ассемблера начал изучать код. Узнал подробности работы конструкторов и деструкторов классов, начал исследовать структуру хипа…

А потом что-то дёрнуло меня посмотреть, какого размера файл. 70 КБ при модели памяти в один сегмент. Код + данные + стек + хип > 64 КБ. А компилятор хоть бы предупредил…

Программисты, не забывайте русскую пословицу: «Доверяй, но проверяй».