[bash.org.ru] [IT Happens] [zadolba.li]

IT Happens

Клиент и саппорт. Разработчик и заказчик. Программист и программа. Вести с фронтов.

#1418: Улыбайтесь — это всех раздражает

9 ноября 2009, 09:00

рейтинг: 2111

Работаю в компании, разрабатывающей ПО для восстановления баз данных. Запускали мы новый продукт. После очередной крупной сборки отослали копию московскому начальству — посмотреть и попробовать. Через пару часов приходит ответ:

Запустил программу. GUI простой и понятный, всё нормально. Взял три базы, попробовал восстановить. На двух программа просто завалилась, на третьей выдала message box с таким текстом (скриншот прилагаю):

Shit happens. Keep smiling!!!

Не знаю, что и думать...


В тот день разработчики надолго остались на работе.

 

#1327: Планы на будущее

10 октября 2009, 09:00

рейтинг: 1948

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

И вот однажды мне сообщают из дальнего обменника, что программа наконец сбойнула — они вводят правильный курс, но компьютер «продаёт по-вчерашнему». Беру машину, еду на точку, ввожу правильный курс — шестнадцать, что ли рублей — прога продает по 15,70. Смотрю базу — все записи нормальные, что сегодня, что вчера. Меняю экзешники и библиотеки — нет результата. Начинаю дебаггинг — дохлый номер, откуда-то из базы вырисовываются 15,70, хоть ты тресни.

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

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

 

#1309: 1С:Мошенничество

4 октября 2009, 09:00

рейтинг: 2137

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

Проходит пара месяцев, вызывает меня директор и начинает осторожно выспрашивать, сколько получают в Москве программисты. Я, естественно, интересуюсь, в чём же дело. Выясняется, что крутые базописатели изначально запросили за работу $15000, но, получив эту сумму и немного поработав, потребовали еще $3000: «Работа мудрёная — добавить надо...» Начальство задумалось, но добавило.

Наконец, база была запущена в эксплуатацию, и немедленно полезли глюки и баги. Естественно, менеджеры начали звонить мне. Я пошел к начальству прояснять ситуацию:

— А почему нельзя обратиться к авторам базы?
— Они требуют $100 в час за поддержку.
— А вы в договоре прописали порядок проведения и оплаты пусконаладочных работ?
— Мы с ними договор не заключали.
— А где описание базы и инструкция по эксплуатации?
— Они ничего не оставили...

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

Подоспел дефолт. Фирма обанкротилась, и модернизация базы потеряла актуальность. Через пару лет на одном из старых компьютеров я случайно обнаружил исходники знаменитой базы. К тому моменту я уже разбирался в этих вопросах гораздо лучше, и решил, наконец, посмотреть, на что потратили больше 18 килобаксов. Что же я обнаружил? Одну из первых версий 1С с незначительной правкой!

 

#1292: Уникальное предложение

28 сентября 2009, 16:45

рейтинг: 799

Работал в phpMyAdmin и одновременно с этим искал что-то в интернете. Выскочило всплывающее окошко с рекламой, которое я случайно закрыл двойным кликом.

На первый клик реклама закрылась, а вот на второй один из индексов в SQL-таблице стал уникальным. Я больше часа пытался понять, почему в админке сайта новые страницы не добавляются...

 

#1192: Два часа в позиции «Декомпиляция ядра»

25 августа 2009, 20:30

рейтинг: 1128

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

Буквально через день в процессе доработки этого класса появилось желание вынести позиции полей данных в этой строке в константы во избежание появления ошибок в дальнейшем. Был выбран простой синтаксис: *Position обозначало позицию поля данных в строке, а *Length — её длину. Например, birthDatePosition и birthDateLength — всё просто и понятно.

Только по прошествии получаса до меня наконец дошло, что речь-то идёт о разборе данных о человеке. Теперь невиннейшие константы sexPosition и sexLength в коде навевают определённые мысли о собственном моральном облике.

 

#1125: Неудачная маскировка и настоящая любовь

3 августа 2009, 20:30

рейтинг: 5041

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

Разумеется, дамы иногда вызывали своего компьютерщика. И так уж случилось, что он мне понравился. Он не был красавцем, но был обаятельным, воспитанным, неплохо, а главное, аккуратно одевался: отутюженный костюм-тройка, галстук, надраенные до блеска туфли. Айтишник всегда приходил на работу с гладко выбритой головой и приятно пах одеколоном, причём, в отличие от многих мужчин, он не «поливался парфюмом из тазика», а знал меру. Что ещё понравилось — он очень вежливо и обстоятельно объяснял причины возникновения ошибок и методику их устранения. Это помогало, только вот большая часть проблем шла от программы, написанной для сметчиков. А править ее ему не разрешали — дескать, «сторонний проект, на гарантии».

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

— Вот. Мышка. Не работает.

