bash.im ithappens.me zadolba.li
13029

Смерть неизбежна

27 января 2015, 15:24

Собираю LUA.

lua\lapi.c(1090): warning C4702: unreachable code

Смотрю на 1090-ю строчку:

return 0;  /* to avoid warnings */
13028

Ассемблер в косметичке

Поздний вечер, спать пора. Плюхаюсь под теплый бок подруги. В голове при этом «дорабатываю напильником» софтварную реализацию I2C под AVR. Бормочу себе под нос:

— Так… Спрятать… Сдвинуть… Наложить маску…

— Чего?!

Подруга к моим шуткам привычная, но иногда мне удаётся её удивить. Посмеялись, объяснил. Через пять минут спрашивает:

— Как там было? Спрятать, сдвинуть, наложить крем?

13027

Янус с бубном

27 января 2015, 08:12

История эта о буднях разработчика ОС в России. Работал я в компании, хоть и коммерческой, но по принципам госконторы устроенной. Занимался ОС для специфического оборудования. Установка ОС на него была нетривиальна, инструкция длинна, и техподдержка в ней разобраться ленилась. А уж если внештатная ситуация какая — немедленно звали на помощь разработчика.

И вот сразу три похожие ситуации с одинаковым началом.

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

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

Ситуация два. Инструкцию проверили, всё так. Но не выходит каменный цветок. И тут я догадался спросить, а какая у них модель компьютера (дело в том, что выпускалось порядка восьми разновидностей, а официально мы поддерживаем только три из них). Так и есть — модель не из числа поддерживаемых.

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

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

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

13026

ЛЮБЕНАС для вас и нас

27 января 2015, 08:00

Мания изобретательства — полезная штука! Расскажу свой случай.

Давным-давно спутниковая навигация была не для всех. Требовалось разрешение, а аппаратура была дорогой. И я придумал, как обойтись без того и другого. Группа энтузиастов договаривается с владельцами остановок и рекламных щитов, чтобы пустили развесить модули, питающиеся ночью от освещения, а днём — от солнечных батарей, передающие ближайшим мобильникам по Bluetooth свои координаты — хотя бы в виде имени устройства. Даже название придумал: ЛЮБЕНАС — любительская бесспутниковая навигационная система.

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

Шли годы. Разрешение на спутниковую навигацию стало не нужно, техника подешевела. И вот у меня на ладони — смартфон с Symbian, умеющий определять свои координаты. Да ещё и Скайп работает!

Скайп для Symbian потом прикрыли. Но это меня не сильно огорчило: остальное же работает. Добило то, что я разбил простую «звонилку», которую носил для второй сим-карты. Дисплеев к ней в продаже не нашлось, и я созрел для покупки чего-нибудь с Андроидом.

Смарт был выбран самый дешёвый, какой удалось найти. И двухсимочный, чтобы не носить два аппарата. Ещё и Скайп заработал. Не сразу я сообразил, в чём подстава, почему он так дёшев. А потом из спецификации узнал: нет в нём ни ГЛОНАСС, ни GPS. Чего? Android 4.2 без GPS? Ага!

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

Вот так я стал пользователем своего ЛЮБЕНАСа. Пусть не называющегося так, пусть изобретённого независимо от меня. Отрадно, что утверждения о ненужности такой системы оказались несостоятельны.

13025

Кампелятар, выпей йаду

26 января 2015, 13:48

Машинных языков много, но что между ними общего? Они не терпят синтаксических ошибок. Наберите нечаянно или нарочно какой-нибудь prind, fond-colar или stardigz — интерпретатор или компилятор растеряется.

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

Так кто придумал язык падонков? Оставим теории заговора в покое — они красивы, но неубедительны. Всё проще. Либо его «аффтары» далеки от IT, либо настолько близки, что нетерпимость бездушных железок к синтаксическим ошибкам их реально достала.

Но зачем отыгрываться на людях?

13024

А как же волшебное слово?

Развалился у меня RAID-массив на линуксовом сервачке. Ну, бывает. Заменил вышедший из строя диск. Начинаю восстанавливать RAID. Сначала нужно скопировать структуру разделов с рабочего диска на новый. Подаю команду:

sfdisk -d /dev/sdb | sfdisk /dev/sda

Дочитав до конца результат работы команды, сползаю под стол от смеха.

Проверяется, чтобы сейчас никто не использовал этот диск…

ОК

[Бла-бла-бла]

sfdisk: Не нравятся мне эти разделы — ничего не изменено.

(Если вы действительно хотите этого, используйте опцию --force.)

Не нравится ему, видишь ли… Настроение поднялось на всё утро.

