Получаем изображение с оптического сенсора комьютерной мыши с помощью Arduino

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

Блуждая по Хабру, я всё чаще слышу один и тот же рефрен: «Хабр уже не тот». Статьи не набирают, интерес аудитории угас, а в кулуарах DevRel'ы жалуются, что «продвигаться стало невозможно». Но так ли это на самом деле? Или это классическая «раньше трава была зеленее»?
Безвыходных ситуаций не бывает
ilzarka.habrahabr.ru/blog/56869
Напомню еще раз: вирус выводит на экран окошко с предложением отправить смс на какой-то номер, чтобы разблокировать Windows. Ctrl + Alt + Del, Alt + Tab и прочие сочетания, которые должны свернуть/закрыть/переключить на другую программу естественно блокируются. Перезагрузка даже в безопасном режиме заканчивается этим же окошком.
Я сам сталкивался с этим вирусом (каюсь, сидел без антивируса). Первая мысль была загрузиться с Live-CD. Но его у меня не было (каюсь снова, лайв-сиди всегда нужно иметь под рукой). Помедитировав пять минут возле компьютера, я уж подумал что ситуация безвыходная. Но…
Программисты всё вымирают и вымирают

Да вымереть не могут.
Откуда это всё пошло? Чем так условные «программисты» не угодили? И почему именно программисты?
Увеличь это! Современное увеличение разрешения

Я уже перестал вздрагивать и удивляться, когда звонит телефон и в трубке раздается жесткий уверенный голос: «Вас беспокоит капитан такой-то (майор такой-то), вы можете ответить на пару вопросов?» Почему бы не поговорить с родной полицией…
Вопросы всегда одни и те же. «У нас есть видео с подозреваемым, пожалуйста, помогите восстановить лицо»… «Помогите увеличить номер с видеорегистратора»… «Здесь не видно рук человека, пожалуйста, помогите увеличить»… И так далее в том же духе.
Чтобы было понятно о чем речь — вот реальный пример присланного сильно сжатого видео, где просят восстановить размытое лицо (размер которого эквивалентен примерно 8 пикселям):

И ладно бы только русские дяди Степы беспокоили, пишут и западные Пинкертоны.
К вопросу о математических способностях студентов или как учить переполненный мозг

Я люблю давать простые задачки студентам на лекции. Во-первых, понятно, скольких мы потеряли, во-вторых, это переключение из режима потребления информации в режим выдачи результатов, в третьих — возможность проявить себя для шустрых. Сплошные плюсы!
Одна из простых задач звучит так: «При переводе картинки из цветового пространства RGB в YUV мы выполняем прореживание, то есть выкидываем каждый четный столбец и каждую четную строку в компонентах U и V (все компоненты пикселя по 1 байту). Вопрос: во сколько раз меньше данных у нас стало?» Эта операция называется chroma subsampling и широко используется при сжатии видео, например.
Забавно, что когда-то давно, когда винчестеры были меньше, а дискеты больше, студенты реально отвечали на этот вопрос быстро. А в последние годы регулярно народ в ступор впадает. Приходится разбирать по частям: «Если выкинуть каждую четную строку и каждый четный столбец, во сколько раз меньше данных будет у компоненты?» Почти хором: «В четыре». Начинаю подкалывать: «Отлично! У нас было 3 яблока, первое осталось как есть, а от второго и третьего осталось по четвертинке. Во сколько раз меньше яблок у нас стало?» Народ ржет, но, наконец-то, дает правильный ответ (заметим, не все).
Это было бы смешно, если бы от способности быстро в уме прикинуть результат не зависела способность быстрее создавать сложные алгоритмы.
И хорошо видно, как эта способность в широких массах студентов заметно плавно падает. Причем не только в нашей стране. Придуман даже специальный термин: «цифровое слабоумие» ("digital dementia") — снижение когнитивных способностей, достаточно серьезное, чтобы повлиять на повседневную деятельность человека.
Кому интересно как теряют мозг студенты масштабы бедствия и что с этим делать — добро пожаловать под кат!
Что не так с ДЭГ Москвы на этот раз?

