Все права на текст принадлежат автору: Bashorgru IT .
Это короткий фрагмент для ознакомления с книгой.
Bash.org.ru IT Happens Истории ## 8501 – 8600Bashorgru IT

Bash.org.ru IT Happens Истории ## 8501 – 8600


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

#8501: Распечатать перед замятием

15:00 13.02.2012, IT happens


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


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


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



#8502: Трындеть команды не было

15:00 13.02.2012, IT happens


Работал в юридической фирме IT-директором и по совместительству менеджером проектов. На очередной оперативке директор решил, что юристам не стоит пользоваться ICQ по соображениям безопасности. Но общаться-то как-то нужно.


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


Даже не нашёлся, что ответить. Страницу с резолюцией сохранил на память.



#8503: Мелкий в мягком

15:00 13.02.2012, IT happens


В 2005 году доводилось мне работать на единственного в маленьком городке хостинг-провайдера. Услуга у нас была всего одна — BSD-хостинг. А один клиент захотел сайт разместить на Windows.


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


Убрали сервер только в 2007 году, когда клиент ушёл. Проверок за этот период было целых три, и залезть в диван никто не догадался.



#8504: Мои маленькие кривокодики

15:00 13.02.2012, IT happens


Ну что, программеры[2], померялись[3]? А теперь слово службе сопровождения ваших творений.


При установке необходимо отредактировать конфиги в XML. Господа, кто вам сказал, что XML подходит для этого? Перемещаться внутри облака тегов в поисках начала и конца, особенно если конфиг «всё в одном» — та ещё задача. Что, какой специальный редактор? Софт устанавливается на сервер, что стоит в бункере, и на каждый байт там требуется свидетельство о сертификации на гербовой бумаге. Что помешало посмотреть, как это делается вот уже более 30 лет в UNIX-системах?


Установка внезапно валится на одном из этапов. В мануале: «Укажите путь к файлу в конфиге». На деле в половине модулей эта настройка игнорируется, а путь тупо забит в коде. Да, это быстрее, чем парсить XML-конфиг, — а я что говорил?


В программе сотрудник привязан к двум отделам — такое ТЗ дал менеджер проекта. Но вот теперь нам надо к трём отделам. Что? Нужно полностью пересматривать структуру базы? А почему было не сделать это с помощью двух таблиц и связки между ними? Думали, не нужно? Сложно спорить. Программисту надо ставить задачу чётко, он рассуждать не умеет. Может, и код за вас написать?


Разработали новую версию? Ну зачем, зачем было менять структуру конфига? Это же теперь переносить все настройки со старого в новый. Кстати, как там с путями? Берётся везде из конфига, окей. А почему не работает? Путь слишком длинный, больше 256 байт? И что? Ограничение Виндоус? При чём тут Виндоус, у нас ведь Джава на Соляре? У вас Виндоус, вы думали, так везде?


Не хватает производительности базы, надо таблицы партиционировать. Что такое партиционировать? Это вы меня сейчас спрашиваете, разработчики? Подсказываю: вевеве-точка-гоогле-точка-ком. Индекс слетает, говорите? Подсказываю… А-а, догадались сами?


Логи где? Нет, вон в тех стапятиста мегабайтах сами ковыряйтесь. Где логи «пришло-ушло-упало»? Да, надо сделать. Да, именно так. Нет, стопицот не надо. Не получается? Подсказываю: гоогле-точка-ком, шестая ссылка, читать, делать. Мне за вас сделать? Хорошо, зарплату перечислите авансом или потом?



#8505: Базы — не игрушки

16:45 13.02.2012, IT happens


Работаю в небольшой IT-компании. Мы арендуем пару серверов в крупном датацентре. Как-то лет шесть-семь назад (вот вспомнилось почему-то) приютили мы на одном из этих серверов неких друзей тогдашнего директора с «молодым, но активно развивающимся проектом» — на первое время, пока запустятся, немного раскрутятся и определятся с собственным железом.


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


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


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


— Там не может быть проблем с производительностью, я всё тестировал на домашнем компе!


Я не стал расспрашивать, как он это делал, не стал и объяснять очевидных вещей. Знаю только, что проект доводили до ума (если доводили) уже где-то в другом месте.



#8506: Банкомат бережёт бабло

16:45 13.02.2012, IT happens


Я тот самый программист банкоматов, упоминаемый в недавней истории[4]. Постараюсь вкратце ответить на некоторые вопросы, волнующие автора.