Админ хмыкнул, проверяя емкость мышиного аккумулятора и силу сигнала:

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

На второй день я «случайно» нажала F1, сидя в программе сметчиков. Та выдала «непонятное окно», на что я не преминула пожаловаться. Действительно, по какой-то странной прихоти программистов, практически каждое окно имело свой список горячих клавиш (как вам сохранение через Shift+F5 в одном окне и через Alt+F12 в другом?), а F1 вызывал не справку, а набор поправочных коэффициентов, корректировку концовок или выбор вида работ в зависимости от активного окна. Мало того, окно по Alt+F4 не закрывалось, «крестика» не было — надо было жать Enter на «нумпаде». Пришёл айтишник, я выпучила глаза в мольбе и беспомощно пропищала, тыкая пальчиком в монитор: «И-и-и…»

Админ закрыл окно, вежливо посоветовал не нажимать ненужных клавиш и сказал, что файл справки — это во-он тот талмуд на подоконнике. Пошёл к выходу, но в дверях остановился, развернулся и сказал:

— Завтра меня не будет, я еду за оборудованием. Так что милые дамы, я был бы вам очень признателен, если бы завтрашний день прошёл без эксцессов.

На третий день я оказалась почти без дел и решила полазить по компьютеру. Первым делом решила проверить ту программу, в которой вынуждена была работать. К моему удивлению, основная база оказалась вообще без единого комментария. Меня это удивило, и я решила покопаться поглубже. В хорошо запрятанной директории я нашла файл с другим именем, расширением и горазо большего размера. Открыла — база! С комментариями, только весит впятеро больше и тормозит раза в три сильнее. Так за курением чужого кода день и пролетел.

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

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

Друзья потом долго шутили, что я вышла за него замуж только для того, чтоб понять, где же я прокололась?

 

#1059: Сам шучу — сам смеюсь

12 июля 2009, 11:00

рейтинг: 1832

Пришел однажды заказ: написать БД с web-интерфейсом для использования на нескольких машинах по локальной сети. Работа была выполнена, осталось установить систему у заказчика. Приезжаю, вливаю дампы, настраиваю конфиги — на серваке всё работает! Ну думаю, всё отлично.

Открываю браузер на клиентской машине, вбиваю IP сервера — не работает... Три часа танцев с бубном результатов не принесли: я и брандмауэр отключал, и винду обновлял, и от вирусов лечил.

На исходе рабочего дня я догадался залезть в настройки браузера. Конечно, дело было в прописанном прокси-сервере. Я бы всё понял и публично признал себя идиотом, но интернета в конторе не было. Обращаюсь к местному админу с болью в голосе:

Зачем?!
— Ну так... Развлекался.

 

#980: Андеграунд-бухгалтерия

16 июня 2009, 20:30

рейтинг: 4833

Недавно почувствовал себя настоящим Шерлоком Холмсом. Работаю в IT-отделе достаточно крупной конторы, устроился недавно одновременно с напарником. Решили провести инвентаризацию всего барахла, что на нас свалилось — начали, естественно, с серверов. По бумажкам их 23 штуки, все пингуются. Лезем в серверную, начинаем маркировать и находим только 22. Не хватает BSD'шного сервака с редко используемыми, но очень ценными базами данных. Чешем репу, спрашиваем у своих — никто не знает. Идём к начальству, получаем телефоны предыдущих админов — те говорят, что с проблемой знакомы, но этот сервак они так и не нашли. Вы его, мол, не трогайте, авось пронесёт.

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

Постепенно начинает доходить, что сервер подключен вайфаем. Начинаем проверять точки доступа — бинго! Сервак коннектится через точку, находящуюся в офисе площадью 300 кв. м. Ну, думаем, дело за малым. Выпили по этому делу и отправились искать. Осмотрели всё: потолки, сейфы, сортиры, простучали стены. Нашли местного электрика, угостили водкой и подключили к поискам. По пьяни появилась идея вырубить все компы и послушать. Обползали весь офис с кружками у уха — пусто. Посмотрели спецификацию точки — шарашит на 75 метров, с учётом стен выходит примерно 40–50. Электрик притащил схему помещений, на которой мы циркулем обозначили круг поисков. Пошли прочёсывать по второму разу.

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

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

 

#971: Зелёный змий, истребляющий баги

13 июня 2009, 20:30

рейтинг: 3928

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

С утра Костян был обнаружен за компом. Он сидел, держась за больную голову, и бубнил себе под нос одну фразу: «Как же я это написал?..»

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

 
 
текст или номер истории
реклама
обратная связь
Хотите разместить рекламу?
Информация для рекламодателей.

Вопросы, предложения, что-то не так на сайте? Пишите в саппорт!
на сайте
Утверждено: 8397
Сегодня: 3
В рассмотрении: 2008
тэги
лучшие последних семи дней
статистика
Рейтинг@Mail.ru