Я уже рассказывал в прошлом году, что тогда нам так и не удалось независимо установить итоги голосования. Тогда это произошло из-за наличия в системе “переголосований”, для учёта которых использовался никому не подконтрольный второй блокчейн.
Что ж, похоже и на этот раз удача нас подвела. Несмотря на то, что переголосования на этот раз убрали, в этот раз нас настигла новая подстава: случайно сгенерированные ID кандидатов, уникальные для каждого из избирателей.
Питон против Безумного Макса, или как я посты на Хабре замораживал

Я помню тот старый Хабр. Логотип был похож на комок шерсти после отрыжки кота, я писал какие-то наивные статьи и мне казалось, что я очень крут (нет), а народ пилил годные технические полотна текста, и чтобы узнать инфу про чёрные точки на лице, нужно было посещать другие сайты. Это было прикольно.
Потом что-то пошло не так, начали появляться какие-то полутехнические статьи, и (далее моя интерпретация событий) чтобы сохранить Хабр, всех нетехнических писателей заманили в один корабль и отправили куда подальше на гиктаймс - подобно тому, как врач ампутирует руку пациенту, чтобы спасти жизнь. В данном случае, правда, врач подержал эту руку, посмотрел на неё, а потом пришил обратно. Что из этого вышло?
Почему в России почти нет гражданского/коммерческого высокотехнологичного производства?
Статью с обзором ситуации с микроэлектроникой в России я закончил утверждением, что сейчас в России есть технические возможности для создания любых военных микросхем (если не считаться с ценой). Однако и в комментариях к той статье, и во многих других — всех больше волновал вопрос отсутствия (на уровне погрешности измерений) производства чисто-коммерческих (гражданских) высокотехнологичных продуктов. Этот вопрос волновал и меня, потому я постоянно мучил вопросами всех, кто так или иначе связан с высокими технологиями и бизнесом в России. Ответ на него важен, если вы сами хотите создать конкурентный высокотехнологичный продукт — чтобы не потратить лучшие годы жизни в изначально неравных условиях.
Под катом попробуем разобраться чем отличаются «высокотехнологичные» компании от «низкотехнологичных», что нужно, чтобы высокотехнологичные компании могли рождаться и выживать, почему с софтом у нас лучше, чем с хардом, с чего начиналась кремниевая долина в США и можно ли её «скопировать», почему Китай всех рвет, а также — окинем взором все, что происходит в Сколково, Роснано, фонде перспективных исследований и приведут ли они к расцвету российских инноваций. Безусловно, я где-то могу ошибаться — буду рад дополнениям в комментариях.
Сразу нужно отметить, что в связи с многогранностью проблемы объем статьи получился довольно большой, так что можно начать читать с резюме в конце, и затем прочитать лишь те разделы, которые вызовут интерес. Сразу хочу предупредить — повествование «нелинейное», соседние заголовки могут описывать разные аспекты проблемы и быть друг с другом практически не связанными.
Сайт Сколково
Собственно, сам сайт великого Фонда развития Инновационного центра «Сколково». Мотнем скроллом вверх-вниз и запомним общий концепт.
Поищем, сколько же стоит разработка этого сайта. Конечно, на хабре огромное число разработчиков, порядок цен все знают, но мы же пишем волшебный проект, поэтому и цены у него должны быть волшебные:
На PR-сопровождение деятельности фонда планируется потратить 38,7 млн руб. На медиаразмещение и рекламу — 92,8 млн руб., на брендинг — 12,9 млн руб., на веб-сайт и блоги — 3,1 млн руб.
Дизайнеры, сколько бы ориентировочно взяли за разработку дизайна сайта Сколково? 500$? 1к$? 10k$?
А программисты?
Дорого берете, скажу я Вам, за натягивания шаблона на Joomla.
Эх, вот Вам хотя бы хорошая песенка про Сколково, чтобы лишний раз не расстраивались.
UPD: внимательный хабрапользователь DarkPreacher верно подметил, что все-таки не Joomla, a UMI:
QIP — Минутка ненависти (хистори на сервере)
Далее. Вчера, или даже сегодня ночью был дефейснут сайт QIP.ru, форум, блог главного разработчика. Об этом на хабре до сих пор активно говорят. Именно благодаря этому обсуждению я узнал, что ОКАЗЫВАЕТСЯ qip хранит историю Jabber переписки на сервере. При этом я как пользователь программы об этом даже не подозреваю, не вижу никаких подобных настроек в разделе «настройки/история» и естественно меня никто не спрашивал, хочу ли я сохранять свою личную переписку на сервере.
Далее. Удалить хистори с сервера можно только одним способом — удалять выделяя по 20 сообщений, в каждом отдельном контакте. Тоесть если Вы любите поговорить — удалять теперь будете очень долго и геморно.
А ещё в QIP есть такая опция — авторизовывать вас на сайте автоматически. Это значит, что вы постоянно авторизованы на сайте qip.ru и войти в хистори и почитать может кто угодно, севший за ваш комп, даже если QIP выключен и под паролем.
Похоже хранение истории на сайте в программе вообще не упоминается, только на самом сайте можно её отключить. По крайней мере об этом гласит строка в заголовке меню. Но вот незадача – после отключения сохранения истории она всё равно сохраняется…
Мой «Евротур» по сектам: путешествие в один конец?