Для начала давайте подумаем: что самое главное в работе банкомата? Красивый и удобный интерфейс? Нет. Последовательность выдачи денег, карты и чека? Нет. Сложная интеллектуальная система подсказок с постоянным обращением в процессиноговый центр? Опять нет.


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


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


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


У «П***-банка» тормознутые и медленные банкоматы? А вы пробовали сообщать об этом в сам банк? Большинство проблем со скоростью работы банкомата непосредственно связаны с находящимся внутри банкомата системным блоком типа «компьютер», который очень часто работает на всем известной ОС от дяди Билла. Иногда банальное увеличение ОЗУ приводит к многократному увеличению скорости работы железного ящика. Обратитесь в техподдержку банка, и через какое-то время, вполне вероятно, ваш банкомат будет летать со скоростью света.


И пока у банков на первом месте будет безопасность средств клиентов, вы не сможете поиграть в «косынку» на банкомате, как это делают на богомерзких платёжных терминалах, с вашей карты не украдут ни рубля, а запрошенная сумма будет всегда выдаваться в полном объёме и без сбоев. Удачи!



#8507: Сервис-пак ректально

20:45 13.02.2012, IT happens


Задолбали юные айтишники. Юные не в смысле возраста, а в смысле опыта работы.


Если вы ещё вчера лазили под столами с обжимкой, а сегодня «выросли» и уже «настраиваете сервер», раздавая доменным пользователям права, это вовсе не означает, что вы достигли вершин Олимпа.


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


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


Один прекрасно умеет настраивать сетевое оборудование, не просто слышал, но и понимает значение аббревиатур BGP или RIP, но при этом настоящий сетевой кабель видит в лучшем случае в виде фабричного патч-корда, а то и не видит вовсе.


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


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


А вы со своим отношением напоминаете уездного санитара, привыкшего лечить все болезни двумя таблетками аспирина — от головы и от задницы, а в тяжелых случая рекомендующего клизму (перезагрузку). Правильно, на хрена все остальные врачи?



#8508: Краснознамённый телесветофор

13:00 14.02.2012, IT happens


Дело было в армии. Я единственный общался с паяльником на «ты», потому был нарасхват.


Однажды поставили задачу сделать на выезде из военной части светофор, состоящий из зелёного и красного фонаря. Всё просто, если бы не требования: светофор должен был управляться с компьютера дежурного по городку (почти 500 м), используя заброшенную двухпроводную телефонную линию. День дали на раздумья и день на монтаж.


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


Все поставленные требования были выполнены. Сдавал лично командиру части, за что получил дембель на неделю раньше.



#8509: Экспекто Зависонум

13:00 14.02.2012, IT happens


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


Не так давно решил поиграть в LEGO Harry Potter — как-никак фанат и всё такое. И что вы думаете? Вылетает из игры на том же моменте!



#8510: Наш приходящий дурачок

13:00 14.02.2012, IT happens


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


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


— А вот почему экран мерцает? (Не установлены драйвера интегрированных видеокарт.)

— А у вас видеокарты нет и комп слабоват! (Это при двух ядрах и двух гигах-то.)


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


— Тебе, наверное, силовой кабель нужен?


Опять не понимает. Уточняю:


— На 220 с вилкой, которая в электрическую розетку?

— Угу.


ПО видеорегистратора не может работать на недоосях. Рекомендуем установить «хрюшу». Ответ ошеломляющий:


— А где мне её взять?


Молча даю диск Зверя.


Впоследствии он нам ещё названивал, что-то там про 192.168… спрашивал.


Этот человек будет заниматься рекламой услуг офиса. Чувствую, далеко пойдет.



#8511: Пятница, пропавшая в процентах

15:00 14.02.2012, IT happens


Есть крупная фирма, торгующая косметикой. У них довольно много магазинов по всей стране, есть и веб-сайт, который делала моя фирма. Сайт получился вполне ничего, но модуль, отвечающий за всякие скидки, c логическими правилами типа «если покупатель покупает на сумму X товаров бренда Y, сделать скидку на сумму Z», получился сложноват. А правила эти менялись каждую неделю. В пятницу. Вечером, ага. ...



Все права на текст принадлежат автору: Bashorgru IT .
Это короткий фрагмент для ознакомления с книгой.
Bash.org.ru IT Happens Истории ## 8501 – 8600Bashorgru IT