Начало основного контента

Доклады

  • День 1

    RU

    В последние годы практически во всех языках программирования набирают популярность асинхронные движки с корутинами. Давайте взглянем, как эти движки устроены и что в них хорошего для I/O-bound-приложений.

    • #корутины
    • #userver
  • День 4

    EN

    GDB is more powerful than you probably think. Lots of short and simple examples demonstrating the more advanced features of GDB, Once you know about them you'll be able to debug more productively.

    • #debugging
    • #GDB
    • #tips&tricks
  • День 3

    RU

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

    • #GCC
    • #linux
    • #datarace
    • #clang
    • #tooling
    • #multithreading
  • День 2

    RU

    Profile-guided optimization — довольно мощная техника, которая позволяет улучшить производительность приложения. В данном докладе мы разберемся, как эта техника устроена, как ее можно настроить, и как получить максимум пользы от ее использования.

    • #LLVM
    • #performance
    • #optimisation
    • #tooling
  • День 3

    RU

    Разбираем, что полезного несут в себе рекомендации по созданию отказоустойчивого, надежного, «безбажного» ПО из стандарта ISO26262, а также когда и почему им не стоит следовать.

    • #безопасность
    • #functionalsafety
    • #architecture
    • #метрики
    • #metrics
  • День 2

    RU

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

    • #STL
    • #performance
    • #LLC
    • #SoA
    • #cache
    • #AoS
  • День 4

    RU

    Александр представит обзор двух популярных кросс-платформенных пакетных менеджеров для C++, рассмотрит различия в походах, возможности интеграции, добавления своих библиотек.

    • #Conan
    • #dependency
    • #package_management
  • День 1

    RU

    Александр затронет такие вопросы:

    • Передача больших объектов через границу языков.
    • Нативные типы — друг или враг?
    • RPC как способ манипуляции большими данными.
    • #dbms
    • #node
    • #python
    • #js
    • #performance
    • #embedded
    • #lua
  • День 2

    RU

    В ходе доклада попытаемся разобраться, что не так с assert, изучим, что такое контрактное программирование и как выглядит «правильная» программа, взглянем на не дошедшие до C++20 контракты, а также поговорим о том, как быть, если хотим контракты уже сейчас.

    • #not_only_asserts
  • День 3

    EN

    WebAssembly has become a very popular target platform for C++ developers. However, emscripten does not provide type-safe wrappers to the standard JavaScript APIs. Open source tool "typescripten" has been built on top of three powerful technologies to close this gap, but it easy to say than do, as usually. Sebastian will discuss the challenges we faced and the choices we made when designing this framework.

    • #code_generation
    • #emscripten
    • #typescript
  • День 4

    RU

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

    • #rest
    • #templates
    • #type_erasure
  • День 4

    RU

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

    В рамках эфира из главной студии одно из таких собеседований проведет Александр Гранин. Он будет рассматривать кандидата Павла Филонова из ПК на позицию C++ разработчика по направлению работы с архитектурой.

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

  • День 4

    EN

    What is Software Quality, and how do we improve it? We look at a set of related principles and practices that help us get there, and along the way define what Quality actually is.

    • #quality
    • #testing
    • #code_analysis
    • #error_handling
  • День 4

    RU

    ТЕМАТИЧЕСКАЯ ДИСКУССИЯ НЕ ЗАПИСЫВАЕТСЯ

    Если вы думаете, что знаете все способы прострела ноги в C++, то возможно ошибаетесь. Спикеры приглашают вас на экскурсию по скользким тропинкам вашего любимого языка программирования. Вас ожидают спрятанные грабли, заряженные ружья и ямы, заполненные UB. Запасайтесь попкорном!

    • #partner
    • #smoking_room
  • День 4

    RU

    ТЕМАТИЧЕСКАЯ ДИСКУССИЯ НЕ ЗАПИСЫВАЕТСЯ

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

    • #smoking_room
  • День 4

    RU

    Техническое интервью — сложная штука сама по себе, и не все представляют, как оно проходит. А когда интервью имеет узкую направленность, то тем более.

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

  • День 4

    RU

    Доклад посвящен разбору одной часто встречающейся на практике проблемы — выносу тяжелой операции с UI-потока. Еще одна нетривиальная часть работы с фоновыми операциями — реализация отмены. Мы поочередно рассмотрим, как это все можно написать, с тремя основными механизмами асинхронного программирования.

    • #concurrency
    • #asynchronous_programming
    • #future
    • #coroutines
  • День 4

    RU

    В докладе приведены: примеры кода на С++ с обозначенными уязвимостями; полезные практики для их сокращения; а также архитектурный подход "Secure By Design", используемый в KasperskyOS для митигации последствий.

    • #DevSecOps
    • #sast
    • #безопасность
  • День 3

    RU

    Спикер рассмотрит применение Lua-скриптов для реализации типичных паттернов и решения типичных задач в области IoT. Использование скриптов позволяет повысить гибкость системы, легко адаптировать ее под нужды конкретного заказчика, избежать многократного переписывания исходного кода при изменении требований к проекту. Применение Lua-скриптов рассматривается на примере простого демонстрационного приложения, разработанного на MFC для MS Windows. Приложение позволяет модифицировать скрипты «на лету» и изучать, как это скажется на логике работы системы.

    • #partner
    • #techtalk
  • День 3

    RU

    ТЕМАТИЧЕСКАЯ ДИСКУССИЯ НЕ ЗАПИСЫВАЕТСЯ

    Тревожность — младшая сестра страха. Что это: механизм эволюции, сохранивший наш биологический вид, или тормоз развития нашей карьеры? Как определить грань, которая отделяет пользу от вреда, как научиться контролировать нежелательные последствия тревожности для развития? В своем выступлении Олег расскажет, как выявлять причины, и продемонстрирует простую и действенную технику управления собственной тревожностью.

    • #smoking_room
  • День 3

    RU

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

    • #partner
    • #techtalk
  • День 3

    RU

    На C++ пишут в очень разных сферах — с разными требованиями, особенностями, сложностями. И если вы не причастны к базам данных, то можете иметь довольно смутное представление о том, чем работа разработчиков там отличается от вашей. Может быть, стоит бросить всё и перейти туда? Или наоборот, это совершенно не ваше, да и вообще плюсам в этой сфере осталось недолго?

    Помочь разобраться в этом могут опытные люди. Поэтому поговорим об особенностях этой сферы с теми, кто провёл в ней не один год: с Константином Осиповым, Алексеем Миловидовым и Андреем Аксеновым. А провести эту беседу поможет Павел Филонов.

    • Павел Филонов
    • Алексей Миловидов
    • Константин Осипов
    • Андрей Аксенов
  • День 3

    RU

    Доклад знакомит слушателей с концепциями, разнообразием и архитектурными особенностями встраиваемых систем и рассматривает специфику использования С++ для разработки встраиваемого ПО.

    • #Embedded
    • #Microcontrollers
  • День 3

    RU

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

  • День 2

    RU

    ТЕМАТИЧЕСКАЯ ДИСКУССИЯ НЕ ЗАПИСЫВАЕТСЯ

    Михаил покажет, как добавить собственные проверки в clang-tidy и начать автоматически рефакторить свою кодовую базу. Проведет небольшую экскурсию в экосистему LLVM и объяснит, как искать паттерны в AST и как использовать это для автоматизации рутины и мини-рефакторинга. Частично затронет тему libtooling, clang-query.

    Заходите поговорить о ручном и автоматическом рефакторинге и попробовать что-то новое.

    • #рефакторинг
    • #llvm
    • #smoking_room
  • День 2

    RU

    Максим расскажет, как он и его коллеги делали JIT-компиляцию запросов и операции GROUP BY в ClickHouse.

    • #dbms
    • #субд
    • #clickhouse
    • #jit
    • #llvm
    • #aggregate_functions
  • День 2

    RU

    ТЕМАТИЧЕСКАЯ ДИСКУССИЯ НЕ ЗАПИСЫВАЕТСЯ

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

    • #partner
    • #smoking_room
  • День 2

    RU

    На C++ пишут в очень разных сферах — с разными требованиями, особенностями, сложностями. И если вы не причастны к HFT, то можете иметь довольно смутное представление о том, чем работа разработчиков там отличается от вашей. Может быть, стоит бросить всё и перейти туда? Или наоборот, это совершенно не ваше, да и вообще «плюсам» в этой сфере осталось недолго?

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

    • Павел Филонов
    • Олег Фатхиев
    • Михаил Матросов
    • Артём Верхоглядов
  • День 2

    RU

    Представьте, что вы решили в первый раз попробовать инструмент статического анализа. Запускаете анализ и получаете сотни или тысячи предупреждений. Среди них, конечно, будут и ложные срабатывания. Увы, но статический анализ без них невозможен. В итоге впечатление об инструменте будет зависеть от того, какие предупреждения вы посмотрите первыми.

    Команда Николая подумала над этим и решила сделать механизм Intelligence Diagnostic Filter, который позволяет смотреть лучшие срабатывания. В этом докладе увидим его конкретную реализацию в плагине для Visual Studio 2022.

    • #partner
    • #techtalk
  • День 2

    RU

    На C++ пишут в очень разных сферах — с разными требованиями, особенностями, сложностями. И если вы не причастны к GameDev, то можете иметь довольно смутное представление о том, чем работа разработчиков там отличается от вашей. Может быть, стоит бросить всё и перейти туда? Или наоборот, это совершенно не ваше, да и вообще «плюсам» в этой сфере осталось недолго?

    Разобраться в этом помогут опытные люди. Поэтому на конференции поговорим об особенностях этой сферы с теми, кто провёл в ней не один год: Кириллом Шабординым, Владимиром Атамановым и Андреем Аксеновым. А провести эту беседу поможет Александр Пирогов.

    • Александр Пирогов
    • Андрей Аксенов
    • Кирилл Шабордин
    • Владимир Атаманов
  • День 2

    RU

    Олег расскажет, как команда считала проходимость магазинов и пропускную способность перекрестков с помощью даркнета и YOLO9k; как оптимизировала модуль матчмейкера в криптобирже и почему C++ остается хорошим выбором.

    • #Go
    • #Python
    • #yolo9k
    • #hft
    • #opencv
  • День 2

    RU

    Seastar — это кооперативная среда выполнения ScyllaDB. С этого года она первой начала использовать корутины C++20 для системного ПО производственного уровня. В этом докладе спикер расскажет об использовании корутин в Seastar, подводных камнях компилятора и стандартов, а также о преимуществах корутин перед программированием на основе функций.

    • #seastar
    • #корутины
    • #coroutine
    • #сопрограммы
    • #scylladb
    • #cpp20
  • День 1

    RU

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

    • #partner
    • #techtalk
  • День 1

    RU

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

  • День 1

    RU

    На C++ пишут в очень разных сферах — с разными требованиями, особенностями, сложностями. И если вы не причастны к компиляторам, то можете иметь довольно смутное представление о том, чем работа разработчиков там отличается от вашей. Может быть, стоит бросить всё и перейти туда? Или наоборот, это совершенно не ваше, да и вообще «плюсам» в этой сфере осталось недолго?

    Помочь разобраться здесь могут опытные люди. Поговорим об особенностях этой сферы с теми, кто провёл в ней не один год: с Евгением Зуевым и Павлом Косовым. А провести эту беседу поможет Алексей Веселовский.

    • Алексей Веселовский
    • Евгений Зуев
    • Павел Косов
  • День 1

    RU

    На C++ пишут в очень разных сферах — с разными требованиями, особенностями, сложностями. И если вы не причастны к Embedded, то можете иметь довольно смутное представление о том, чем работа разработчиков там отличается от вашей. Может быть, стоит бросить всё и перейти туда? Или наоборот, это совершенно не ваше, да и вообще «плюсам» в этой сфере осталось недолго?

    Разобраться в этом помогут опытные люди. Поэтому на конференции поговорим об особенностях этой сферы с теми, кто провёл в ней не один год: Владимиром Вишневским и Игнатом Ворошиловым. А провести эту беседу поможет Кирилл Тихонов.

    • Кирилл Тихонов
    • Владимир Вишневский
    • Игнат Ворошилов
  • День 1

    RU

    Редко попадаются программы, в которых бы не понадобилась работа со строками. Если не ограничиваться латиницей ASCII, придется иметь дело с локалями и национальными алфавитами. Денис с удовольствием покопался в исходниках рантайм-библиотек и обнаружил множество нюансов, о которых хотел бы рассказать. Рассмотрим, что предлагает современный C++ для хранения, сравнения и обработки Unicode-строк. Насколько эти операции производительны и какие предположения могут оказаться неверными?

    • #partner
    • #techtalk