Обновить
512K+

Python *

Высокоуровневый язык программирования

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

NoDPI v2.3: они научились собирать фрагментированный ClientHello, а мы научились это исправлять

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

Салют, Хабр!

Я думаю многие из вас слышали про NoDPI — open-source инструмент на Python для... кхм... изменения сетевого трафика (ну вы поняли). В последний месяц мне стали массово жаловаться (раз, два и еще в личке), что некоторые сайты перестали открываться. К сожалению, у меня долго не доходили руки разобраться с этим, но в эти выходные я наконец взялся за дело.

Под катом расскажу, что случилось и как получилось это побороть.

Читать далее

Новости

155 000 вакансий: полный анализ IT‑рынка России. Как описание вакансии влияет на зарплату

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

Привет, Хабр! (И тебе, IT‑шник, который хочет разобраться, что в 2026 вообще здесь происходит? Сейчас разберёмся, но легче тебе от этого не станет).

Говорят, вакансию надо уметь читать между строк. Я решил проверить это буквально: взял 155 тысяч вакансий и прочитал их все. Не заголовки, а сами тексты, со всеми «дружными семьями», «молодыми коллективами» и «опытом от 3 лет». А потом посчитал, сколько каждая такая фраза стоит в рублях. И научил этому алгоритм... Спойлер: некоторые стоят вам реальных денег.

В этой статье будет всё, зарплаты, ред флаги, лайфхаки, декодер вакансий. Будет интересно…

Читать далее

Silero TTS v5 теперь умеет и в эмфазы, и в вопросы и восклицания

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

Не так давно мы писали обнову нашего публичного синтеза, silero-tts. В прошлый раз мы завезли постановку вопросов.

В этот раз доехало аж несколько новых фич:

Каких?

Собираю робота на Raspberry Pi 5 для дочери. Но говорящей колонкой тут не отделаться! Вызов принят, погнали. (Часть 1)

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

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

Читать далее

Как я создал СуперЗавуч — программу для генерации расписаний занятий

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

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

СуперЗавуч - современная программа для составления расписаний уроков для школ, лицеев и колледжей. Программа позволяет создать расписание за несколько минут и имеет много параметров для конфигураций.

Читать далее

Находки в опенсорсе: мир питона за сентябрь 2026

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

Вот и наступила золотая осень!

В сентябре я каждый день почему-то вспоминал поговорку “от работы дохнут кони, ну а я бесмертный пони”. Сделано было просто куча всего! Новые релизы, библиотеки, крутые фичи, доклад на конференции. А еще наше сообщество сделало кучу интересных проектов в опенсорсе.

С меня как всегда статья без нейрослопа и ИИ, с вас как всегда интересные комментарии и лайки! А вот тут ссылка на прошлый дайджест за август.

Погнали смотреть, что у нас в питоне происходило!

Читать далее

Я подсвечивал нейроны крохотного ИИ, чтобы понять, когда тот врет

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

В 2023 году адвокат из Нью-Йорка принес в суд записку со ссылками на прецеденты, которые ему «добросовестно» подобрал ChatGPT. Судья не нашел ни одного из этих дел. И не случайно: дел, на которые ссылался ИИ, не существовало вовсе. А через год Air Canada проиграла спор с пассажиром, которому чат-бот авиакомпании пообещал возврат денег по правилу, которое придумал ее же бот. Языковые модели ошибаются вполне уверенно, и по тексту ответа невозможно понять, путается ли модель искренне или привирает, прекрасно зная правильный ответ. Для людей эту задачу давно пытаются решать полиграфом, но он измеряет пульс и дыхание, то есть пытается замерить волнение, а с враньем оно связано очень косвенно.

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

Первый же результат оказался интереснее, чем я рассчитывал изначально. Я попросил локальную модель соврать про цвет банана, и она уверенно ответила «Red», хотя на 25-м слое из 28 еще на 46% собиралась сказать «yellow». То есть правильный ответ у нее внутри был, а переписали его только последние слои. Но обо всем по порядку.

