Обновить

Все потоки

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

Мы построили мир, который больше не понимаем или почему NASA не может скопировать свой же двигатель

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

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

А теперь мысленный эксперимент. Попробуйте в голове ( а еще лучше на листке бумаги) набросать его механическую схему. Как рама соединяет переднее и заднее колёса? Как протянута цепь и где находятся педали?

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

Читать далее

Новости

Стратосферная птичка: рождение М‑17 «Стратосфера» и путь к М‑55 «Геофизика»

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

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

Во время холодной войны в СССР создали машину, способную подниматься на немыслимую высоту и расстреливать из пушки шпионские аэростаты. Самолет с размахом крыла шире, чем у Боинга, который мог часами парить в абсолютной тишине стратосферы на самой границе космоса. Эта машина называлась М-17 «Стратосфера». Ее потомок, М-55 «Геофизика», летает до сих пор. Вместе они установили сорок мировых рекордов, двадцать из которых не побиты и спустя тридцать лет.

ding!

Взламываем 40-летний донгл защиты от копирования

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

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

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

Это ПО было написано на языке программирования RPG (Report Program Generator), который старше Кобола (!); он использовался в компьютерах IBM среднего ценового диапазона наподобие System/3, System/32 и вплоть до AS/400. Похоже, позже RPG портировали в MS-DOS, поэтому те же программные инструменты, написанные на RPG, могут работать на персональных компьютерах. Так фирма и оказалась в этой ситуации.

Эта бухгалтерская фирма работала на компьютере с Windows 98 (да, в 2026 году) и запускала написанное на RPG ПО в консольном окне DOS. Оказалось, что для работы ПО требовалось подключить к параллельному порту компьютера специальный аппаратный донгл защиты от копирования! В те времена это было достаточно распространённой практикой, особенно у поставщиков «корпоративного» ПО, защищавшего свои очень важные™ программы от неавторизованного применения.

Читать далее

Я отреверсил процессор, чтобы улучшить детскую фотокамеру

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

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

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

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

Поэтому я задумался: наверняка ведь есть способ пропустить меню и сразу перейти в режим камеры? Должно быть, внутри камеры находится какой-нибудь процессор ARM, и я не думаю, что разработчики заморочились с защитой кода. Достаточно считать его через JTAG, загрузить в Ghidra, найти нужный бит, изменить его, снова записать код во флэш-память, и всё.

Читать далее

Три кита масштабируемого IT-продукта: закон больших чисел, теория вероятностей и статистика

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

Привет Хабр! В каждой компании есть люди, которые не пишут код каждый день, но почти каждый день принимают решения, от которых этот код либо спокойно живёт под нагрузкой, либо превращается в источник инцидентов и срочных созвонов. Думаю они согласятся, что масштабируемые IT-продукты строятся не только на технологиях, а ещё и на умении мыслить вероятностно.

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

Мне кажется, пользователям понравится.
Я уверен, что система выдержит.
Ну сейчас же всё работает.

Проблема в том, что «кажется» и «уверен» плохо масштабируются. А числа — масштабируются отлично.

Читать далее

Все получилось! Debian Linux на Nintendo Wii

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

После написания первого материала я получил достаточно много комментариев и отзывов. Это было очень приятно, спасибо! Обязательно попробую запустить там иксы и прогнать предложенными тестами. Вместе с этим в голове крутилась простая до безобразия мысль: а можно ли поставить туда Linux?

Как только начал изучать этот вопрос, показалось, что установить его будет очень просто. Но реальность преподнесла сюрпризы. Сегодня покажу, как получить работающий Linux на этой игровой консоли с PowerPC-процессором IBM Broadway.

Читать далее

Как мы создали open-source кодового агента, работающего с любыми локальными моделями

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

Можно ли сделать кодового агента уровня Claude Code, но бесплатного и для локальных моделей? Мы разобрали архитектуру конкурентов, нашли слабые места и написали PocketCoder — CLI-ассистент с Agent Loop, XML-контекстом и памятью. Работает даже с qwen-7b, хотя и с приколами.

Читать далее

Подробный гайд для айтишников: как понять, что вы пришли к врачу–мракобесу?

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

Всем привет! Я врач–гастроэнтеролог, терапевт. Недавно читала лекцию в крупной IT–компании — рассказывала о том, как сохранить здоровье в условиях стрессов, постоянных изменений на работе и сидячего образа жизни. После выступления общалась с аудиторией — от некоторых историй просто обалдела. 

Казалось, что айтишников с их вайбкодингом и Chat GPT уже не проведешь историями: «На, попей волшебные сахарные горошки и стань лучшей версией себя». Но нет, псевдоврачи и тут нашли лазейку. Вопросов и историй набралось так много, что решила собрать в статье ред флаги, при виде которых рекомендую напрячься и обратиться за вторым мнением к другому врачу.

Читать далее

Астрологическое IPO SpaceX, а также соцсеть для крабовидных нейронок

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

Самые интересные новости финансов и технологий в России и мире за неделю: Маск подумывает склеить SpaceX с Теслой или xAI, в России всем правительством спасают пекарню «Машенька», Хаби Лейм продал сам себе права на создание своих ИИ-двойников, акции производителя унитазов растут из-за AI, а также лудомания Виталика Бутерина на Polymarket.

Читать далее

Замыкание в JavaScript — зачем функциям личное пространство

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

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

Чтобы не городить глобальные переменные и не писать громоздкие конструкции (что почти всегда ведет к багам), мы посмотрим на еще одну фишку JS.

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

Читать далее

Самый доступный из настоящих Телекастеров

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

