Обновить

Разработка

Сначала показывать
Порог рейтинга
Уровень сложности

Взлом RDP в STM8/32 методом PowerGlitch

Уровень сложностиСредний
Время на прочтение4 мин
Охват и читатели24K

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

«Нет никакой защиты, есть только количество времени и знаний, необходимых для достижения цели.»

Читать далее

Как я установил таксофон у себя дома

Уровень сложностиПростой
Время на прочтение6 мин
Охват и читатели26K

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

Из книги Big Secrets и нескольких выпусков журнала 2600 я знал пару фактов о кредитных картах. Номера карт American Express всегда состояли из 15 цифр и начинались с тройки, а номера карт Visa состояли из 16 цифр и начинались с четвёрки. Первая пара цифр обозначала банк-эмитент, затем шёл номер счёта; последняя цифра вычислялась при помощи алгоритма Луна и использовалась как контрольная сумма всех предыдущих цифр.

Читать далее

Если ИИ не мыслит, то как он решает математические задачи?

Уровень сложностиПростой
Время на прочтение4 мин
Охват и читатели59K

Самый частый вопрос к тезису о том, что языковые модели не думают - чисто практический.

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

Самым частым возражением было не философское, а практическое:

«Если это правда, то как ИИ удается заниматься арифметикой?»

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

Но его там нет. Однако происходит кое-что весьма любопытное.

Читать далее

GTA VI (опять), пародия на The Sims, Бэтмэн в LEGO и другие: самые ожидаемые игровые релизы в 2026 году

Время на прочтение13 мин
Охват и читатели11K

2025 вышел богатым на игровые релизы. Геймеры получили Clair Obscur: Expedition 33, Kingdom Come: Deliverance II, Split Fiction, Battlefield 6, Death Stranding 2, Borderlands 4, Hollow Knight: Silksong, переиздание Doom и другие новинки. А вот GTA VI, увы, не получили, хотя именно эта премьера от Rockstar должна была затмить собой вообще все. Что ж, давайте же посмотрим, что нам обещает игровая индустрия в 2026.

Читать далее

Топовые фишки в LaTeX часть 1/4

Уровень сложностиСредний
Время на прочтение7 мин
Охват и читатели13K

Меня зовут Виталий и я пишу уже который год самую большую книгу по математике для 411 классов, а так же автор поста (рекомендую почитать) о ней. Пишу я ее в LaTeX и считаю, что современный учебник не должен быть черно-белым, а так же должен быть удобен для использования и учеником и учителем. Здесь я собрал базовые фишки, которые я использую (что-то чаще, что-то реже). Надеюсь, вы найдете что-нибудь полезное для себя :-)

Постараюсь все подробно описать, но не гарантирую идеального кода. Компиляция в основном с помощью pdflatex, но есть места, где требуется lualatex. Для себя я сделал около 35 стилевых файлов для использования в преамбуле, но тут я написал полный код чтобы в каждом случае можно было запустить «из коробки».

Кстати, в следующем посте будут еще <<круче>> функции.

Читать далее

Подсмотрел PIN от двери, а затем воткнул Wi-Fi-жучка за принтер — и ты внутри сети банка

Уровень сложностиПростой
Время на прочтение16 мин
Охват и читатели56K

Проник в банк не через вайфай и не через фишинг — а просто пристроился к аудиторам с улицы. Никто не спросил имени. Никто не проверил. А через час уже сидел у них в сети с рабочим пропуском. Как это случилось — и почему «следовать инструкции» не спасло — в новой статье.

Читать далее

Универсальная простота FAR. Как настроить и кастомизировать пользовательское меню

Время на прочтение7 мин
Охват и читатели24K

Для меня файловый менеджер FAR — это настоящий центр компьютерной вселенной. Это та самая программа, которую я запускаю сразу после загрузки операционной системы. Это то самое приложение, которое у меня всегда открыто, что бы я ни делал, какие бы задачи ни решал. За много лет мой FAR превратился в привычный инструмент, который так удобно ложится в руку, что тут же становится её естественным продолжением.

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

В статье я расскажу о том, как можно настроить и кастомизировать пользовательское меню файлового менеджера FAR.

Читать далее

Что такое цифровая доступность (accessibility)?

Уровень сложностиПростой
Время на прочтение6 мин
Охват и читатели11K

Привет, Хабр!

