Обновить

Разработка

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

Радар для прослушки телефона с трёх метров

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

Современные технологии машинного обучения (ML) позволяют извлечь полезный сигнал из массива данных, который раньше считался просто шумом. Это открывает новые возможности для разведки и шпионажа, в том числе прослушки телефонов и слежки за гражданами.

Группа исследователей Университета Пенсильвании разработала аппаратно-программный комплекс WirelessTap, который снимает звук по вибрации телефона. Это принципиально новый способ прослушки, который не использовался ранее.

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

Читать далее

Direct2D #5. Продолжение темы геометрии ID2D1Geometry и дочерние классы

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

Продолжаем рассматривать инструмент для манипуляций с геометрией в Direct2D. Просто и понятно.

Читать далее

Три способа менять один объект из нескольких потоков. Больше нет

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

Три способа менять один объект из нескольких потоков. Больше нет

Mutex, CAS, акторы, STM, CRDT, иммутабельность, MVCC, Disruptor…

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

На самом деле их ровно три. Всё остальное — реализации и комбинации.

Эта статья — попытка навести порядок в голове. После неё вы сможете:

за 5 секунд классифицировать любой подход к конкурентности;
понимать, почему Erlang выбрал акторы, а Java предлагает synchronized;
не изобретать велосипеды и не зацикливаться на «единственно правильном» решении;
проектировать многопоточный код, держа в голове простую модель.

Заодно, покажу почему ООП вообще не было изначально спроектировано под многопоток.

Читать далее

Олимпиады — всё?

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

Думаю, что среди читательской аудитории Хабра многих бывших (а возможно, и действующих) олимпиадников, поэтому решил поделиться с сообществом наблюдениями и размышлениями об актуальных проблемах олимпиадного движения в стране. Коротко о том, какое я имею отношение к олимпиадному движению и почему считаю себя в праве публично высказываться на эту тему: я сам бывший олимпиадник (призёр Всероса по информатике), 15 лет веду кружки по информатике и программированию и, в том числе, готовлю школьников к выступлению на олимпиадах, среди моих учеников призёры Всероса по информатике, ВКОШП и других олимпиад по информатике и программированию, кроме того вот уже 10-ый год подряд я участвую в подготовке и проведении школьного и муниципального этапа ВсОШ по информатике в своём регионе.

Позавчера после опубликования результатов муниципального этапа по информатике этого года мама одного из участников прислала мне сообщение: "Я хочу сказать вам спасибо за дисквалы. Потому что списывание достигло какого-то маразма. И по другим предметам вообще ничего не боятся и ничего не стесняются". Речь идёт о том, что мы дисквалифицировали большое количество участников муниципального этапа за списывание друг у друга и за использование искусственного интеллекта при решении задач. В олимпиадах по информатике всё, что делает участник, фиксируется в тестирующей системе, и мы, жюри, имеем возможность анализировать это и на основании определённых критериев делать вывод о несамостоятельности выполнения работы. В силу специфики профессии мы, информатики, во-первых, имеем технические возможности бороться со списыванием, а, во-вторых, воспринимаем сложившуюся ситуацию как некий вызов, которому интересно попытаться что-то противопоставить. Но ситуация постепенно ухудшается. Ниже статистика дисквалификаций на муниципальном этапе ВсОШ по информатике по 9-11 классам по нашему региону:

Читать далее

Как LLM-вендоры обращаются с вашими данными: подробный разбор безопасности и конфиденциальности

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

Привет, Хабр! Я Андрей Яковлев, исследователь в области информационной безопасности. Работаю с корпоративными AI‑сервисами и активно внедряю технологии искусственного интеллекта в продукты Positive Technologies.

2025 год перевернул привычные ожидания и практики, связанные с конфиденциальностью больших языковых моделей (LLM) Представьте ситуацию: вы технологическая компания, которая несколько лет использует ChatGPT для быстрого прототипирования и поддержки клиентских запросов. Раньше казалось, что раз диалог удалён — значит, данные исчезают навсегда. Но в мае 2025 года федеральный суд США в рамках искового дела The New York Times к OpenAI поставил точку в этом заблуждении — OpenAI обязали бессрочно хранить все пользовательские данные (включая удалённые через пользовательский интерфейс).

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