Привет, Хабр! Мне принесли на отстройку электрогитару Squier FSR Bullet Telecaster цвета Olympic White, и теперь мы сможем рассмотреть и послушать эту популярную модель во всех подробностях.

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

Видео с котиком тоже будет.

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

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

"Что-то не так с сетью. Раньше у меня было 4Гбит/с, а теперь выдаёт только 120Мбит/с. Ты что-то менял недавно?"

Знакомо звучит? Если вы хоть немного занимались поддержкой продуктовых сред, вам, вероятно, доводилось слышать подобные жалобы. Прежде чем прийти к выводам о причинах проблемы, нам нужно разобраться, что именно происходит на уровне TCP обоих хостов.

Читать далее

ИИ ускоряет разработку, но делает программистов тупее

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

Anthropic опубликовали исследование, как AI влияет на скорость выполнения задач и на развитие навыков программирования.

В эксперименте участвовали 52 джуна. Все решали одну и ту же задачу с новой для них технологией. Половине разрешили пользоваться AI, половине — нет. После выполнения задачи все участники прошли итоговый тест на понимание темы.

Читать далее

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

Питер Штайнбергер. Как работает автор OpenClaw [Clawdbot/Moltbot]

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

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

В реальности все по-своему заблуждаются. Питер Штайнбергер, программист-ветеран с большим стажем, действительно не читает, что улетает в проект, а OpenClaw — не третье, а пятое название ИИ-агента.

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

Читать далее

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

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

Привет! Я Никита Щербо, разработчик в компании Битрикс24.

Сегодня поделюсь с вами небольшим кейсом — расскажу, как мы с помощью ИИ нагенерили простых примеров для обучения сотрудников работе с Service Locator. 

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

Итак, мы все давно знаем, что ИИ может генерить и код, и тесты, и документацию. У нас была обратная задача — имея код, документацию и тесты, создать простые и понятные примеры использования инструмента.

У меня в команде 30 человек — много новичков, которые пришли к нам из «Битрикс24 // Университет», есть те, кто уже давно работали с Service Locator, но не интересовались тем, как устроен механизм. Мы решили организовать общий митап для команды и показать, как можно использовать это решение в наших задачах. 

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

Читать далее

Винтажный телеком. Зачем Стокгольму понадобилась башня связи в XIX веке

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

Эту фотографию вы наверняка видели во многих постах в социальных сетях. Пишут, что на фото - Стокгольмская телефонная башня Telefontornet. В конце XIX века она служила связующим узлом между многочисленными абонентами и телефонной станцией шведской столицы. 

Правда ли это? Действительно ли во времена ручных телефонных станций провода заходили по воздуху и тянулись с разных концов города? Или это вообще нейрогенерация и подобной башни никогда не существовало? Давайте разбираться!

Читать далее

От контроллеров до операторов: моделирование меняет подход к автоматизации на всех уровнях АСУ ТП

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

Давайте представим, что нам нужно построить сложный объект — скажем, самолет, поезд или вообще атомную электростанцию. Строить «наобум» невероятно дорого и рискованно. Гораздо разумнее выполнить предварительные расчеты и скорректировать слабые места. Есть разные виды расчетов, ну например расчет прочности конструкции, расчет стомости сорружения или эксплуатации, расчет последствий аварии (для АЭС). Расчеты бывают статические например расчет фундамента, расчет толщщины стены, или просто расчет нагрузки на балку. И динамические - расчет некоторого процесса разворащивающегося во времени например: расчет процесса нагрева котла в доме, расчет процесса разгона авиационного двигателя, расчет процесс поддержания давления в кабине самоелета при изменении высоты. В динамических расчетах сложных объектах, как правило необходмо учитывать работу автоматической системы управления (АСУ), поскольку система управления влияет на процесс.

Если мы говоримт об АСУ ТП (Автоматической Системе Управления Технологическими Процессами), то само название как бы намекает на наличие некоторого процесса во времени, а значит тут есть место для динамического рассчета. Вот здесь-то на сцену и выходит "Среда динамического моделирования технических систем SimInTech."

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

Читать далее

Обзор реестрового мини-ПК «Гравитон Д-15И»

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

Всем привет! Меня зовут Александр Васильцов, я руковожу отделом развития инфраструктуры в R-Style Softlab. В рамках своей работы я занимаюсь тестированием реестрового и импортозамещённого оборудования, которое используется на реальных рабочих местах специалистов.

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

И почти сразу у всех возник закономерный вопрос: а на что на самом деле способны отечественные решения?

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

R-Style Softlab не первый год занимается задачами импортозамещения ИТ-оборудования. Столкнувшись с этой проблемой на практике, мы решили выстроить собственное внутреннее тестирование оборудования, предлагаемого к закупке. Была разработана методологии, назначены добровольцы – и работа закипела.

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

Читать далее

О ключах идемпотентности

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

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

Как именно работают подобные механизмы? Потребитель, получая сообщение, берёт его ключ идемпотентности и сравнивает с ключами сообщений, которые уже были обработаны. Если такой ключ уже встречался — входящее сообщение является дубликатом и его можно проигнорировать. В противном случае потребитель начинает обработку сообщения. Например — сохраняя в базе данных само это сообщение или какое-либо представление данных, полученное после его анализа.

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

Читать далее

Управление ресурсами процессов с помощью контрольных групп Linux

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

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

В статье — практический разбор cgroups v2: как руками через cgroupfs создать группу, задать лимиты CPU/RAM и правильно запускать процессы без «окна без ограничений», а затем сделать то же самое через cg*-утилиты и systemd-run/slice. По дороге станет ясно, почему эти приёмы напрямую перекладываются на мир Docker и Kubernetes.

Перейти к статье