Читать далее

Скам‑бот в Telegram выдал себя таймером: разбор юзербота с реконструкцией на Telethon

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

Что это юзербот, я понял почти сразу. Аккаунт без username, фото девушки на фоне моря, диалог, который за полчаса доходит до развода и «может на ты перейдём». Интереснее было понять, к чему меня ведут и как эта штука устроена внутри.

Деньги и ссылки я никому не отправлял. Всё расследование уместилось в одну ночь и в один личный чат.

11 сентября в 15:30 «Мария» написала первой. Увидела меня в группе про IT, хочет попробовать себя в этой сфере и просит посоветовать материалы для старта. Безобидный повод, на который трудно не ответить, особенно если сам работаешь в IT.

Около часа ночи «Мария» ответила на сообщение, которое я удалил сразу после отправки. Как так вышло, я разобрал по таймингам и восстановил логику бота на Python.

Читать расследование

HabrExporter: сохраняем статьи и целые блоги Хабра в офлайн

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

Салют, Хабр!

Не так давно мне захотелось сохранить себе подборку статей одного автора: несколько десятков публикаций вместе с комментариями (которые зачастую не менее ценны, чем сами статьи). Конечно, будь статья одна, я, не задумываясь, нажал бы Ctrl+S или Ctrl+P. Но жать их полсотни раз — удовольствие сомнительное. Готовые решения нашлись, но меня ни одно не устроило (о них ниже). Поэтому я, как истинный программист, озадачился написанием собственного инструмента. А как истинный ленивый программист — поручил часть этой задачи Claude Code.

Так появился HabrExporter — приложение с графическим интерфейсом и CLI, которое сохраняет статьи, блоги авторов и закладки Хабра в PDF, EPUB, Markdown и ещё нескольких форматах. PDF при этом выглядит точь‑в‑точь как на сайте, вместе с деревом комментариев, а данные программа берёт не парсингом HTML, а из внутреннего API Хабра.

О том, как это устроено, что умеет программа, я и расскажу.

Save as...

Свой игровой голосовой сервер для друзей на VPS за 1 ГБ: FastAPI, SQLite, LiveKit и установка без терминала

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

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

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

Разобрать по косточкам

Как работает шифровальная машина Lorenz SZ 42 (для телетайпа)

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

В прошлом году я написал пост про известную шифровальную машину нацистов Как работает машина Enigma M3 (для флота) / Хабр .

Enigma широко использовалась в немецких вооружённых силах, включая армию и флот.

Но куда менее известной является машина Lorenz SZ 42, хотя она была не менее важна.

Из этой статьи вы сможете узнать, как шифровали сверхсекретную связь высшего немецкого командования, как ошибка оператора в 1941 году помогла раскрыть устройство Lorenz и почему в 1944-м для чтения таких сообщений появился электронный Colossus.

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

Кроме того, в процессе работы над материалом было найдено довольно много первоисточников, которые неплохо сохранить внутри такой статьи. В самом низу есть cайты, архивы, интерактивные модели и первоисточники, в статье много кода на Python.

Погрузиться в историю ...

Как я вернул LAN-кооп в Neverwinter Nights 2 на Switch

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

Как вернуть LAN-режим в Neverwinter Nights 2 на прошитой Switch: без аккаунта Nintendo, без подписки, по локальной сети между двумя консолями. Разбор ARM64-кода, отладка GDB прямо на консоли и готовый патч для Atmosphere.

Читать далее

Девять петель от Claude — почему это очень важно для кода будущего

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

Anthropic сообщила о девятипетлевом расчёте Claude — поднявшем ранее опубликованный результат для этой амплитуды с восьми до девяти петель.

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

Материал изложен постепенно, от простого к сложному, от основ к научным результатам. От уравнения Шрёдингера и одной петли постепенно доходим до bootstrap и символов.

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