Исследование охватывает западных вендоров (OpenAI, Anthropic, Google AI, GitHub Copilot), российские решения (GigaChat, YandexGPT), китайскую платформу DeepSeek, а также ключевых провайдеров-агрегаторов (OpenRouter, Cursor, Windsurf). Анализ включает детальное сравнение политик для частного и корпоративного использования, документированные случаи утечек данных и их последствия, а также практические рекомендации по выбору решений в зависимости от требований к безопасности данных.

Читать далее

Open source-стратегии: кейс OpenIDE и специализированного консорциума компаний Haulmont, Axiom JDK и Группы Астра

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

Продолжаю делиться примечательными кейсами открытых проектов и разборами корпоративных open source-стратегий. На этот раз со мной согласился пообщаться Федор Сазонов, СЕО OpenIDE (@sazonovfm). Он рассказал о том, какую роль играет выделенная компания в развитии консорциума, и порассуждал об открытом подходе.

Читать далее

GUCA: эволюция на графах («Живые графы» 2.0)

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

Где проходит граница между случайностью и замыслом? Почему в наших ДНК куча мусора? Можно ли воспроизвести эволюцию в машине, и как зарождалась жизнь? Хотя и на последний вопрос ответа нет, но мы можем создать эксперимент, который позволяет моделировать механизмы эволюции с нуля. О таком эксперименте из области Artificial Life (искусственной жизни, где эволюция идёт внутри компьютера) и пойдет речь сегодня.

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

GUCA (Graph Unfolding Cellular Automata) — один из таких маленьких миров: в нём мы выращиваем “организмы” из узлов и рёбер графа.

Читать далее

Bug Bounty Минцифры: как найти критическую уязвимость и получить дырку от бублика в награду

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

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

Решил написать небольшую заметку о моем личном опыте взаимодействия с багбаунти программой Минцифры РФ. На самом деле у меня наберется много интересных историй так или иначе связанных с багбаунти, но некоторые из них являются особо примечательными. Об одной из них и пойдет речь в данной статье.

Для начала немного расскажу о себе. Опыт в ИБ у меня обширный и разнообразный. В данной сфере я уже чуть более 13 лет. Поработал на многих участках кибербеза, начиная от так называемого "папирсека" (специалист, отвечающий за подготовку всех необходимых документов по ИБ) до application security инженера. Работал и в органах государственной власти, и в компаниях с государственным участием и в чистой коммерции. В общем небольшое представление об ИБ имею.

Читать далее

Теоремы Гёделя, Тьюринга и Хайтина – доказательства неалгоритмичности Вселенной и неполноты физических теорий?

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

Учёные доказали: мы не живём в Матрице! В октябре 2025 г. был опубликован доклад о неразрешимости в физике, неалгоритмичности Вселенной и невозможности её полной симуляции, опирающийся на теоремы Гёделя о неполноте. Перевод этой статьи с пояснениями был выполнен уважаемым @Dmytro_Kikot На теоремы Гёделя вообще часто ссылаются, чтобы доказать существование или несуществование Бога, ограниченность научного метода, невыразимость истины словами, непознаваемость мира разумом, невычислимость сознания, неспособность искусственного интеллекта превзойти естественный, невозможность самосовершенствования и т.д. Говорят, эволюционировать, познавать себя и создавать что-то сложнее себя можно только при наличии сверхъестественного источника бесконечной сложности, иначе это превращается в задачу вытащить себя за косичку из болота. Также проводятся параллели со Вторым законом термодинамики, согласно которому энтропия в замкнутой системе не может уменьшаться, а значит, там не будет самоорганизации и упорядоченности. Да и что вообще может рассказать нам наука, если даже математика нелогична, а мир противоречив и парадоксален? Остаётся только уповать на интуицию, которая якобы неалгоритмична и является откровением самой Истины, снисходящей лишь до тех, кто достоин. А может, мы просто неправильно понимаем теоремы Гёделя? Давайте разбираться, каковы следствия этих теорем для физики, информатики и философии, возможна ли алгоритмическая теория всего, и накладывает ли неполнота Гёделя ограничения на то, что мы можем познать своим разумом.

Читать далее

Я задолбался читать про АИ

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

