На IT happens было: «Преподавательница реляционных баз данных, при мне объяснявшая студенту, что таблица, распечатанная им непосредственно из Access, ну никоим образом не находится в первой нормальной форме».
Не буду спорить, насколько плоха преподавательница. Но разве таблица из СУБД может быть не в 1NF? Оказывается, может. И я это видел в живом проекте.
Большая американская сеть магазинов одежды. В магазинах есть отделы (три наименования). Любитель нормализации сделал бы список отделов и таблицу-связку. Пофигист обошёлся бы тремя полями:
has_kids
,
has_plus
,
has_shoes
. Эти сделали набор отделов строчкой: «Kids, Plus, Shoes».
На заре своей карьеры пришлось мне устроиться работать экспедитором. Сопровождал груз с телефонами, симками и другими мобильными побрякушками. Не айтишник, конечно, но пока в армию не забрали, и так сойдёт.
Приехал как-то на объект. Пока продавцы-консультанты принимали товар, сидел за стойкой продавца и копался под столом. Обнаружил там китайский MP3-плеер на батарейке типа ААА. Спрашиваю у одной девушки, почему этот плеер там лежит. Она говорит:
— А он не работает, не включается. Я как полгода назад пришла сюда работать, он тут лежал, так до сих пор никому не нужен и никто не выкидывает.
— Хм, а дайте мне его. Я его как флешку буду использовать.
— Да забирай!
Тут же под столом нашёл батарейку. И вправду не включается: экранчик моргает, больше ничего не реагирует. Начинаю внимательно изучать, а там проприетарный разъём. Как флешку можно будет использовать, только если найду кабель. Оставил на потом.
Вечером, вернувшись с работы, зашёл в интернет и решил изучить характеристики плеера: что можно с ним сделать, где кабель достать. Читаю: «Ударопрочный, пыле-, влагозащищённый корпус»… Хм, я ничего не теряю — и со всего маху раз об стенку! Батарейка выскочила. Вставил обратно — и снова об стенку! Смотрю — экранчик ожил, показывает, что мелодия предустановленная заиграла. Подключаю наушники — всё работает отлично.
Я — та самая девочка-дурочка, которая будет вызывать вас через два этажа с требованием починить неработающий принтер и мило хлопать глазками, когда вы включите его в розетку, нажмёте на нем кнопочку «вкл» или поставите другой картридж, лежащий в соседнем ящике. Я позову вас вылечить вирус, а сама буду рядом мило трындеть по телефону с другим сотрудником. Я буду плакать, если бэкап Очень Важной Базы Данных вчера вы решили не делать, ибо «каждый день — это слишком часто», и жаловаться вашему начальнику (лично), гендиректору (письменно) и своей маме (по телефону).
Я — бухгалтер. Сегодня я должна выставить девять инвойсов иностранным компаниям на сумму с шестью нулями в фунтах стерлингов. Потом за особо прибыльных клиентов необходимо посчитать комиссию продажникам (с ними я говорю по телефону, пока вы чините мой компьютер): благодаря отделу продаж у нас есть эти компании и эти деньги. Затем хорошо бы подготовить отчёт для аудиторов, чтобы работу компании не заблокировали «до выяснения». Остальное необязательно, но…
Офтопик. Я — дочь сисадмина. Я могу найти неполадку в принтере, правильно подключить ИБП, установить обновления, вылечить вирус. Я способна самостоятельно переустановить винду, сохранить бэкапы и восстановить из них базу данных.
Но «остальное» — это премия, выплачиваемая всем сотрудникам просто потому, что компания в данный момент зарабатывает много денег. Не правда ли, хорошо бы мне успеть «остальное», а вам — искать ерундовую неполадку вместо меня?
Мне недавно принесли флешку. Говорят, что якобы сломалась и ещё пару компов с собой в компьютерный ад прихватила, а на флешке куча важной информации, восстановить нужно всё срочно.
Тыкаю флешку (да-да, без всяких тестирований и прочего — не верю я байкам о сгоревших компах), но монитор не тухнет, дыма из БП не идёт, а кулер спокойно гудит, как ни в чём не бывало. Флешка определилась, все разделы на месте — значит, жива.
Пока не монтирую, вместо этого поднимаю виртуальную машину. Проверим, сохранилась ли информация… Подключаем флешку, смотрим: все папочки на месте, всё в порядке. Но в мозг закрадывается профессиональное сомнение, всё ли в порядке, ещё до того, как я осознаю, что все папки выглядят как-то странно. На виртуальной машине (голая и навечно «только что установленная» XP) не было совсем ничего настроено, однако иконку папки проводник отображал очень даже Вистовскую. Ах вот как! «Панель управления» → «Свойства папки» → галочки «Отображать скрытые файлы и папки» и «Отображать расширения» — готово! Хитроумный вирус скрыл все папки, скопировал себя на флешку и назвал каждую копию так же, как папки, лежавшие в корне.
Отдав чистую флешку хозяину, я скопировал экземпляр вируса на рабочий стол XP и запустил. Вирус сработал безотказно, снеся всё, что было возможно, но через минуту XP снова чувствовала себя только что установленной. Хорошая всё же штука эти виртуальные машины!
Получил письмо из США. В одном городе некий предприимчивый владелец типографии выпустил механическое приспособление для вычисления стоимости одного фунта продукта в супермаркете. Выставляешь, сколько стоит упаковка и сколько в ней фунтов продукта — узнаешь, почём один фунт. Продаётся новинка в ярком блистере с надписью: «Faster than on a calculator». Раскупается!
Восхищающийся — знаток ассемблеров для нескольких микроконтроллерных архитектур, а также четырёх восточных языков. Никак не попадает он под задорновские стереотипы. А переработанную логарифмическую линейку в картонном вычислительном устройстве не узнал.
А я знаю, почему люди ломают технику, чтобы сдать её в сервис по гарантии в неремонтопригодном состоянии. Попользоваться и вернуть деньги? Нет, не за этим.
Возьмём жесткий диск. У него было трудное детство: в подсобке магазина уронили целый стеллаж. Упаковки аккуратно вскрыли, на скорую руку проверили; мёртвые и потерявшие товарный вид «повесили» на зарплату сотрудников склада, а те, что заводятся, не шумят и без бэдов, запаковали и пустили в продажу.
Какая дальнейшая судьба этих дисков, я думаю, ясно. Скорее всего, харды получили множество скрытых повреждений, которые проявятся позже. Некоторое время это будет видно по S.M.A.R.T. — будет расти количество ремапов, будут ухудшаться и другие показатели. Претензий не предъявишь: формально диск работает, но…
И вот — первые «бэды». Их уже можно предъявить гарантийке. Что она сделает? Запустит принудительный ремап. Диск перестанет показывать плохие сектора, и вроде всё в порядке: упавшую скорость и плохие показатели S.M.A.R.T. к делу не пришьёшь. Доверия к диску уже нет: окончательно помрёт в любой момент, унеся за собой информацию, а чтобы его поменяли, нужно, чтобы он либо умер совсем (причём без возможности его временно «поднять»), либо явные неисправности появились три раза в течение гарантийного срока. Остаётся либо наплевать на гарантию и покупать новый, либо добить тушку «без палева».
Сейчас очень много таких вещей, которые не починишь в связи с тем, что либо нечего чинить, либо слишком тонкая механика. Зато очень много где легко замаскировать проблему — перепрошить (некоторое время дырявая флеш-память эту прошивку будет держать, а потом снова заглючит), прогреть плату феном (микротрещины проводников временно закрываются, и некоторое время прибор работает), программно скрыть явные дефекты («битые» сектора на дисках и SSD, дефектные пиксели и даже целые строки пикселей на матрицах фотоаппаратов, нерабочие ядра процессоров и видеоконтроллеров)… В результате такого «ремонта» мы либо временно получаем работающее устройство, либо всё работает и будет работать в дальнейшем, но с существенным ухудшением. И гарантийные мастерские этими способами охотно пользуются, вынуждая людей идти на вандализм.
Сам работаю в сфере сервисного обслуживания мобильных телефонов. За то короткое время, что я занимаюсь ремонтом, попадались разные клиенты, которые просто не понимали работу мобильных телефонов и не хотели читать инструкцию по ним.
Не слышно собеседника во время разговора? Сдают в сервис, а в итоге надо всего лишь «качелькой» громкости звук увеличить.
Необходимо ввести пароль для передачи файлов через «синезуб»? Оказывается, это простой тест на сопряжение устройств.
А сколько клиенты придумали историй для того, чтобы снять забытый графический ключ (нам производитель за это не заплатит) — сложно представить.
Попадались и «вдруг сломавшиеся» телефоны перед окончанием гарантии. Клиенту ведь хочется новую флагманскую модель, ведь его прошлогодняя уже устарела! Придумывают и делают разное, но в конечном итоге обычно получают отказ в гарантийном обслуживании. Так и живём, ведь если человек хочет выдать свою поломку за дефект производителя или износ — опытный мастер это сразу увидит.
Идиллии, как в ремонте холодильников, не наступит до того, пока клиенты не перестанут хотеть бесплатно получать новые гаджеты взамен старых.
Мой крёстный отец дядя Володя — пенсионер, ещё с совка инженер-энергетик, обслуживал подстанции высоковольтных ЛЭП в горах. Горы ему очень понравились, вот на пенсии он и решил туда переселиться. Сдал в аренду городскую квартиру, купил в несколько отдалённом от известных курортов селе домик (так дешевле) на три комнатки да кухню и стал там жить. Ездит к нему в гости вся наша семья (он человек одинокий, родных у него нет). Из связи там только GPRS, посему телефон у него даже кнопки имеет. Человек он не бедный, технически грамотный; поначалу мы не понимали, зачем ему этот «антикварный» аппарат.
Приехали мы с девушкой к дяде Володе на отдых, естественно, с телефонами: у неё дорогая корейская коробочка из дешёвого пластика, у меня уже не совсем новый, но до сих пор самый большой в мире телефон (аппараты больше при наличии модуля 3G-связи телефонами уже не называют). Такая техника и при нормальном-то сигнале съедает батарею за сутки и двое соответственно, а в условиях «дикого GSM» мой телефон, если здоровым дисплеем много не светить, автономно живёт и вовсе часов двенадцать.
Вернувшись вечером с прогулки, мы замечаем прискорбные факты: зарядка от телефона девушки успешно оставлена в городе (стандарт-то один на всех); моя же, в отличие от самого телефона, очень даже водопроницаемая, дымом воняет и проводку почти сжигает. Очень плохо, без телефона мне оставаться крайне нежелательно.
На запах безвременно погибшей зарядки заходит дядя Володя, включает обратно «пакетники», говорит: «Что, сгорела? Сейчас тебе от своего дам», — и уходит в сарай. Я, зная, какой у него телефон, просто из вежливости благодарю.
Вернулся он спустя насколько минут, неся в руках нечто в жестяном корпусе размером с бытовой ИБП и Micro-USB-кабелем. Впрочем, не только: ещё Mini-USB, несколько «иголок» разного диаметра, два неизвестных мне проприетарных разъёма и ещё здоровенный разъём DIN. Зарядное устройство тихо зажужжало, мой телефон пришёл к заключению, что его подключили к компьютеру, и зарядился несколько медленно, но вполне качественно.
Утром я спросил у дяди Володи, куда ему зарядное устройство поставить, на что он ответил: «Держи у себя, ты же на неделю только, а я совсем недавно заряжал, дня три-четыре тому». Понятно, телефон, конечно, древний, жрёт мало, но не настолько же! Всё стало понятно, когда дядя Володя показал свой мобильный. Телефон утратил родной корпус и батарею, его смонтировали в большой пластиковый контейнер с аккумулятором втрое большим, чем сам телефон, который и заряжался вышеупомянутым DIN-разъёмом.
Читая произведение З. Фрейда «Тотем и табу», понял, где коренится причина многих диких и нелогичных действий некоторых пользователей: в магической, а не причинно-следственной картине мира и следующей из неё анимистической технике, для которой и расстояния при отсутствии среды передачи не помеха, и телепатия в порядке вещей, причём между неодушевлёнными предметами тоже.
Ещё в 1902 году газеты просвещённой Англии писали, хотя и в качестве курьёза, о женщине, умершей от столбняка, потому что она по старому магическому обычаю заботилась о гвозде, на которой напоролась, а не о своей ране. Хочется верить, что многие здешние истории будут восприниматься тоже как проявление дикости не только в среде касты служителей вычислительной техники, но и во всём обществе много раньше, чем через сто лет. Но для этого помимо ликвидации компьютерной безграмотности надо, чтобы и сисадмины не строили из себя жрецов, подпитывая веру неокрепших умов, а знали матчасть настолько хорошо, чтобы суметь доходчиво и не привлекая магических сущностей отвечать на вопросы пользователей.
Компьютеры и прочая лабудень остались далеко в прошлом. Ну, как в прошлом — до армии увлекался. А сейчас семья, дети надо зарабатывать, а не просто работать.
Позвонил знакомый, сто лет с ним не виделись. Слово за слово — «О, дак ты ж связист, йопт! Поедем на дачу ко мне, интернет мне с 3Г-модема сделаешь». Обещание напоить шашлыком и накормить пивом сулило перспективы. На свою дурную голову согласился на выходных помочь.
День Ч, час Х. Выдвигаемся на дачу. Расположение дачи мне сразу как-то не понравилось. С одной стороны лес и за ним трасса на отметке +17 м от уровня горизонта, с другой стороны лес. Просто лес. Ни фига там нету.
Мне выдаётся компьютер, модем — и всё, в бой!
Для начала выясняется что сети нет. Хорошо… Сканирование сетей через телефон выдаёт всего две доступные. Знакомый посылается за модемом с яйцами. Ребёнок хочет мультики — не жалеем ни сил, ни времени.
Втыкаю новый модем. Хорошо, сеть есть, но не 3Г, а обычный GPRS. Брожения по участку и в пределах дома признаков 3Г не выдают. Чешем репу, накатываем. Знакомый снова отсылается в город с женой за рулём. Привозит самый дешёвый планшет…
Погуляв вокруг дома, на втором этаже ловим-таки 3Г. Путём нехитрых манипуляций крепим планшет на антенну от старого телевизора, и интернет становится даже не 3Г, а 3G. Покурив, выстраиваем конструкцию хенд-мейд: стол, на нём коробка из-под доширака, сверху стальная решётка от гриля, на ней стоит круглая антенна от телевизора, в которую воткнут планшет, к которому подключено зарядное, и всё это пашет на ура и раздаёт вайфай с приличной такой скоростью.