bash.im ithappens.me zadolba.li

Факапы

7676

Будет мягко и солнечно

2 ноября 2011, 11:45

Как-то раз одно важное госучреждение решало важную задачу федерального значения: создание некоего информационного центра. Предполагалось и построение датацентра (помещение, сервера, оборудование, питание, интернет и т. п.), и разработка специализированного ПО, которое будет в этом датацентре работать.

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

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

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

Правда, когда встал вопрос о вводе всего в эксплуатацию, неожиданно выяснилось, что программное обеспечение на базе Microsoft Windows не очень хорошо работает на серверах под управлением Sun Solaris.

7651

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

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

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

7616

Это вон туда

26 октября 2011, 10:00

Я 1С-разработчик в учебном заведении, имеющем филиалы и представительства в массе регионов нашей чудесной страны и не только. Последние несколько дней пишу справку к конфигурации.

Содержание лежит в HTML-документе. В хранилище в интересах теста я поместила тестовую справку. Сверху — содержание; ниже через якоря более подробно расписаны пункты, и из каждого такого подробного пункта можно вернуться в корень по ссылке «На х#й» 24-м шрифтом.

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

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

7589

Господин Йцукен?

23 октября 2011, 10:00

Нужно было как-то сделать форму регистрации на сайте. Целый день посвятил отладке и тестированию этой задачи: безбожно вбивал различные левые данные, что проверить, грамотно ли скрипт отрабатывает. Восемь часов регистрировал новых пользователей, заполняя поля формы ерундой вроде «qwe123».

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

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

7549

Минус минус два

18 октября 2011, 15:45

В славном городе Мельбурне сложная система оплаты проезда на общественном транспорте. Можно купить билет на два часа, на день, проездные на неделю, месяц и год. Всё это поделено на зоны (центр — зона 1, вокруг — зона 2). Для полного счастья — ещё и скидка в выходные.

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

А теперь немного цифр: несколько месяцев назад билет на два часа в зоне 1 стоил 2,94 доллара, а билет выходного дня (в любой зоне) — ровно 3. Если же купить проездной в зону 1 и проехать в зону 2, умная система засчитывала 2,94 и списывала только 6 центов.

А потом стоимость билета на два часа подняли до 3,02 долларов, и система начала исправно начислять всем пассажирам в таких случаях по 2 цента.

7538

Аутсорсер поневоле

17 октября 2011, 11:45

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

7519

Шли учения

14 октября 2011, 11:45

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

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

По возвращении она начала возмущаться: дескать, кто выключил её компьютер?! Там зарплата была, она её полдня набивала! Я решил поучить её уму-разуму, начал рассказывать, что нельзя оставлять работу несохранённой. Мало ли — скачок напряжения, например, и всё — кранты. Но бухгалтерша ни в какую не хотела внимать моим словам.

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

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

7507

Жизнь до девочки-робота

13 октября 2011, 11:45

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

— Алло, это служба поддержки Microsoft?
— &#я, это квартира, вы за#$али сюда звонить!

Проверил: номер набрали правильно. На складе оставалось ещё полсотни коробочек с «правильным» номером…

7485

Контрольный клик в голову

11 октября 2011, 10:00

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

Решили беду побороть. Наняли одинэсников, сунули им десяток билетов в Хабаровск и сказали «фас».

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

Внутреннее тестирование система с блеском прошла — пустили в бой. Спустя неделю в конце смены звонит кассир: у неё денег в кассе на 200 рублей больше, чем в сменном отчёте, а в отчёте на эту же сумму больше безнала, хотя она по картам ничего сегодня не пробивала. Думаю, что ошиблась — мало ли. Делаю возврат безнала по кассе без чека продажи (довольно серьёзное нарушение) и пробиваю ту же сумму налом.

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

Следующий день. Кассир уже чуть ли не плачет, а бухгалтерия собирается меня расчленить заживо и съесть без соли. Ещё раз напрягаю одинэсников. Ничего.

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

Звоню одинэсникам. Пытаюсь говорить спокойно. Они предлагают мне открыть код. Своими глазами вижу, что стоит явное присваивание при открытии окна. Смущает, что косяк только у одного кассира. Иду к тётке. Целый день стою и смотрю, как она работает, периодически снимая отчёты. Ничего. Хочется закурить, хотя уже почти год как бросил.

Спас случай. Моргнул на полсекунды свет. Кассы с сервером спасли бесперебойники, а свитч ребутнулся, и народ повышибало из базы. Все испуганными глазами смотрят на меня. Говорю заходить обратно в базу. Кассирша оборачивается ко мне:

— Вот! Смотри! Она опять сама переключилась!

Отгоняю тётку от компа, закрываю 1С, пробую сам. Всё нормально. Снова тётка. Снова ошибка. Как?! Краем глаза замечаю кое-что, пробую сам. Эврика!

При открытии базы окно 1С разворачивалось на весь экран, а вот вложенное окно модуля кассы — нет. Тётка распахивала внутреннее окно на весь экран двумя щелчками по кнопке. Первый действительно разворачивал окно, а второй доставался кнопке «Нал — Безнал».

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