Habr.com

Syndicate content Хабр
Все публикации подряд на Хабре
Updated: 1 hour 45 sec ago

Форматируем строку по-человечески: C++ и его <format>

7 hours 25 sec ago

Когда-то давным-давно (то есть до C++20) мы форматировали вывод либо по-старинке через printf, либо используя громоздкие стримы ввода-вывода из <iostream>. Оба подхода, мягко говоря, не очень. printf работал шустро и лаконично, но требовал строгого соответствия типов, забудешь правильный %d или %s в формате, и получишь неопределённое поведение вплоть до падения программы. Компиляторы иногда предупреждают о несоответствиях, но полностью проблему не решают (особенно если форматируемая строка не литерал). Кроме того, printf не умеет выводить пользовательские классы, только примитивы.

Сейчас ситуация изменилась. В C++20 завезли библиотеку <format>, современный подход к форматированию строк, сочетающий лаконичность printf с безопасностью iostream. Инструмент называется std::format и объявлен в заголовке <format>. По сути, это адаптация популярной библиотеки fmt.

Читать далее

Книга: «Solutions architect: Архитектура и проектирование ИТ-решений. 3-е изд.»

7 hours 5 min ago

Привет, Хаброжители! Овладейте искусством дизайна архитектур и станьте успешным архитектором решений. Книга, написанная опытными техлидами AWS Саурабхом Шриваставой и Ниланджали Шривастав, выходит за рамки традиционных руководств для подготовки к сертификации. В ней вы найдете подробную аналитику и описания передовых методов, предназначенных для удовлетворения конкретных потребностей клиентов и решения проблем, с которыми сталкиваются современные архитекторы решений.

Читать далее

Почему LLM не становятся субъектами

7 hours 10 min ago

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

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

Прочитать статью

Хакеры начинают фишинг и выигрывают у Google

7 hours 25 min ago

У мошенников нет ничего святого! Хакеры взялись за Google: подделка подписей теперь не обязательна, ведь можно заставить Google подписывать фишинговые письма валидным DKIM самостоятельно. Если раньше опытный ИБ-специалист мог сходу разобраться, где фишинговое письмо, а где — нет, сейчас это сделать в разы сложнее. И дело вовсе не в популярных нейронках, изощренном социальном инжиниринге или слитых базах.

Несем вам горячий кейс о том, как мошенники научились злоупотреблять настройкой OAuth-приложений, используя официальные инструменты Google для отправки поддельных писем от no-reply@accounts.google.com.

Спойлер: хотя Google уже устранил возможность вставлять произвольный текст в название OAuth-приложений, сама техника повторного использования легитимной DKIM-подписи никуда не делась. На её основе по-прежнему можно реализовать сценарии, позволяющие обходить DKIM-аутентификацию.

Читать далее

Транзакции в InnoDB: разбираемся с уровнями изоляции и блокировками

7 hours 25 min ago

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

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

Читать далее

Этот CSS пора оставить в прошлом

7 hours 29 min ago

Привет, Хабр!

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

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

Давайте посмотрим, что у меня получилось.

Читать далее

Когда Seq Scan не миновать: Data Skipping в новом колоночном движке Tarantool

7 hours 30 min ago

Привет, Хабр! Меня зовут Андрей Саранчин, и я разработчик СУБД Tarantool в VK Tech. Вот уже полтора года мы строим MemCS — новый колоночный движок Tarantool для HTAP. И вот парадокс: даже с индексами иногда не уйти от сплошного прохода таблицы. Поделюсь, почему мы не смогли миновать Sequential Scan и как мы смягчили эту проблему с помощью Data Skipping.

Эта статья написана по мотивам доклада для Saint HighLoad++ и отражает одну из проблем, которую мы затрагивали в этом докладе.

Читать далее

3D-таймлайн-слайдер под React

7 hours 40 min ago

Продолжение истории с 3D-таймлайном. Я допилил исходный слайдер из прошлой статьи, завёл его под React, добавил форму для настройки параметров в реальном времени и показываю, как встроить всё это в проект одной строкой.

Читать далее

5 промтов, которые сэкономили мне часы рутинной работы тестировщика

7 hours 46 min ago

Всем привет! Я Катя, QA Tech Lead в MD Audit.

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

Список не про генерацию тест-кейсов или чек-листов — про это уже написаны километры текстов.

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

Читать далее

Мини-обзор Amazon Kindle Colorsoft Signature Edition + сравнение с PocketBook 700 Era Color

7 hours 58 min ago

 Приветствую всех!

Сегодня я расскажу об электронной книге Amazon Kindle Colorsoft Signature Edition. С устройством я провел около недели, и успел накопить впечатления. На последние пару дней я взял в пару к Kindle еще и PocketBook 700 Era Color– чтобы понять, какое из этих устройств предпочтительнее и для кого.

Читать далее

AMD и NVIDIA повышают цены на свои видеокарты. Что происходит?

7 hours 59 min ago

Кажется, что такого удачного времени для покупки комплектующих не было уже давно. Курс доллара уже давно держится на приемлемом уровне, майнеры подуспокоились, спрос на GPU подупал, а цены на Radeon RX 9070 XT ушли ниже исторических минимумов. Но тут прилетело откуда не ждали.

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

Читать далее

Advent of Artificial Code

8 hours 2 min ago