Проверить на Python

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

16 граней по ГОСТу на клавише Esc: процедурный дизайн и фотополимерный ад

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

Штучные кейкапы для механических клавиатур обычно изображают череп, котика или персонажа аниме, и все трое давно стоят у кого-нибудь на Esc. Для своих клавиатур я уже сделал четыре кейкапа с глубоководной живностью (радиолярия, глаз, жабры и коралл, фотки прикладывать не буду, мне за них, честно говоря, стыдно), а пятым выбрал предмет, который узнается с любого расстояния и в любом масштабе: советский граненый стакан. Его предстояло уменьшить в четыре с лишним раза, напечатать из прозрачного фотополимера и посадить на крестовину Cherry MX. Клавиша при этом должна нажиматься, а стакан обязан остаться стаканом.

Сам стакан я смоделировал в Blender, и про его форму здесь будет один раздел с арифметикой. Гораздо больше времени ушло на вопрос, на который редактор ответить неспособен: что случится с прозрачной моделью в ванне фотополимерного принтера. Ради него пришлось написать две программы. Первая считает, в каких углах детали после печати останется жидкая смола, вторая ищет в модели присоски, которые при каждом слое пытаются оторвать деталь от стола.

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

Читать далее

Насколько можно верить спутнику, который измеряет температуру земли

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

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

Статья посвящена главной теме — какому же источнику верить и как я вижу свою работу спустя 2 года работы DevOps.

Летом 2022 года на Алтае датчик, лежащий на земле, показал +48 °C. Спутник Aqua почти в то же время над той же точкой увидел около +33. Кто из них прав и насколько вообще можно доверять «космической» температуре, я разбиралась в дипломе в ВКИ НГУ.

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

В статье расскажу, как я сравнивала данные MODIS (спутники Terra и Aqua) и Landsat 8 с показаниями термодатчиков, какие получились расхождения и на какие грабли я наступила.

Читать далее

Собираю робота на Raspberry Pi 5 для дочери. Но говорящей колонкой тут не отделаться! Вызов принят, погнали. (Часть 2)

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

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

Читать далее

Защитит ли ИИ от дрона? Разрабатываем умный прицел

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

Ни для кого ни секрет, что в последние несколько лет в военном деле произошла т.н. революция дронов, заключающаяся (внезапно) в использовании дронов для поражения военной техники и живой силы противника. И в отличии от предыдущих революций, опиравшихся в основном на высокие технологии и не менее высокую цену изготавливаемой продукции, FPV-дроны делают ход козлом и берут не столько технологичностью, сколько копеечной стоимостью, благодаря которой такой агрегат не только может выносить технику, превосходящую его по стоимости в тысячи раз, даже снаряд ПВО порой стоит значительно дороже.

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

Читать далее

Исходящие вебхуки Битрикс24: как принять POST на своём сервере и что делать дальше

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

Что происходит после того, как Битрикс24 отправляет исходящий вебхук? Разбираем POST-запрос, логирование, Flask, Django и базовую защиту endpoint.

Читать далее

MCP‑сервер 2ГИС: как мы учили LLM не выдумывать адреса

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

Мы выпустили MCP-сервер, который даёт ИИ-агентам прямой доступ к геосервисам API-платформы 2ГИС: поиск мест и организаций, прямое и обратное геокодирование, построение маршрутов, изохроны и статические карты — сейчас это 6 инструментов поверх соответствующих API. 

Что это за сервер и как подключить — в документации. А в этой статье расскажу про инженерную часть: как он устроен внутри и на какие грабли мы наступили, пока доводили его до прода.

Статья будет полезна разработчикам, кто пишет свой MCP-сервер или тулы под function calling, кто проектирует контракты инструментов для LLM, и просто всем, кому интересно, что ломается на стыке LLM и гео.

Читать далее

Сможет ли ИИ решить физику?

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

Физика написана плохо

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

Читать далее
1
23 ...