Больше, чем сам АИ, меня бесят только топы АИ‑компаний, которые дуют щёки и втирают, что сейчас АГИ уже вот‑вот за углом, что вот‑вот они заменят всех программистов, суппортов и прочих бесполезных проедателей денег за свой псевдоинтеллектуальный труд, который, очевидно (!), сводится к генерации текста. Как же эти негодяи рисуются и втирают, что они решают проблемы масштаба всего человечества! В то время как на самом деле все проблемы, которые они решают — это набивание собственных карманов.

Больше топов меня бесят только коллеги, которые дуют щёки и говорят, что вот они‑то познали искусство промтинга, и теперь они — 10х программеры, потому что вместо того, чтобы делать задачи самим, они запускают пяток‑другой агентов, и те пишут код лучше, чем они.

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

Читать далее

Программатор ROM на Arduino за вечер

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

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

Задача: есть микросхема памяти ROM 27С512 емкостью 512 Кбит или 64 Кбайта, в нее нужно прошить готовый дамп размером 16 Кбайт, понадобится нам такой ROM с дампом

Читать далее

Изоморфные схемы

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

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

Читать далее

Kubernetes с GPU в WSL за вечер: рабочий кластер на Windows

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

В данной статье я покажу, как на Windows развернуть кластер Kubernetes из одного узла с поддержкой GPU и time-slicing, используя WSL.

В итоге получится удобная домашняя Kubernetes-лаборатория.

Читать далее

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

Ортодоксально Каноническая Прошивка (ОКФП)

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

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

Читать далее

Шаблон проектирования Buffer

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

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

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

Читать далее

Вайб-ЛЛМинг. AI агенты теперь сами обучают LLM с помощью Hugging Face Skills

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

Hugging Face релизнули Skills — Agent Context Protocol (ACP), через который упаковываются определения разных задач для ИИ агентов. По сути — это папки, в которых собраны инструкции, скрипты и ресурсы для использования ИИ агентом под конкретный кейс.

Один из перых скиллов — дообучение опенсорсных LLM. Разбираемся подробнее.

Читать далее

Несколько анекдотичных эпизодов из моей юности и ранней карьеры

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

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

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

Программированию приходит конец. Объектно-ориентированный подход позволит одному человеку, который будет намного умнее любого из нас, один раз написать библиотеку, которую мы будем использовать бесконечно. Решив какую-либо задачу, повторно решать её больше не придётся.

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

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

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

Читать далее

Userbot + ИИ: За гранью парсинга, как Telegram-юзербот и нейросеть помогают искать тренды и боли

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

Задача — не просто спарсить сообщения из Telegram-каналов. Задача — научиться вылавливать из потока обсуждений актуальные тренды, боли клиентов и рабочие лайфхаки. Это золотая жила для SEO-специалистов, продуктологов и маркетологов.

В этой статье (первой из двух) мы сфокусируемся на создании и деплое юзербота для сбора данных. Во второй части подключим нейросеть для анализа и получим готовые инсайты.

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

Для создателей контента (SEO): Сложно увидеть, о чем сейчас говорят и спрашивают люди в нише. Тренды рождаются в чатах, а не в поиске.

Для продуктологов и аналитиков: Открытые чаты конкурентов — кладезь обратной связи. Но нет структуры «вопрос-ответ». Ценные инсайты о фичах, проблемах и ожиданиях пользователей размазаны по диалогам.

Читать далее

Реальный кейс настройки Pod Autoscaling в k8s с точки зрения разработчика

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

На носу 2026 год, а я хочу поделиться своим путешествием по переводу приложения на инфраструктуру Kubernetes. Самой сложной и интересной частью была настройка автоскейлинга. Не слишком ли заезженная тема? Думаю нет, потому что я буду рассказывать именно с позиции разработчика приложения, а не девопса. Мне повезло, я без понятия как это всё настраивается. Я буду рассказывать как это всё работает. Конфигов кубера будет минимум, рассуждений и погружений в метрики максимум. В конце оставил TL;DR. Поехали?

Читать далее

Пагинация в PostgreSQL: ROW_NUMBER убивает производительность

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

Эффективная пагинация — не просто удобство, а необходимость. Анализ нагрузочного тестирования, метрик системы и планов выполнения показывает, что выбор неправильного метода может замедлить приложение в 15 раз, создавая катастрофическую нагрузку на СУБД. Одни методы работают с молниеносной скоростью, а другие превращаются в «убийц производительности».

Читать далее