Обновить

Все потоки

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

Как я перестал платить за macOS-минуты: перенос iOS-сборки с GitHub Actions на Xcode Cloud, с цифрами

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

Одна минута macOS-раннера в GitHub Actions стоит десять минут Linux. Я перенёс iOS-сборку Flutter-приложения в Xcode Cloud: с ~45 оплачиваемых минут на релиз до 6, без .p12 и профилей в секретах, с тремя shell-скриптами вместо 90 строк YAML. Внутри — схема тегов ios/v* и android/v*, настройки Xcode Cloud, которые молча сжигают compute-часы, и таблица семи падений первого живого прогона — ни одно из них не было ошибкой миграции. Плюс чек-лист и открытый скилл, который из этого вырос.

Читать далее

Сколько страниц на SPA, или Как мы реализовали динамический краулер

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

Всем привет! Я Владимир Гринчуков, в Positive Technologies мы с командой PT BlackBox разрабатываем сканер безопасности. На вход он получает URL приложения, а после сканирования возвращает список уязвимостей. Как и любой анализ чёрным ящиком, он работает по простому принципу: сначала собирает поверхность атаки — список всех эндпойнтов приложения, их методов и параметров, — а потом ищет на них уязвимости. Сбор поверхности — это непростая задача, в решении которой мы набили много шишек.

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

Такой краулер называют статическим, и на практике его часто не хватает. 

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

Читать далее

А что, если у Мэри есть брат?

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

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

Однажды Мэри выходит из комнаты и впервые видит красный цвет. Именно здесь возникает вопрос, который сделал этот эксперимент знаменитым: Получила ли Мэри новое знание?

Комната Мэри остаётся парадоксом, потому что любой ответ оказывается недостаточным. Если сказать, что Мэри не получает нового знания, тогда полного физического описания мира достаточно, но тогда остаётся необъяснимым её первое волнительное переживание красного цвета.

Если сказать, что получает, значит физического описания знания недостаточно, но возникает вопрос: что именно она получила такого, чего не содержало полное физическое описание мира? Именно поэтому спустя сорок лет эксперимент остаётся парадоксом: каждый ответ рождает новый вопрос.

Эта статья рассматривает вопрос, чтобы поменялось, если бы у Мэри был брат Питер с симметричной ситуацией, который всю жизнь жил в деревне и видел красный цвет, но ничего о нем не знает, и он впервые заходит в комнату Мэри? Узнает ли Питер что‑то новое о красном?

Читать далее

Mentorpiece Vacy Index август 2026: Число вакансий по тестированию AI‑приложений растет третий месяц подряд

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

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

Читать далее

Как эволюционировала сеть доступа одного района: dial-up, ADSL, FTTB, ETTH и 10G

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

Я пришёл в связь 1 декабря 2006 года, когда dial‑up ещё был нормой, а ADSL только начинал разворачиваться. За следующие годы районная сеть прошла путь от модемного пула и первого DSLAM до тысяч xDSL‑подключений, распределённых узлов доступа, VPN/MPLS, IPTV, FTTB/ETTH, DWDM и 10G. Эта статья — о том, как строилась и менялась эта сеть, и о людях, которые десятилетиями хранили её эксплуатационную память.

Читать далее

Когда все тесты зелёные, а баги едут в прод

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

ИИ легко генерирует тесты, которые проходят с первого раза — и именно поэтому им опасно доверять без проверки. В статье разбираем, откуда берутся «зелёные» тесты, пропускающие баги, почему покрытие мало говорит о качестве и какие подходы помогают проверять сами тесты на прочность.

Проверить тесты

vm5277: Java-синтаксис и ООП для 8-бит МК без оверхеда

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

Java-синтаксис на 8-битных микроконтроллерах? Без виртуальной машины?

Исторически в эмбеддеде правит Си. Но Си — это вечные malloc/free, утечки памяти, выходы за границы массива и дебаг с осциллографом.

Я разрабатываю vm5277 — монолитный тулкит и язык J8B с Java-подобным синтаксисом. Он компилирует строгий ООП-код напрямую в нативный, оптимизированный ассемблер.

Что под капотом:

Управление памятью: через Reference Counting (new без free и без Garbage Collector).