Надвигается очередной конец очередного года, в связи с чем люди неравнодушные к своей работе — наверняка собираются принимать участие в состязаниях «Advent of Code» в своих стеках. За последние несколько месяцев существенно ожесточились споры на предмет вайбкодинга (даже термин ублюдский придумали). Мне пришла в голову тривиальная мысль: а что, если вовлечь в соревнование ваших любимых стажё^W искусственных помощников?

Я лично собираюсь решать AoC по старинке, но при этом оставляю право AI посостязаться со мной в этом соревновании и даже обойти меня в нем. В комментариях к этому тексту я предлагаю публиковать решения, выполненные лично вами, или вашими раба^W помощниками, на всех возможных языках программирования. В англоязычном интернете — полно форумов, на которых люди делятся решениями и обсуждают их; хабр (ну, как минимум тот, про который мы иногда вспоминаем в кондитерском смысле) — идеальное место для подобных обсуждений на русском языке.

Как это было в AoC 2024

Защитные конструкции от попадания БПЛА: практические вопросы и инженерные решения

8 hours 6 min ago

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

Читать далее

Почему нужно работать над монетизацией, а не над фичами

8 hours 13 min ago

Мы с командой  LBX Биллинга  проводим много  касдевов с основателями SaaS сервисов с различными моделями монетизации. 

Удивительно, насколько часто даже в зрелых продуктах не было чёткого понимания: «Как именно мы зарабатываем?». Все говорили о том, что «продают подписку», а о деталях никто не задумывался.

Поэтому в данной статье я расскажу, почему же так важно позаботиться о стратегии монетизации своего продукта и выстроить полноценную систему⬇️

Читать далее

[Перевод] Почему так сложно сделать хорошую фотографию Луны на смартфон?

8 hours 21 min ago

Прекрасная ясная ночь. Звёзды сияют, а Луна выглядит потрясающе на фоне неба, поэтому вы берёте телефон, чтобы сделать снимок. Результаты, честно говоря, разочаровывают.

Попробуйте ещё раз. Успокойте руки, сфокусируйтесь на Луне, сделайте фотографию и... это снова неудачное белое пятно на тёмном фоне. Вряд ли это достойно вашего блога.

Телефоны часто делают отличные фотографии, но почему они не справляются с Луной? Частично это связано с тем, что мы фотографируем, и частично — с технологией камеры телефона.

Читать далее

Взламываем Аэродромный Метеоиндикатор

8 hours 24 min ago

Я питаю двоякие чувства к метеостанциям. Терпеть не могу многочисленные Arduino-проекты с мелким экраном, зато люблю что-то эдакое. Например в коридоре уже пять лет как висит метеоиндикатор на базе блинкерного табло для автобуса, что случайно попалось на просторах авито. Так вышло и на этот раз, и в моем распоряжении оказался аэродромный индикатор погоды Комплексной Радиотехнической Аэродромной Метеорологической Станции.

Читать далее

МТС DevTools Stack: как мы собрали внутренний Q&amp;A-портал на Discourse

8 hours 29 min ago

Привет, Хабр! Уверен, у вас тоже такое бывало: сидишь в проде, сервис падает, а нужного ответа нет ни в Confluence, ни в старых чатах. В итоге бесконечный скролл в «телеге», повторы вопросов в почте и потерянные часы на поиски того, что кто-то уже когда-то решал. Мы уперлись в эту проблему лбом и поняли, что нам нужен инструмент, который аккумулирует знания и делает доступными. 

Меня зовут Денис Селков, я техлид разработки внутреннего Q&A‑портал МТС DevTools Stack. С помощью этого продукта мы упорядочили накопление знаний, и в этом материале я покажу, что дает такая относительно простая механика и как ее можно прокачать с помощью ИИ-инструментов. 

Читать далее

Почему ваш кастомный emoji будет ломать TextField (и как это починить)

8 hours 30 min ago

Разрабатывая приложение под Android — мы встроили в продукт свой мессенджер и решили, что стандартные андроидные смайлики — это преступление против дизайна. Telegram и другие популярные мессенджеры давно показали, как должны выглядеть эмоции в чате, а Google всё ещё живёт в 2015-м с Noto Color Emoji.
Хотели просто подменить парочку

Почему ваш сайт ломается, когда его трогают пальцем

8 hours 30 min ago

В жизни каждого фронтендера наступает момент, когда приходится перейти от родного привычного десктопа на разработку мобильной версии веб-приложения или даже начать работать над mobile-first решением, или еще страшнее — PWA-приложением.

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

Привет! На связи Полина, фронтенд-разработчик в Selectel. Раньше я тоже думала, что адаптив в десктопном браузере абсолютно такой же, как на телефонах. Да и вообще мобильный браузер — это просто браузер поменьше (спойлер — нет). В этой статье я расскажу об их различиях, что с этим делать, как прокинуть localhost на реальный телефон и получить DevTools от браузера в смартфоне, чтобы ловить поменьше багов на проде.

Читать далее

ИИ-агенты на рынке недвижимости: эволюция

8 hours 30 min ago

Всем привет! Меня зовут Алина, и на связи снова компания Домклик. Сегодня я хочу рассказать про очень горячую тему этого года, а именно про разработку ИИ-агентов. Недавно выступила с докладом на конференции HighLoad++ 2025. Я думаю, что всем будет интересно узнать, как мы провели это лето, делая ИИ-агентов для рынка недвижимости. Несмотря на уже существовавшие Transformer-модели, массового ажиотажа вокруг агентов тогда не было, однако в этом году ситуация кардинально изменилась.

Читать далее

Who's online

There are currently 1 user and 1 guest online.