В моей жизни был период, когда я достаточно глубоко изучал тему манипуляций: читал книги, слушал лекции, участвовал в психологической экспертизе экстремистских материалов. Но это всё казалось слишком теоритезированным и оторванным от реальной жизни. Поэтому, будучи уверенным в своей «психологической неуязвимости», я решил на практике проверить свою «живучесть» и понять – а как же людей вовлекают в секты и прочие маргинальные организации и можно ли этому противостоять?
И течение трех лет я целенаправленно ходил во все места, где меня могли обмануть или сломать, ввести в заблуждение, разрушить мою личность и вовлечь в незаконную деятельность. Я внимательно слушал, записывал и даже иногда срывал занятия. Это мой «Евротур» и моя исповедь диверсанта. А в конце вас ждет бонусная история от февраля 2022 года, которая связана с манипуляцией и давлением, но уже не со стороны сект ;)
Ближайшие события
Честное резюме программиста

Раздел 1. Soft Skills
- Я молчу на совещаниях. Стараюсь делать внимательное и умное лицо, даже если мне все равно.
FizzBuzz по-сениорски

- Добрый день, я на интервью на позицию старшего разработчика.
- Здравствуйте, давайте начнем с небольшого теста, пока я ваше CV смотрю. Напишите программу, которая выводила бы числа от 1 до, скажем, миллиарда, притом если число кратно трем, то вместо числа выводится Fizz, если кратно пяти, то Buzz, а если и трем, и пяти, то FizzBuzz.
Серьезно, FizzBuzz? Задачка для начальной школы, на сениорскую позицию? Ну ладно.
Исследование защищенности карты Тройка