Полиморфизм интерфейсов: спрятан во Flash (без оверхеда в ОЗУ).

Типы данных: встроенный 16-битный примитив fixed (Q7.8) вместо тяжелого float.

Оптимизация: тотальный Dead Code Elimination (в прошивку идет только то, что реально вызвано).

Проект в стадии суровой Альфы. Код открыт на GitHub, десятки примеров (от мигания диодом до драйверов периферии).

Читать далее

Утёкшие горутины теперь ищет сборщик мусора. Проверил, где он молчит

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

В Go 1.27 профиль goroutineleak вышел из эксперимента: рантайм научился доказывать, что горутину уже некому разбудить. Собрал тулчейн из исходников, прогнал десяток программ и замерил, что детектор находит, где он молчит и во что обходится вызов.

Читать далее

Yandex BareMetal: организовать доступ к KVM и ничего не сломать

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

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

Меня зовут Павел Пушкарёв, я разработчик сервиса по аренде выделенных серверов Yandex BareMetal. Мы с коллегами из Yandex Infrastructure создавали его для пользователей Yandex Cloud, опираясь на накопленный в Яндексе опыт работы с железом, и максимально переиспользовали лучшие практики. 

Читать далее

Миллион частиц на iPhone: строим аттрактор Лоренца на GPU с Metal

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

Привет! Я Максим Савченко, iOS-разработчик. Эта история началась с вопроса, как сделать живую форму в духе иконки Siri — и довольно быстро уехала в другую сторону: аттрактор Лоренца на сотнях тысяч, а потом и на миллионе частиц, где и расчёт, и отрисовка живут на GPU.

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

В статье разбираю это по шагам: математика и выбор интегратора, ping-pong-буферы, compute/render-пайплайн, point primitives и additive blending. А в конце — GPU Frame Capture и замеры на физическом iPhone. Спойлер, который я сам не ожидал: RK4 в этой конфигурации оказался далеко не самым дорогим местом. Основная цена ушла в отрисовку и overdraw.

Если коротко: это не гайд «как нарисовать красивую картинку», а разбор того, зачем вообще лезть в Metal и где кадр упирается на реальном устройстве.

Читать далее

Куда девается свечение при сохранении в PNG. Два формата прозрачности, о которых почти никто не знает

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

Я админю группу по блендеру много лет, и бывает отвечаю на вопросы. Вопросы бывают разные, на какие‑то просто ответить одним словом, фразой или предложением, а на какие‑то просто так не ответишь — нужно писать целую статью.

Вот, к примеру, кто‑то жалуется, у него свечение не сохранилось в png. Или это не свечение а полу‑прозрачный шейдер или огонь. В Blender есть, а в png нет — баг какой‑то. И как тут ответить одним сообщением? Тут и про разные типы альфа‑канала надо рассказать, и почему они нужны и для чего используются, и какие‑то способы проблему обойти нужно дать, потому что теория теорией, а что делать‑то?

Читать далее

AA и AAA: ода временам одноразовых батареек

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

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

Сейчас, в эпоху встроенных аккумуляторов и повсеместной зарядки, это кажется странным. Но именно батарейки AA и AAA были теми самыми расходниками, которые питали портативную свободу.

Читать далее

Сериал «Чёрное зеркало» всё меньше похож на фантастику: странные случаи с ChatGPT и что за ними стоит

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

Пользователи слышат из ChatGPT собственный голос, внезапные крики и плач. Некоторые из этих историй звучат как байки с Reddit, но похожие сбои OpenAI фиксировала ещё во время тестирования голосовых моделей. Я попробовал разобраться, откуда они берутся и почему современный Voice Mode иногда ведёт себя настолько странно.

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

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

Недавно я наткнулся на случай, где эта граница стала ещё менее очевидной. Здесь я бы уже маму не успокоил.

Почему ChatGPT так делает

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

Странные олдскульные технологии, которые так и не взлетели, часть 1

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

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

Читать далее

Кто хочет жить вечно — как я сделал открытую базу данных об отношении к продлению жизни

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

