11582

Индия течёт в наших венах

Нужно было немного обновить свою мультизагрузочную флешку. Заодно решил отказаться от GRUB ещё первой версии и перейти на вторую. На форуме мне посоветовали программу multisystem, сделанную как раз под Ubuntu. Ладно, раз советуют — надо проверить.

Захожу на сайт. Английской версии нет; сайт, судя по языку и физическому расположению сервера (домен в зоне .info), французский. Ладно, найти слово «installation» не проблема даже во французском языке. Прочитал, подключил репозиторий, установил для начала на нетбуке. Программа запускается, но мою флешку в упор не видит. Я ещё работаю, на компе нужна винда, перегрузиться не могу — хотя работы немного, но надо быть на связи.

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

Дожидаюсь конца работы, пробую. А фиг-то: система флешку видит, но программа её не признает. Флешка обычная, Transcend, точно рабочая, да и операционка её определила. Ладно, VirtualBox здесь… Из приличных слов остаются только предлоги.

Результат: пока я пишу это, наблюдаю, как копируются файлы на флешку, а в голове рождается краткая характеристика автора программы:

По родителям француз,

А по факту я — индус,

И уже который год

Я пишу индусский код.

11581

Вчерашний тортик занял всю /24

Наше предприятие производит множество разных изделий, в том числе с удалённым управлением, с жёстко зашитыми адресами. Изделий много, соответственно, адреса разные. Для маркировки закуплено много наклеек с адресами. Естественно, излишек расходится по рукам, иногда шаловливым.

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

— Срочно освободите адрес такой-то, на подходе большой пакет данных!

— Переполнение стека в адресе таком-то.

Вот такой у нас сортирно-айтишный юмор.

11580

Спокуха, братуха-кун

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

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

— У вас не найдётся спички или небольшого кусочка бумаги?

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

Русские запомнились местным надолго. Трудолюбивые японцы даже просили нас работать немного поменьше, так как они уставали, но это уже совсем другая история…

11579

Заметьте, никаких веществ

Как-то на работе искал какую-то информацию в интернете. В своих странствиях по паутине вышел на простенький на вид сайт: серый фон, чёрный Arial, просто пачка статей на какую-то тему. Но глаза не могут сосредоточиться на тексте. Присматриваюсь и вижу, что фон куда-то ползёт. Проморгался. Теперь плывут какие-то пятна. Хотя нет. Вы видели анимацию амёбы? Стоп. Нет. Скорее лёгкий шум какой-то. Опять нет… Теперь опять плывёт. Да что за хрень!

Отвожу глаза к окну (обычному, в стене которое) на пару минут. Смотрю на монитор — опять чертовщина. Открываю другой сайт — нормально. Опять этот. Плывёт! Открываю код. Ничего необычного, ни скриптов, ни графики. Стоп! Фоновая картинка, на стол её! Открываю в Пейнте (другого ничего нет) — плывёт! Обычный JPEG. А на фига серый квадрат сажать в картинку?.. Увеличиваю. Вот он, корень зла!

Дезигнер (по-другому не скажешь) сварганил для сайта фон из вертикальных чередующихся чёрных и белых полос толщиной в один пиксель, вместе сливающихся в почти ровный серый цвет. А у нас стоят старенькие ЖК, подключённые VGA-кабелем. Ну, вы поняли? Двойное преобразование плюс какие-то наводки на цвет или синхро — и такая картинка становится идеальным средством для расшатывания душевного здоровья пользователя.

11578

Собака под самим забором

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

ОднаждыВСтудёнуюЗимнююПоруСобакаПримёрзлаУшамиКЗабору

Cпаниеля у него нет, это просто шутка.

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

