13312

Планшет с мнимой мобильностью

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

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

13311

Шарики на роликах

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

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

Сегодня работаем, никого не трогаем. Врывается помощник админа (из тех, кто только со студенческой скамьи, практический опыт — соответствующий) и говорит: «У многих в компьютере установлен Tor, и мне велено его удалить с компов!» Подходит и ко мне…

Небольшое отступление: у меня к ноуту прицеплен дополнительный моник, мышка — Microsoft Trackball, а ещё стоит программулина MouseWrap. Суть её в том, что когда курсор доходит до края экрана, он не останавливается там, а исчезает и появляется с противоположного края экрана.

Так вот, подходит помощник админа ко мне и строго спрашивает: «Какой из этих двух компьютеров рабочий?» Я с видом испуганного кролика говорю, показывая на экран ноута: «Вот этот». Всё с таким же строгим видом паренёк хватается за мышку и начинает елозить по коврику. Курсор, естественно, стоит на месте. Сложив лапки на животе, показываю ему на шарик в мышке. Он с трудом (для тех, кто в первый раз юзает трекбол — это реально трудно) добирается до кнопки «Пуск»… Вот незадача: курсор-то появился сверху экрана почему-то. Ах ты гад! Ещё раз с верха экрана ползёт вниз, только добрался до «Пуска» — опять! Тут не выдерживаю и показываю горемыке волшебное сочетание кнопок Ctrl+Esc. Он добирается до панели задач, открывает «Установленные программы», видит, что Tor нету, и уходит удовлетворённым.

Подсказать ему, что многие проги бывают и в портативной версии и лежат вовсе не в Program Files? Ай, ладно, не буду. Меня потом коллеги убьют.

13310

Кто звал кота?

Перечитывала старые истории, наткнулась на «Вредоносоноса» и вспомнила о своём.

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

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

До сих пор вспоминаю свой отчаянный SOS по телефону: «В., срочно убирай Мурзика из программы!»

13309

Гуляй, софтина!

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

При обновлении игры, где можно ездить, летать и стрелять в технику Второй мировой, один файл взволновал мой антивирус. Я отправил тикет в поддержку — а вдруг чего? Полученный ответ рассмешил и огорчил одновременно:

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

С уважением, cлужба поддержки.

А ведь кто-то их послушает…

13308

Падал прошлогодний диск

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

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

— Тут Эксель падает…

— Диски проверил?

— При чём тут диски?

— Проверь диски.

— Компьютер медленно загружается…

— Диски проверил?

— Отчётность не работает…

— Диски проверил?

— А какие у нас пароли в домене у %clientName%?

— Диски проверь. %password%.

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

Эникейщик и сисадмин (должности повыше обычно уже изучили этот урок), помни: диск — это коробка, в которой хреновина крутится на скорости несколько тысяч оборотов в секунду. Это очень тонкая и хрупкая механика, и она всегда под подозрением. У диска истёк срок гарантии? Новый уже должен лежать на столе, а бэкапы должны проводиться минимум ежедневно. На диске появились бэды или (не приведи боги!) S.M.A.R.T. failed — диск вообще более не должен быть использован. Оперативка на моём опыте выходила из строя всего шесть раз, из них пять — при работе в хостинге, проц — один раз, проблемы с материнкой, видяхой или звуковухой практически не бывают аномальными почти никогда, сетевухи и модемы — да, соглашусь, но проблемы с ними мне встречались менее десяти раз, а вот мёртвых дисков я видел сотни, и, в отличие от других компонентов, именно на дисках лежит самое ценное — клиентская информация.

13307

Мышка лежала, хвостиком глюкнула

Работаю в Очень Крупной Западной Компании, точнее, в ее русском филиале, в техподдержке.

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

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

Подключаюсь к нему удалённо, начинаю смотреть, что у него да как. Провозился три часа с пользователем на телефоне, пока до меня не дошло.

Да, всё железо поменяли. Кроме мышки.

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

Искренне посоветовал пользователю кинуть мышкой в стену или подарить врагу.

13306

Эта штучка в женских ручках

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

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

— Ты слишком идеальна, так не бывает.

— А в чём подвох?

— Если через пять лет я будет свободен — женюсь.

В итоге я одна, а мужчины гуляют с клубными барышнями.

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

Так вот, дорогие мужчины, если вам нравится, когда к вам относятся по-свински, тогда не нойте о том, что «идеальных женщин не осталось». Определитесь уже, что вам надо.

13305

Руки на высоте плеч

Найдено в коде одного проекта. В stdafx.h:

#ifndef handsOutOfShoulders 
  #define handsOutOfAss 
#endif

Далее, в about:

#ifdef handsOutOfShoulders 
  /* нормальные реквизиты фирмы */
#else
  #ifdef handsOutOfAss 
    message = std::wstring(L"У нас появился долборукий
    дятел, разваливший сборку, и я не отвечаю
    за работоспособность программы");
  #else
    message = std::wstring(L"БЛ&$Ь!!! ПОКАЖИТЕ МНЕ,
    КАК ОНО РАБОТАЕТ!!!");
  #endif
#endif
13304

Ноль десятых, пять целых

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

Итак, иду по Старому Арбату, захотелось съесть и выпить вредного. До банкомёта далеко, денег на карточке вроде должно хватить на небольшой перекус, а заведение умеет их принимать. Из наличности — 25 рублей в кармане. Захожу, заказываю еды и прошу «Мне ноль-пять кока-колы лайт». Расплачиваюсь карточкой. «Угу, — говорят, — подождите, сейчас всё принесём».

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

13303

Дебаунсинг, Карл!

Я смотрю, последнее время популярны истории, в которых авторы ставят знак равенства между множествами «почти всегда это так» и «изредка это так», например, вольно сравнивая undo для IT и не IT. Что же, проблема эта известная и широко распространённая. Расскажу и я свою историю.

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

Карл, даже обычная кнопка оказалась проблемной. Вместо одного события нажатия прилетает десяток по прерываниям! Дебаунсинг, Карл! Хуже того — в простой кнопке нет состояния 0/1, там есть или что-то (например, 1, если цепь замыкается на +3,3 В) и floating, который определяется то как 0, то как 1. Это решается лишь чисто механически.

Разобрался с кнопкой? Призовая игра — rotary encoder (например, колёсико мышки), который шлёт несколько событий, позволяющих определить, в какую сторону он вращается. Из-за того же баунсинга зачастую приходят противоречивые сигналы. Типа, сперва +1 и тут же −1 (тут я понял, почему у меня так же глючит скролл на одной дешёвой мышке). Попытки дебаунсить приводят к тому, что «шаги» проглатываются или неверно определяется направление.

Универсального решения нет.

Ультразвуковой сенсор позволяет измерить расстояние до объекта с точностью до миллиметра… в теории. На практике из пяти измерений одно вернёт 0, одно — какое-то запредельное значение, ещё три выдадут результат с разбросом в пару сантиметров. Более-менее стабильной работы удалось добиться, проводя семь измерений и забирая медианное значение. А ведь ещё бывает эхо…

Когда я добрался до простых дисплеев (TFT, OLED) — это оказался просто праздник! Ни один не заработал сразу. Везде приходилось долго искать конкретную модель, драйверы-библиотеки под неё, а некоторые даже исправлять и дописывать.

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

В общем, хобби оказалось удачным. Рекомендую.