У меня есть хобби — смотреть записи собеседований фронтенд-разработчиков. К моей радости, во многих из них встречаются вопросы про accessibility. На этом хорошие новости заканчиваются.

Далее я начинаю тихо плакать в уголку. Что интервьюер, что кандидат строят весь диалог в стиле: «Это про адаптацию для слепых». В общем, набрался я сил, решил написать статью, чтобы показать всем, где у нас ошибки.

Я на практике покажу, в каких местах появляется accessibility. Дам несколько советов. Также важно сказать, что все термины, используемые в статье, моя вольная интерпретация. Пожалуйста, учтите это и больше обращайте внимание на смысл.

Давайте посмотрим, что я вам подготовил.

Читать далее

Мне этот Chrome DevTools теперь абсолютно понятен

Уровень сложностиПростой
Время на прочтение14 мин
Охват и читатели36K

Привет, Хаброчане!

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

Этот гайд поможет вам перестать воспринимать DevTools, как панель для отладки и начать использовать их как основной инструмент для ежедневной работы.

Читать далее

Паранойя безопасности против здравого смысла: чиним Home Assistant, который окирпичился без интернета

Уровень сложностиПростой
Время на прочтение6 мин
Охват и читатели28K

Home Assistant позиционирует себя как локальную систему. Но я столкнулся с ситуацией, когда локальная функция (Samba) не работает из-за облачного сбоя. При этом я вообще не использую облако. В статье описываю как обошёл эту проблему за 5 минут, когда за день разобрался в причине.

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

Home Assistant ≠ локальность?

Ну всё, пора закапывать UTF-8

Уровень сложностиСредний
Время на прочтение7 мин
Охват и читатели26K

Здравствуйте, меня зовут Дмитрий Карловский и я... серийный убийца устоявшихся стандартов. Сегодня я выследил и нанёс критический урон UTF-8. И сейчас я расскажу, как я его переиграл и уничтожил новым стандартом кодирования текста — Unicode Compact Format.

No, God! Please, No, NO!

Как узнать айпи собеседника в телеграм в 1 клик? Дуров не фиксит это третий год…

Уровень сложностиПростой
Время на прочтение2 мин
Охват и читатели59K

В телеграмме есть способ раскрыть IP собеседника в 1 клик, не скидывая ему никаких файлов, картинок и даже не заставляю его переходить по сомнительным ссылкам.

Телеграм даже не предупреждает о том, что вас скамят. Но как?

Читать далее

Большим GPU не нужны большие PC

Уровень сложностиСредний
Время на прочтение9 мин
Охват и читатели18K

С тех пор, как я научил графические карты AMDIntel и Nvidia работать с Raspberry Pi, меня мучил вопрос:

Какой в этом смысл?

У Raspberry Pi есть только одна линия шины PCIe Gen 3, доступная для подключения к eGPU. Этого очень мало, особенно учитывая, что у современного десктопа есть как минимум один разъём с 16 линиями шины PCIe Gen 5. То есть разница составляет 8 Гт/с (гигатранзакций/с) против 512 Гт/с. Бой явно неравный.

Но мне стало любопытно, действительно ли пропускная способность шины важна всегда.

Я хотел наконец покончить с вопросом о полезности, протестировав четыре задачи на разнообразных GPU для сравнения производительности на Raspberry Pi 5 и на современном десктопном PC.

Читать далее

Ближайшие события

Как заставить китайскую механическую клавиатуру работать в Linux

Уровень сложностиПростой
Время на прочтение3 мин
Охват и читатели17K

Как заставить китайскую механическую клавиатуру (Zifriend, SAMA, Gamestop, Cyberlinx) работать в Linux, хотя производитель этого не обещал.

История о том, как я «подружил» свою Cyberlinx ZA63 с Linux Ubuntu, когда официально поддержки нет. Для всех, кто думал, что клавиатуры «просто работают» везде или столкнулся с такой же проблемой.

Читать далее

Обработчики событий в JavaScript

Время на прочтение7 мин
Охват и читатели12K

Привет, я Александр Дудукало, фронтенд-разработчик. Сегодня я расскажу об обработчиках событий. Если коротко, вы узнаете о самом удобном способе управлять откликом на действия пользователя или браузера. 

Эта статья — часть базового курса, где я простым и доступным языком рассказываю о том, как научиться писать свои первые сайты и веб-приложения на JavaScript. Все детали под катом.