Мучился он неделю, пока мне не сказал. Собака оказалась зарыта на сайте нашего украинского звездатого (логотип у него такой) оператора. Я привык писать букву «ё» без замены на «е», соответственно, её же и набрал в пароле. Где она на клавиатуре и какой символ ей соответствет в английской раскладке? Правильно — «`». Так вот, при отправке SMS с сайта этот символ заменялся на пробел, соответственно, пароль и не подходил.

Менять пароль не стали — много клиентов его давно знают.

11577

Проверка без пристрастий

Что ещё надо на олимпиадах, говорите?

Позвольте представиться: председатель технического комитета одной из таких олимпиад. Привыкайте: аналогичные олимпиады (и личные, и командные), начиная с областного уровня (а с этого учебного года — даже многие районные и школьные) проходят именно на автоматизированных проверяющих системах. Да, нам не нужно вычурных приглашений в стиле «Ввидите 2 чесла», зачастую написанных транслитом или с орфографическими ошибками, не нужно ожиданий после вывода. Вам дано техническое задание, причём не клиентом, который сам не знает, чего хочет, помимо раздражения центра удовольствия в мозгу, а программистами, как правило, гораздо более опытными, чем вы. Проверять все работы вручную нереально, поэтому тестирование проходит в автоматическом режиме. Более того, при коммерческой разработке тратить время высококвалифицированного тимлида на проверку кода стажёра, не проверив его на автотестах, — расточительство, так как рабочее время тимлида, потраченное на чтение кода, гораздо дороже, чем машинное время компиляционной фермы и серверов тестирования. Вот когда автотесты пройдут, тогда и человек может прочитать, а потом послать тестерам-мануальщикам. А пока привыкайте на олимпиадах: инструкции и подробные примеры, как надо писать код, всегда есть просто потому, что на их написание нужно меньше времени, чем на ответы участникам: «Почему моя самая правильная программа не принята?!111». А привычку читать инструкцию, только когда всё сломалось, бросайте.

11576

Экран горит — чего же боле?

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

Тыкнул пальцем — тачскрин работает, check.

Перевернул — интерфейс крутится, check.

Карту воткнул — читается, check.

И так далее. Все галочки стоят? Рекавери — и на упаковку, назад к отправителю.

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

11575

Оккам.avi

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

Что сделает в этом случае нормальный человек? Естественно, скачает другой плеер и откроет файл им. Что сделает человек, имеющий хоть какое-то отношение к IT? Естественно, будет искать причину и пытаться использовать имеющийся. Действительно, зачем устанавливать что-то новое, если все популярные форматы исправно открывались и раньше? В игру вступает ffmpeg: что не открывалось, будет перекодировано и открыто!

Этап первый: сохраняем в AVI без изменения аудио- и видеопотоков. Изображения нет.

Этап второй: упорно играем с настройками. Изображения нет.

Этап третий: добиваемся изменения формата аудио, формата видео и контейнера. Изображения снова нет.

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

Оказалось, изображения я действительно не заметил. В настройках плеера запомнилась большая ширина области плейлиста, вследствие чего при открытии нового окна 100% ширины занял именно он, не оставив изображению никаких шансов.

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

11574

Потери меньше 100% потерями не считать

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

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

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

Наш товарищ потерял дар речи.

Финал простой: специалиста ВЦ убедили нормально проверить и сконфигурировать циски на объекте без разрезаний кабеля, но вера в профессионализм специалистов отдела администрирования сетей ВЦ ощутимо пошатнулась.

11573

О национальном кое-какерстве

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

Но речь сейчас не о патриотизме в стиле «пора валить!», а о том, что причиной всего этого являются не какие-то злобные враги, тупые политики и плохой климат, а то, что называется пофигизмом. Под кустом куча мусора — значит, это свалка. И я тоже брошу, ведь все бросают! Тем более, под кустом же не видно!

Казалось бы, при чём тут IT? Да при том, что HTML-страницы с незакрытыми тегами, грубые нарушения спецификаций протоколов и форматов — это ровно то же самое, точно такой же свинарник и такие же шурупы, забитые молотком.

И оправдания такие же, характерные: ну и что, что теги не закрыты, Эксплорер же понимает! Ну и что, что формат нарушен, Ридер же читает! Ну да, а свалку на берегу озера видно только с двух метров, она же в ямке. Зато в других браузерах страница расползается, PDF-файлы не обрабатываются, документы не читаются, а почтовая программа работает нормально только с определённым сервером, а с остальными глючит. Это всё потому, что кто-то, писавший программу или страницу, забил на спецификации и сделал кое-как, тяп-ляп, и так сойдёт.

И не надо приводить в пример тут некую известную компанию: там вопрос в другом, там решается задача привязки пользователя именно к своим продуктам, и решается успешно, хоть и такими позорными методами. За это её и не любят.

Нет, я понимаю, конечно, что у нас в стране это уже традиция. У нас даже пистолетные патроны одной и той же марки, но разных заводов, по-разному работают: от некоторых пистолеты клинит, а другие более-менее стреляют. Но, может быть, начать становится цивилизованной страной хотя бы с IT? Убить в себе тягу к кое-какерству, индусскому коду, раздолбайству и пофигизму? Или так приятно жить в свинарнике?