Спасибо разработчикам утилиты sfdisk!

13023

Все проги в гости к нам

26 января 2015, 08:12

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

В общем, то, что работы будет много, я понял уже на загрузке «форточек». Ужасные едкие цвета с гордой надписью «Вин8+64 бу Вася Пупкин» (кроме шуток, всё кириллицей, только имя автора изменено). Хозяин честно признался, что как-то относил компьютер в местный СЦ (читай: к мастерам-ломастерам из подвала) в связи с сильным шумом.

Итак, полупрозрачные с горем пополам загрузились. Картина оказалась не так уж и печальна: четыре браузера, два антивируса и три качалки из разряда скачиваемых по ссылке «скачать бесплатно без регистрации и смс» вместо самого требуемого файла. Ладно, потом, сейчас я хочу увидеть смысл фразы «Не сохраняются „Одноклассники“». Даю другу мышь в руки и прошу показать. Открывает Оперу, тут же загружается страница, забитая рекламой от <head> до </body>, и всплывает окошко с предложением скачать что-то с расширением EXE. Комментарий друга: «Эт фигня, она всегда появляется» сразу натолкнул на мысль, в чём весь подвох. Ну, дальше понятно: друг открывает «Одноклассников» в новой вкладке и со словами «вот щас закрою Оперу, они пропадут, а раньше не пропадали» закрывает Оперу. Ну, суть проблемы вроде понятна.

Открываю диспетчер задач и ищу подозрительное. Точнее, сразу выключаю то, что выглядит подозрительно. Дальше лезу в настройки Оперы и меняю стартовую страницу на гугловскую. Сохраняю, закрываю, запускаю опять — и… опять открывается страница с рекламой. Попытка номер два — тот же результат. На пятой попытке замечаю, что Опера запускается сразу со старыми открытыми вкладками. Точно! Ярлык! Смотрю свойства, а там в конце после opera.exe приписан ключ с адресом сайта. Причём точно то же в остальных трёх браузерах, два из которых меня ещё и поприветствовали, будто я их только что поставил.

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

Морали не будет: через неделю друг диск-криптор поймал, пришлось полностью весь диск форматировать.

13022

Бандерлоги с отвёртками

26 января 2015, 08:00

Товарищ, как же ты прав!

Ровно год назад купил я ноут (точнее, помесь ноутбука и ультрабука) за …надцать тысяч киевских денег. Осенью он начал безбожно глючить вне зависимости от системы и жаловаться на ядро. Делать было нечего — отправился я в фирменный сервисный центр этого бренда. «Скорее всего, материнская плата. Гарантийный случай. Вам придёт уведомление, когда мы сделаем, ждите».

Спустя неделю ноутбук вернули. В квитанции русским по бумажному значилось: «Замена ОЗУ и мат. платы», «гарантийный ремонт». Бесплатно, включается — вроде всё хорошо… Стоп, а откуда тогда между матрицей дисплея и рамкой зазор в несколько миллиметров? И почему правая петля безбожно люфтит? Естественно, ехать обратно с претензиями было поздно. Что же, ждём конца гарантийного срока…

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

  • недокрученные корпусные болты (рекорд — один оборот до изъятия вместо положенных семи-девяти);

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

  • и в качестве достойного завершения — выломанное с мясом крепление «корыта» к основе. Как раз под правой петлёй, да.

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

А подобным сервисным бандерлогам я искренне желаю таких же хирургов, стоматологов и автомехаников.

13021

Пунто-болтун

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

В OS X генерального две юзерские учётки и одна админская. Все под вышеупомянутыми паролями. Условно назовём usr1, usr2 и admin. Кроме всего прочего, установлен Punto Switcher. Так вот, если перейти из профиля usr2 в профиль usr1 (сменить пользователя) и начать набирать текст, то у usr2 набирается дубликат текста.

Зам (usr2) оставил открытое окно скайпа перед уходом с работы. Утром приходит генеральный (usr1), и первое, что он вводит — это логин-пароль от корпоративной почты, а потом номер и CVV кредитной карты для оплаты мобильника. Как удивился совершенно левый человек идущим ему в руки самым секретным данным из суперзащищённой сети суперсерьёзной конторы!

Ответ поддержки Яндекса поразил своей краткостью и простотой:

Программа не предназначена для использования в многопользовательском режиме. Такая версия пока не предполагается.

Шах и мат! Безопасников на улицу по статье «несоответствие занимаемой должности», начальнику IT-отдела — штраф и понижение до эникейщика с уменьшением зарплаты втрое, профилактическое срезание премий всему IT-отделу на три месяца. Спасибо, Rндекс!