Что общего у Бенджамина Франклина, японских пенсионеров и американских зумеров? Всех их спрашивали о смерти, бессмертии и о том, сколько они хотят прожить. Только данные разбросаны по сотням статей, сайтов, стат. сборников и архивов.

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

Я решил, это исправить. В этой статье я расскажу, как родился проект «Кто хочет жить вечно», почему вопрос бывает важнее ответа и как я собирал со всего интернета материалы, упаковывая их в инфографику на 40 графиков.

Читать далее

ИИ в автотестах 1С: где агент помогает, а где лучше обойтись обычной автоматизацией

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

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

Вводный вебинар предварял стартующий 1 сентября 2026 года курс «Автоматизированное тестирование в 1С». Его провел ведущий разработчик ИТ-лаборатории Инфостарта и автор курса Александр Кунташов. Эксперт показал, как с помощью ИИ и Vanessa Automation пройти путь от исходной инструкции до работающего автотеста, а затем отдельно разобрал вопросы участников о безопасности данных, MCP, сопровождении сценариев и интеграции с CI/CD...

Читать далее

Как защититься от AI-атак и промт-инъекций: мой рецепт барьера

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

Осенью 2025 исследователи показали: достаточно попросить AI-браузер «суммаризируй страницу» на подготовленном сайте — и агент вместо пересказа лезет в Gmail пользователя и отправляет данные атакующему. Без вирусов, без эксплойтов, без «скачайте файл». Просто текст на странице.

Это prompt injection — промт-инъекция. В статье: как устроен этот класс атак на пальцах, хроника громких взломов AI-браузеров за последний год со ссылками на первоисточники, и решение, которое мне собрал сам Claude Code по моему ТЗ: хук-«рубильник», отрубающий чувствительные коннекторы после того, как агент читал внешний веб. С механикой, тестами и честными ограничениями.

Читать далее

Сусанин: как я перестал кормить MikroTik списками доменов и научил искать рабочий маршрут самостоятельно

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

Мне надоело вручную кормить MikroTik списками доменов и IP для выборочной маршрутизации через VPN. CDN меняются, адреса переезжают, TCP и QUIC могут вести себя по-разному — а список приходится постоянно догонять руками.

Так появился «Сусанин»: экспериментальная система, которая не знает заранее, что нужно отправлять в VPN. RouterOS наблюдает за connection tracking, замечает подозрительный сбой DIRECT-соединения, проверяет тот же destination через уже существующий туннель и временно запоминает рабочий путь. TCP и UDP обучаются отдельно, а при падении VPN система делает fail-open обратно в DIRECT.

В статье — архитектура FAST / SOFT / JUDGE / HEALTH, C11 control plane, credentialless bootstrap, транзакционная установка, реальные грабли RouterOS API (!empty / !done), clean install 0/16 → 16/16, reboot-тест, логи и полная инструкция по установке.

Проект пока очень пилотный: ARM64, основная тестовая версия RouterOS 7.23.3. Перед установкой — обязательно backup.

Читать далее

Посадил в Hermes вирус, а затем удалил его. Это не помогло: агент продолжил заражаться сам

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

Я удалил из библиотеки агента навык с вирусом. К этому моменту зараза, которая в нём сидела, уже жила в 10 навыках, написанных самим агентом. После удаления я прогнал ещё 5 задач. Заражённых skill‑ов стало 14.

Это был эксперимент, не инцидент. Закладку я добавил сам, а вместо вредоносной нагрузки в ней была безобидная строка с меткой. Так я проверял свежую атаку EvoMal и вывод меня не порадовал: для агентов, которые пишут себе skill‑ы сами, привычные советы «проверь перед установкой» и «удали опасное» не работают. Расскажу, почему, и покажу весь прогон по шагам.

Читать далее

Защита биткоина от несуществующих квантовых компьютеров

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

В последнее время часто можно услышать про квантовые компьютеры (КК), которые угрожают криптовалютам, в том числе биткоину, и вообще всей современной криптографии.

На самом деле сообщество Bitcoin давно выработало технические решения для данной проблемы. Максимум, что требуется — обычный софтфорк, то есть обновление ПО. Его не проводят лишь потому, что КК стоят в книжном магазине на полке «Научная фантастика», если перефразировать известный анекдот.

Читать далее