Июль в блоге SSP SOFT — месяц обзоров на книги по языкам семейства С. Сегодня рецензия на очень объемную книгу по С++. Качественных книг по Qt на русском языке немного, и тем заметнее новое издание Макса Шлее «Qt 6.9. Профессиональное программирование на C++». В книге тысяча страниц, десять частей, от сигналов и слотов до Qt Quick, мобильной разработки под iOS и отдельной новой части про работу с ИИ-ассистентами. Для студентов и начинающих разработчиков (джунов), выбирающих между C++ и C#, или уже пишущих на C++, эта книга — редкий по охвату вход сразу в Qt и в саму индустрию кросс-платформенной разработки.
Читать далееЯ запустил FamSpace - семейный органайзер с задачами, бюджетом и списками. Спустя месяцы работы над проектом я узнал почему пользователи не задержмваются и бросают приложение спустя пару недель. Воронка показала, где мы теряли людей: не на регистрации, а в момент, когда продукт должен был стать общим.
Читать далееКогда в мае 1978 года Гэри Туерк, маркетолог из Digital Equipment Corporation, отправил 400 сотрудникам ARPANET приглашение на презентацию компьютеров DECSYSTEM-20, он не знал, что станет отцом целой индустрии email-маркетинга ненависти к спаму.
Несмотря на это, эра спама началась не с Туерка, а с инженерного решения Эрика Оллмана, который пытался соединить три несовместимые сети в одну универсальную систему доставки почты. Под катом расскажу о том, почему sendmail привёл к эпидемии спама и какие механизмы защиты работают в почте сейчас.
ЧитатьВсем привет! На связи Владимир Аксёнов, руководитель группы IT‑поддержки дата‑центра в Yandex Infrastructure. На Хабре я уже рассказывал об эволюции IT‑оборудования в дата‑центрах Яндекса, показывал наши собственные стоечные решения и делился опытом, как мы тестируем комплектующие для стоек. Но история с сосисками в дата‑центре — не единственная интересная инженерная задача, были ещё и яблоки!
А под яблоками я имею в виду оборудование Apple, поскольку нашим внутренним пользователям‑разработчикам регулярно необходима среда для тестирования приложений под целевые платформы. И если под Windows, Android и Linux создать такую песочницу нетрудно, то с iOS и MacOS сложность в том, что необходимое оборудование Apple не выпускается в виде серверных решений для дата‑центров.
В этой статье я расскажу, как мы адаптировали обычные Apple Mac mini для установки в серверные стойки под внутренние песочницы. А также покажу, почему для этого нам потребовалось напрячь двух производителей комплектующих и удостовериться, что даже в условиях «сауны» горячего коридора ни одно устройство не превратится в печёное яблоко.
Читать далееПризнаю: в прошлой статье про тестирование Caveman я в конце написал, что такие инструменты, как RTK, действительно, могут помочь сэкономить токены. Я доверял самому принципу возможности экономии токенов, но не доверял конкретным цифрам эффективности, которые заявляет Headroom. Был уверен, что, садясь за тесты, скорее всего, увижу, не 60–95% экономии токенов, а типа 10% — или что-то такое. Но результат меня удивил в худшую сторону. Итак, тестируем Headroom вместе:
Читать далееХочу показать два продукта, которые уже давно сделал и продолжаю доработки. Первый - это агрегатор новостей, второй - это поиск медицинского диагноза по симптомам.
Начну со второго, то есть медицинской экспертной системы. Выбрана простая схема работы - отдаём данные в виде "человеческого" текста описания симптомов и модель возвращает предполагаемый диагноз и вероятностное распределение диагноза. Что бы было понятно, пример вот тут https://moscowi.ru/med\_diagnoz . На сайте выложена довольно старая модель, тогда я оценивал её возможности в 0,5 - 1% от полной модели, сейчас примерно одна двести пятидесятая. Модели я делаю сам.
Всё это переросло с классификатора дефектов металлургии, только там всего четыре десятка дефектов и у меня постоянно был вопрос - не получил ли я правильный ответ случайно. Я не считаю, что каждый 45_й ответ я получал как правильный только по причине совпадения, но сомнения при подборе моделей были.
Вот тут и перешёл на медицину - на сегодняшний момент даже в адаптированной версии мкб-10 больше 12 тысяч болезней и подходы в классификации можно отработать гораздо точнее. Отработав такую модель, я решу и вопросы металлургии. Так это начиналось, после не стал забрасывать, постоянно возвращаюсь для улучшения.
В общем то несмотря на разные отрасли, я столкнулся с теми же проблемами. Если кратко - не использование профессиональной лексики. Пациенты не знают профессиональных терминов, у них свои слова, выражения и описания. Вторая крупная проблема - много болезней описываются довольно общими симптомами - боль, температура, жжение, озноб, отёк, покраснение. посинение и тому подобное. Я собрал около двух тысяч симптомов болезней, попробовал описывать болезни только симптомами - рабочий вариант, хотя наверное это только для профессионалов.
Читать далееНагрузка в кластере растёт, PV распухают, IaC-инструменты перестают справляться. В какой-то момент всё начинает тормозить так, что уже мешает нормально работать.
Команда Cloudflare столкнулась с такой ситуацией и нашла решение — изменить одну маленькую дефолтную настройку в Kubernetes.
В статье — шаги по аудиту кластера и изменению настроек. Особенно пригодится тем, у кого есть кластеры с крупными PV.
Читать далееК концу 19 века эта любопытная штуковина стала постепенно наводнять собой Америку. От злачненьких салунов и пабов до вполне себе фешенебельных гостиных с тяжелыми портьерами и резной дубовой мебелью блистала оно — самоиграющее пианино, настоящая звезда, зажигавшаяся с приходом вечера. И его появление стало настоящим откровением для всего мира.
Читать далееЭто не медицинская статья и не руководство по диагностике. Это дневник разработчика, который разбирался в себе, чтобы эффективнее работать и не выгорать. Если вы узнали себя — значит, мы коллеги не только по профессии, но и по типу мышления.
Читать далееВ этой статье я покажу способы, как находить темы, на которые уже есть спрос: через телеграм-каналы, поисковые запросы, комментарии, отзывы и контент ваших конкурентов.
Обычный чат-бот вроде ChatGPT, Gemini или Claude быстро разберет данные и выдаст идеи, которые могут зайти вашей аудитории.
Читать далее
В большинстве устройств для промышленной или домашней автоматизации требуется измерить какую-либо физическую величину, например, температуру, влажность, освещенность, давление, уровень воды и др. Для этого используют соответствующий сенсор, подключают его к микроконтроллеру и с помощью АЦП преобразуют в цифровое значение. Но сырые цифры из АЦП микроконтроллера — это ещё не температура, не давление и не влажность. Нужно их пересчитать. И тут начинается самое интересное: где взять коэффициенты для функции? Вручную подбирать? Гадать? Самый распространённый способ — это рассчитать коэффициенты для линейной функции. Но как правильно рассчитать её коэффициенты, чтобы ошибка была минимальной? Разбираем теорию, типы графиков датчиков, расчёты и готовый код.
Вперёд, к свету разумаПривет, Хабр! Меня зовут Аркадий Озеров, менеджер в ИТ-команде Россельхозбанка, и я продолжаю делится историей роста своей команды. Мы выросли с 7 до 25 человек, а я продолжал управлять так же, как раньше. И это превратилось в проблему. Как не утонуть в хаосе при росте команды в 4 раза?
Читать далееВ начале 2025 года Volexity опубликовала две статьи, в которых подробно описала новую тенденцию среди российских субъектов угроз: для получения доступа к учётным записям пользователей Microsoft злоумышленники атаковали организации, злоупотребляя сценариями Microsoft 365 OAuth и аутентификации по коду устройства (Device Code). Несмотря на публичное раскрытие этой активности, Volexity продолжает наблюдать, как российские субъекты угроз применяют схожие техники для интенсивных атак как на среды Microsoft, так и на среды Google.
Сами техники остаются похожими, однако меняются способы и легенды, с помощью которых злоумышленники выбирают цели и воздействуют на пользователей методами социальной инженерии.
В этой статье Volexity рассматривает две новые кампании, в которых злоумышленники использовали сценарии OAuth и Device Code для фишинга данных доступа конечных пользователей. В рамках атак создавались поддельные сайты, маскировавшиеся под реальные международные мероприятия по вопросам безопасности, проходившие в Европе. Цель состояла в том, чтобы убедить зарегистрировавшихся участников предоставить несанкционированный доступ к своим учётным записям. В кампаниях, которые наблюдала Volexity, использовались следующие реальные мероприятия:
Читать далееБлин, вот зарекался в свое время комментировать публикации в копроративных блогах, но размещенный не так давно материал с кликбейтным заголовком "Жизнь вне цивилизации" поджег моё обывательское седалище. Чтобы оное потушить, решил оформить несколько старых заметок в эту статью.
Смотреть, что автор там награфоманилGPU-версия ByteTrack, где математика всех камер считается общими батчами: один вызов на все потоки вместо трекера-на-камеру. На 16 потоках это ускоряет трекинг в 6 раз (104 → 17 мс/кадр на RTX 4090). А за первой, «наивной» версией пряталось всего 1.2x — почему, показали три антипаттерна PyTorch, на которых легко застрять и вне трекинга: GPU-вызовы в цикле, заливка кадров на 1.6 ГБ/с вместо 25, и FP16, который тихо съедал по 300 мс на кадре. Все цифры воспроизводимы, есть сравнение с NVIDIA DeepStream и открытый код.
Читать далееПриложение было живо. Health check зелёный, CPU холодный, логи чистые. Но ни один запрос не возвращался.
Детективная история о том, как пять соединений с базой держат в заложниках весь production. В деле: connection leak из легаси-отчёта, @Transactional, который вышел покурить вместе с чужим API, аннотация с фальшивым алиби, дуэль двух транзакций, REQUIRES_NEW с двойной бронью столиков — и один дворецкий, которого никто не подозревал, потому что его нанял сам фреймворк.
Каждое преступление воспроизводится одной командой: демо-проект с Docker, Prometheus и Grafana прилагается.
Открыть делоЦифровая идентификация и её значение для веба в последние годы стали темой горячих обсуждений. Они привнесли с собой множество спорных моментов: законы о проверке возраста и их влияние на онлайн-анонимность; Википедия потенциально будет вынуждена верифицировать в Великобритании личность пользователей; привязка к официальным операционным системам iOS и Android стала обязательным форм-фактором для кошельков цифровой идентификации; кроме того, стоит упомянуть ситуацию, когда американские цифровые аккаунты были закрыты потому, что их пользователь был судьёй Международного уголовного суда.
В своей истории я расскажу о швейцарской правительственной системе идентификации AGOV. Этот развёрнутый в 2024 году сервис сегодня насчитывает 1,6 миллиона аккаунтов и становится всё более необходимым: через него можно получать пособие по безработице, предоставлять налоговую декларацию (а это обязательное действие!) и выполнять множество других операций. В кантоне Цюрих это единственная возможность подачи заявления на гражданство.
В конечном итоге, я был вынужден создать аккаунт AGOV. К сожалению, его регистрация была довольно сложной задачей, пока я не нашёл причины странного бага accessibility. Вдохновившись статьёй «Просто дайте мне выделить текст», хочу представить вашему вниманию «Просто дайте мне ввести цифры».
Читать далее“У нас внедрен сканер, значит, есть процесс” - нет. Инструмент это еще не процесс. Разбираем, из чего на самом деле состоит управление уязвимостями, почему оно держится на связке ИБ-ИТ-бизнес и какие четыре грабли встречаются чаще всего. Плюс честно про то, отменяет ли безопасная разработка патчинг (не отменяет).
Читать далееНИОКР — это тот тип проектов, где в начале пути не всегда есть готовый ответ на вопрос: «Как именно получить нужный результат?».
Сначала нужно проверить техническую возможность, исследовать варианты решения и подтвердить выбранный подход. Проблема в том, что бизнес обычно ждет понятный результат: изделие, технологию, прототип, экономический эффект, патент, новую линейку продукции. А научная или инженерная команда работает в зоне неопределенности: проверяет теории, меняет подходы, уточняет требования, сталкивается с техническими ограничениями. Отсюда рождается вечный конфликт: одни хотят управляемости, сроков и бюджета, другие — времени на исследование и право на отрицательный результат.
Хорошая новость в том, что НИОКР можно управлять. Плохая — если управлять ими, как обычным проектом «сделали план — раздали задачи — закрыли этапы», можно быстро получить красивую диаграмму Ганта, которая не имеет отношения к реальности.
Разберемся, что такое НИОКР, какие этапы проходят такие проекты, какие роли в них участвуют, какие стандарты применяются и для чего здесь нужны информационные системы управления проектами.
Читать далееClaude Code, Codex, Gemini CLI — мощные штуки. Но живут они в терминале: вы открываете окно, печатаете задачу, смотрите, как агент думает, лезет в файлы, гоняет тесты. Для человека — отлично. А теперь представьте, что в это кресло перед терминалом нужно посадить не человека, а вашу программу: чтобы она сама ставила агенту задачу, видела каждый его шаг и могла остановить опасное действие до того, как оно случится.
Вот тут и начинается ACP — протокол, который позволяет любому коду управлять CLI-агентом.
Смотреть, кто за рулём