Читать далее

EMG TR4401: Оживляем Венгерский Осциллограф

Уровень сложностиПростой
Время на прочтение11 мин
Охват и читатели22K

Смотреть видеоверсию статьи в Youtube или в VK

А ведь в какой-то момент у меня набралось больше десятка ламповых осциллографов! Целая коллекция различных экспонатов той эпохи. Но, в отличие от Артёма Денисовича я вовремя одумался и избавился почти от всех из них, но вот один — венгерский осциллограф TR-4401 слегка задержался. Появился он у меня пять лет назад, во время ремонта осциллографа С1-54. Привлек меня красивой внешностью и исполинскими размерами, ну как тут не удержаться? 

Радовался я недолго. Во-первых, он оказался больше и тяжелее чем я думал. Во-вторых, из всех своих 63 ламп в нем стояло меньше половины. Осциллограф — производства Венгрии, в основе — слегка переработанный Tekronix, предположительно 541A. Отдельные части принципиальных схем были схожи как две капли воды, разве что сами радиолампы слегка отличались — вместо американских стояли польские, венгерские и советские аналоги. С другой стороны у меня была родная документация на русском и желание его оживить.

Что же внутри ламповой техники?

Двухканальная паяльная станция на базе STM32

Уровень сложностиСредний
Время на прочтение9 мин
Охват и читатели15K

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

Читать далее

Праздничный обвал: подборка новогодних инфраструктурных фейлов мирового масштаба

Время на прочтение10 мин
Охват и читатели13K

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

В статье разберем, почему именно новогодние и рождественский ажиотаж становится проверкой для сервисов и систем. Посмотрим реальные сценарии фейлов и разборов, которые можно сразу положить в on-call playbook. Берите свое новогоднее настроение, прошу всех под кат.

Читать далее

Строим свой остров: как создать минимальный Linux для Raspberry Pi

Уровень сложностиСредний
Время на прочтение17 мин
Охват и читатели20K

Ещё три года назад меня просили рассказать, как собрать минимальный Linux для Raspberry Pi, — и сейчас я выполняю эту просьбу. Несмотря на то, что первоначальной целью Raspberry Pi было создание дешёвого устройства для обучения базовым навыкам программирования, информации о том как, создать минимальный Linux для Raspberry Pi в интернете немного. Я хочу восполнить этот пробел для желающих начать погружение в embedded-разработку.

Linux для встраиваемых систем, включая Raspberry Pi, и Linux для PC имеют ряд различий. Различия касаются используемых загрузчиков, платформо-зависимого кода ядра, файловых систем и прочего. Для встраиваемых систем большое значение имеет Board Support Package (BSP), который обычно сопровождает различные системы на кристалле (System on Chip — SoC) или одноплатные компьютеры (Single Board Computer — SBC).

Чтобы сделать статью интереснее и полезнее, я рассмотрю создание Linux для Raspberry Pi 3 и для Raspberry Pi 4 и укажу на различие этих одноплатных компьютеров в контексте загрузки и сборки ядра Linux. Также мы соберём и запустим downstream и upstream Linux-ядра для Raspberry Pi.

Под Raspberry Pi 3 и Raspberry Pi 4 подразумеваются модели Raspberry Pi 3 Model B и Raspberry Pi 4 Model B соответственно. А обе модели называются в статье Raspberry Pi.

Как и в моей прошлой статье по сборке Linux для PC собирать мы будем без использования Buildroot или Yocto Project, только сделаем его более практичным, так как он будет поддерживать работу с SD-картой.

Такие сборки минимального Linux без Buildroot и Yocto Project мне чем-то напоминают высадку на необитаемый остров, где вы вынуждены минимальным набором инструментов благоустраивать свою жизнь. Да, вашей жизни ничего не угрожает, но определённая закалка в виде полученных базовых знаний остаётся. Поэтому системе Linux, создаваемой в статье, я дал кодовое название Robinson Linux.

Я надеюсь, что после прочтения статьи вам будет гораздо проще собрать Linux для другого одноплатного компьютера, например, Orange Pi.

Кому интересно погрузиться в embedded-разработку, добро пожаловать под кат.

Читать далее

Прокачиваем LEGO-машинки с помощью Arduino

Уровень сложностиСредний
Время на прочтение9 мин
Охват и читатели34K

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

Читать далее