Карта Тройка представляет из себя универсальный пополняемый электронный кошелек, широко используемый в системах оплаты общественного транспорта Москвы с 2013 года.
Цель данного исследования — выяснить защищенность системы электронного кошелька от подделки баланса, оценить безопасность инфраструктуры, работающей с картой. Вся работа была выполнена без использования специальных технических средств. Использовался дешевый смартфон на платформе Android и персональный компьютер. Общее время, затраченное на исследование, составило 15 дней.
В ходе работы был успешно проведен реверс-инжиниринг мобильного приложения «Мой проездной», что позволило получить доступ к памяти карты и изучить структуру хранения данных. Были найдены уязвимости, позволяющие выполнить подделку баланса, записанного на электронном кошельке карты Тройка. В результате чего стало возможным использование систем, поддерживающих карту, без оплаты.
Итогом исследования стала разработка приложения TroikaDumper, позволяющего эксплуатировать уязвимости системы электронного кошелька.
Внимание! Данные материалы представлены исключительно в ознакомительных целях. Подделка проездных билетов является уголовным преступлением и преследуется по закону.
Обновление версий Android: печальная статистика
Мишель ДеГуста, владелец блога, Theunderstatement.com ведет забавную статистику: он скрупулезно записывает дату выхода очередного андроид-смартфона (речь идет о крупных релизах на территории США и не включает в себя большинство китайцев), его цену и т.н. «период актуальности». И знаете, получается очень интересно:
— 7 из 18 смартфонов никогда не имели актуальной (т.е. последней) версии Android;
— 12 из 18 имели актуальную версию Android всего несколько недель или меньше;
— 10 из 18 отставали на две версии системы к тому моменту, когда подходил срок окончания их двухгодичного контракта с сотовым оператором;
— 11 из 18 телефонов перестали получать обновления менее чем через год после выхода;
— 13 из 18 перестали получать поддержку еще в том момент, когда они еще продавались, или сразу же после;
— 15 из 18 не получили обновления до версии 2.3 (Gingerbread), хотя она была выпущена в декабре 2010-го;
— в течение нескольких недель после выхода Android 4.0 (Ice Cream Sandwic), все рассмотренные на графике аппараты получат по минус одной версии ОС;
— по крайней мере 16 из 18 рассмотренных аппаратов никогда не получат Ice Cream Sandwich официально.
Ну как тут не вспомнить «дайте 2.1 на Hero!».
Сама инфографика под катом
Как я разработал квадрокоптер на ESP32 с нуля (ушло 4 года)

При сборке квадрокоптеров и других БПЛА обычно используют готовую плату полетного контроллера, содержащую все необходимые датчики и периферию, и готовую полетную прошивку, например, Betaflight, ArduPilot или PX4. Полетный контроллер управляет моторами квадрокоптера и обеспечивает стабильный полет.
Занимаясь БПЛА с 2016 года, я решил разобраться в устройстве полетных контроллеров максимально глубоко и создать квадрокоптер с нуля, не используя готовый полетный контроллер и готовый софт. Спустя долгое время разработки мне удалось это сделать. Я написал прошивку с максимально простым исходным кодом и выложил ее на GitHub. В этой статье я расскажу о теории и практике разработки полетного софта для квадрокоптера и проиллюстрирую это на примере своего дрона на базе микроконтроллера ESP32, который можно увидеть на картинке выше.
Как я чуть не выкинул 150к на ветер или история установки приточной вентиляции в квартире
Как я пришел к покупке приточной вентиляции для квартиры с готовым ремонтом. Как купил ее за 150к и чуть не потратил деньги зря. Статья будет полезна тем, кто планирует купить очиститель воздуха, бризер или приточку.

Как я выиграл суд у Макхоста
Настоящих буйных мало – вот и нету вожаков © В.С.Высоцкий
Мы были клиентами Макхоста, у нас стоял хороший арендованный выделенный сервер. Мы заплатили за год вперед. Макхост с друзьями нас кинул, как и еще несколько тысяч своих клиентов.
Сайты наши не пострадали, но повисли деньги и было выпито немало крови, потрачено нервов.
Я уже интересовался у уважаемого хабрасообщества, что же делать в случае, если адекватных предложений Макхост не делает, а денег вложено прилично по нашим меркам в этой теме.
Мнения разделились, но в целом все советовали «судитесь».
Как показывает запрос на сайте Арбитражного суда, исков после эпик фейла от клиентов почти нет. Вероятно, людям лень или предоплаты были невелики.
Под катом анализ ситуации, исковое заявление, приведшее в скором итоге к вынесению решения в нашу пользу, а также мои впечатления от процесса.