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

2 дня офлайна

23–24 мая 10:00–19:30 (UTC+3)

Офлайн: Красный Октябрь, Start Hub, Берсеневская наб., д. 6, стр. 3, Москва, Россия

Онлайн-трансляция

Почему стоит идти

  • Пообщаться вживую

    Повидать старых знакомых. Обсудить актуальные проблемы. Прийти к новым идеям. Подискутировать и просто поболтать.
  • Сменить формат на офлайн

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

Трансляция

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

В программе

  1. 23 мая

    • Смотреть запись

      Тип доклада: Обсуждение

      Открытие офлайн-части конференции C++ Russia 2023

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

    • Смотреть запись

      Тип доклада: Доклад

      C++ трюки из userver

      Антон расскажет о новых C++ трюках и приемах. Вас ожидают: LazyPrvalue; обнаружение ODR violation из C++ кода; FixedArray; самая чудная bimapВ чате конференции С++ Russia уже обсуждался последний трюк с чудной bimap. В докладе подробно рассматриваются как предыстория вопроса, так и итоговые результаты с бенчмарками. Готовый к использованию код из доклада уже можно найти на https://userver.tech/.

    • Смотреть запись

      Тип доклада: Доклад

      Back to Basics: Lock-free

      Марсель расскажет про стандартные способы работы в многопоточной среде (мьютексы, compare and swap, hazard pointer) и алгоритм снятия снапшота двух атомарных «регистров».

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

    • Смотреть запись

      Тип доклада: Доклад

      Максимально быстрый и максимально удобный С++ msgpack-кодек

      Александр расскажет про реализацию msgpack-кодека на C++, которая использует массу возможностей С++, позволяя паковать и распаковывать абсолютно абстрактные типы, в том числе в compile time, без динамической аллокации памяти, zero-copy (или once-copy?) и максимально branchless.

    • Смотреть запись

      Тип доклада: Доклад

      Семантические процессы в C++

      Доклад посвящен описанию взаимодействующих семантических процессов в языке C++, как с точки зрения внутренностей компилятора, так и с точки зрения стандарта языка.

    • Смотреть запись

      Тип доклада: Доклад

      Производство ПО глазами разработчика и менеджера

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

    • Смотреть запись

      Тип доклада: Доклад

      Компилятор LCC и оптимизация слияния кода

      Эльбрус как архитектура сильно отличается от мейнстримовых архитектур процессоров. Как следствие, она требует от компилятора проведения некоторых особенных оптимизаций. Виктор кратко расскажет про особенности Эльбруса и про его особые оптимизации, реализованные в компиляторе LCC. Более подробно он остановится на оптимизации слияния кода: что это такое, зачем нужно и как работает. 

    • Смотреть запись

      Тип доклада: Доклад от партнера

      Прокачиваем LLDB, или LLDB formatters

      Приходилось ли вам разворачивать 100500 вложенных конструкций внутри std::variant после каждого F10? А что, если отлаживаться нужно на Linux, и у вас нет Visual Studio? Как решить некоторые из этих проблем с помощью открытого API отладчика LLDB? Олег предлагает обсудить это в рамках своего TechTalk.

    • Смотреть запись

      Тип доклада: Доклад

      Идея по улучшению многопоточного кода

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

    • Смотреть запись

      Тип доклада: Доклад

      Про flat_map

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

       

    • Смотреть запись

      Тип доклада: Доклад

      Исходный код: скрытое знание и как его показать?

      Доклад посвящен проблеме глубокого анализа семантики программ, представленных в исходных текстах, и наглядного (удобного для восприятия) отображения знания о ее семантике. Предлагается ряд подходов и технологий, направленных на извлечение и визуализацию знаний о семантике программ, в том числе «скрытой семантики», а также общей архитектуре программных систем.

    • Смотреть запись

      Тип доклада: Доклад

      B-tree индексы в базах данных на примере SQLite и PostgreSQL

      Владимир поговорит о работе обычных™ индексов в базах данных и расскажет: как индекс ускоряет поиск; нужно ли индексировать условия where; нужно ли индексировать условия в order by; нужно ли индексировать foreign keys; что делать, если критериев поиска несколько; в каком порядке указывать колонки в индексе; когда индекс замедляет работу и как снизить влияние индекса на приложение.

    • Смотреть запись

      Тип доклада: Доклад

      C++ Experiments: The Battle Continues: Cpp2 vs Carbon

      Несмотря на работу комитета над новыми стандартами языка, похоже, некоторые инварианты не могут быть пересмотрены, и активисты ведут работу в создании своих C++ совместимых языков по этим мотивам. Вы снова окунетесь в дизайн с тем, чтобы попытаться ответить на вопрос: зачем? Что такого нового предлагается и чего может не хватать в С++?

    • Смотреть запись

      Тип доклада: Доклад

      YsonStruct: дешевая сериализация иерархических JSON-структур

      Яндекс представляет библиотеку, позволяющую реализовать сериализуемые в JSON структуры на C++. В своем выступлении Иван расскажет про высокоуровневый дизайн библиотеки; технические трудности в реализации (поведение виртуальных методов, линковка шаблонных классов и т. д.); опыт внедрения библиотеки в большую кодовую базу; попытки сделать хороший интерфейс.

    • Смотреть запись

      Тип доклада: Доклад

      С++ и безопасность: правда ли все так плохо?

      Не так давно Агентство национальной безопасности (NSA) опубликовало гайд, в котором объявило языки С/C++ «опасными» и требующими перехода на «безопасные» C#, Go, Java, Ruby, и Swift. Сергей подробно проанализирует этот документ и расскажет, так ли плохо обстоят дела с безопасностью в С++ на самом деле, и что современная индустрия предлагает для решения этого вопроса.

    • Смотреть запись

      Тип доклада: Доклад

      Эффективное использование GPU на примере разработки игр

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

    • Смотреть запись

      Тип доклада: Доклад

      nocc — распределенный компилятор для гигантских проектов на C++

      Александр расскажет про распределенный компилятор nocc. Это как distcc, только быстрее. И как ccache, только удаленный.

    • Не записывалось

      Тип доклада: Доклад

      Lightning Talks

      Давно хотели попробовать себя в роли спикера? Вам не терпится поделиться с миром идеями или кейсами из рабочей практики? Посмотрели выступления C++ Russia и чувствуете, что можете добавить к докладам что-то свое? Тогда подавайте заявку заранее или записывайтесь на выступление прямо на площадке!

    • Не записывалось

      Тип доклада: BOF-сессия

      Вопросы преподавания языка в вузе

      С чего начинать программирование? С какого языка? Как безболезненно перейти к изучению С++? Что необходимо преподавать, без чего не обойтись?

    • Не записывалось

      Тип доклада: BOF-сессия

      Актуальные проблемы GPGPU-разработки

      Поговорим о современных платформах для GPGPU: CUDA, OpenCL, SYCL, oneAPI и других. Обсудим производителей и тенденции развития видеокарт. Разберемся, какие задачи стоит решать с помощью GPGPU, а какие нет. Поделимся историями из жизни и покажем, что GPGPU разработки не стоит бояться.

  2. 24 мая

    • Смотреть запись

      Тип доклада: Доклад

      GPU Driven Rendering Pipeline, или Как пишется графика в современных видеоиграх

      Рассказ о том, как используется Graphics API в современных движках, а также как pipeline переходит с CPU на GPU.

    • Смотреть запись

      Тип доклада: Доклад

      Как правильно писать компараторы

      В докладе рассматриваются различные ошибки при написании функций сравнения (компараторов) в API типа std::sort: их последствия и средства их обнаружения, предоставляемые современными тулчейнами.

    • Смотреть запись

      Тип доклада: Доклад

      Автоматизация программирования в СССР. Трансляторы (60–70-е годы)

      Продолжение доклада об автоматизации программирования в СССР. На этот раз речь пойдет о советских трансляторах, созданных в 60–70-е годы. Изложение концентрируется на простых и актуальных даже сегодня алгоритмах. Центральная тема доклада — задача распределения регистров. Что общего между разработками советской компиляторной школы и LLVM с SSA, а также с планированием команд для современных процессоров?

    • Смотреть запись

      Тип доклада: Доклад

      Back Deep to Basics: Наследование и виртуальность в C++ (Часть 1)

      Наследование, виртуальные функции, v-таблицы, виртуальное наследование — вещи до боли знакомые каждому C++ разработчику. Эти вещи напрямую влияют на производительность, объем наших бинарных файлов, а иногда на безопасность нашего кода. Так давайте вернемся к началам и разберемся в деталях этой машинерии. Рассмотрим, что есть нового в этой области и как оно работает под капотом.

    • Смотреть запись

      Тип доклада: Доклад

      Dynamic Libraries for Bare Metal

      Все привыкли к динамически загружаемым библиотекам в больших ОС: это экономит размер исполняемого файла и позволяет обновлять только необходимые компоненты. Однако в bare metal-разработке это не так популярно и распространено. Антон расскажет про свой опыт в этой области и обсудит плюсы и минусы такого подхода.

    • Смотреть запись

      Тип доклада: Доклад

      Практика программирования тензорных ядер

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

    • Смотреть запись

      Тип доклада: Доклад

      Что-то у меня тормозит: заглядываем внутрь С++ контейнеров

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

    • Смотреть запись

      Тип доклада: Доклад

      Кастомизируем ASIO

      ASIO позволяет использовать std::future из коробки для работы с асинхронными событиями. А что если хочется использовать свою реализацию future? Илья расскажет и покажет, как это сделать. Заодно он поговорит про кастомизацию уровнем ниже, на примере io_uring.

    • Смотреть запись

      Тип доклада: Доклад

      Опыт использования Bazel

      Евгений поделится опытом использования Bazel на примере двух проектов. В первом проекте он пользовался им как C++/Python-разработчик. Во втором проекте, в Лаборатории Касперского, спикер участвует в команде, которая переводит кодовую базу с CMake на Bazel. Он расскажет о killer features этой системы сборки — ее преимуществах и недостатках.

    • Смотреть запись

      Тип доклада: Доклад

      Модель асинхронности в C++: теория и практика

      В стандарте C++26 планируется к принятию новая модель асинхронных вычислений — std::execution, также известная как Senders/Receivers. Эрнест расскажет о том, какие проблемы и каким образом она призвана решить, а также о том, как новый подход можно испытать на практике в C++17 при помощи библиотеки libunifex.

    • Смотреть запись

      Тип доклада: Доклад

      Безопасный компилятор: надежная оптимизация и улучшение защищенности кода

      Дмитрий рассмотрит примеры кода с различными видами неопределенного поведения, а также неочевидные эффекты от его оптимизации современными версиями GCC и Clang. Он также покажет разработанный ими безопасный компилятор на основе GCC, цель которого — предотвращать некорректные оптимизации кода, содержащего неопределенное поведение. Кроме того, спикер расскажет и про другие методы улучшения безопасности кода, применяемые как в безопасном компиляторе, так и в стандартном GCC, а также их влияние на производительность.

    • Смотреть запись

      Тип доклада: Доклад

      Roren — С++ фреймворк для описания пайплайнов распределенных вычислений

      Огромное количество С++ кода в Яндексе можно описать словами «распределенные вычисления». Доклад посвящен активно разрабатываемому сейчас С++ фреймворку, вдохновленному библиотеками std::ranges и Apache Beam. Этот фреймворк позволяет достаточно компактно и просто описывать такие процессы и запускать их в MapReduce-режиме для обработки таблиц данных или в real-time режиме для обработки бесконечных потоков (очередей) данных.

    • Смотреть запись

      Тип доклада: Доклад

      Sizecoding: взгляд изнутри

      Поговорим о том, что такое sizecoding и в чем его отличия от классического программирования. Разберем несколько алгоритмов конкретных демо-эффектов и их реализацию. Изучим программные трюки, позволяющие уместиться в заданный объем исполняемого кода.

    • Смотреть запись

      Тип доклада: Доклад

      Техники оптимизации производительности

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

    • Смотреть запись

      Тип доклада: Обсуждение

      Закрытие конференции C++ Russia 2023

      Подводим итоги конференции C++ Russia, вспоминаем яркие моменты и рассказываем о дальнейших планах. Заходите в зал или подключайтесь к трансляции, чтобы ничего не пропустить!

  • Дискуссии

    Живое общение со спикерами между выступлениями. Без записи и ограничений по времени.
  • BoF-сессии

    Неформальные беседы без ведущих и спикеров. Здесь и рождаются новые идеи.
  • Круглые столы

    Спикеры и эксперты обсуждают актуальные вопросы индустрии.

Бонус

  • Обеды и кофе-брейки

    Шведский стол и напитки на выбор. Если у вас есть пищевые ограничения, напишите в наш саппорт. Мы найдем решение.
  • Живое общение

    Неформальная обстановка и разговоры по душам. Нетворкинг для всех участников, спикеров и экспертов.

COVID-19

На офлайн-площадке не будет ковидных ограничений. Ни QR-коды, ни ПЦР-тесты для прохода на площадку не нужны.

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

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

  • Как попасть на конференцию?

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

  • А если я уже купил билет на офлайн-часть? Деньги вернут?

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

    Можно подключиться к трансляции и посмотреть все в онлайне. Чтобы вернуть разницу между билетам ONLINE и ONLINE + OFFLINE, напишите в нашу поддержку: support@cppconf.ru.

  • Какие меры безопасности будут приняты на площадке?
    • На площадке будут санитайзеры и одноразовые маски. Если к моменту проведения конференции не будет соответствующего требования, то обязательного масочного режима не будет.
    • На площадке постоянно дежурит квалифицированный медицинский работник.

    Все вопросы и уточнения направляйте по адресу: support@cppconf.ru.

FAQ

  • Где будет проходить офлайн-часть конференции?
    Офлайн-часть пройдет 23–24 мая по адресу: Красный Октябрь, Start Hub: Берсеневская наб., д. 6, стр. 3, Москва, Россия.
  • Когда будет известна программа и время проведения офлайн-части конференции?
    Мы начинаем публиковать программу частями на сайте конференции за месяц до ее начала.
  • Какие активности будет включать в себя офлайн-часть конференции?

    На офлайн-части будут:

    • доклады основной программы;
    • круглые столы;
    • BoF-сессии — встречи по интересам без запланированного расписания;
    • дискуссии со спикерами офлайн-части и спикерами онлайн-дней, которые приедут на площадку.
  • Будет ли онлайн-трансляция офлайн-части конференции?

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

    Дискуссии и BoF-сессии транслироваться и записываться не будут.

  • Я давно не был на офлайне и не помню, какой порядок действий был на офлайн-конференциях.
    Не переживайте, перед мероприятием мы вышлем вам памятку участника — там будет вся необходимая информация.
  • Могу ли я купить билет только на офлайн-часть конференции?
    Чтобы посетить офлайн-часть вам нужно купить билет ONLINE + OFFLINE. Он дает право на участие в офлайн-части конференции и доступ к записям онлайн-дня.
  • Как мне попасть на офлайн-часть, если у меня есть билет ONLINE?
    Если у вас уже есть билет на онлайн-часть конференции, вы можете проапгрейдить его до ONLINE + OFFLINE. Для этого напишите в поддержку: support@cppconf.ru
  • Как попасть на офлайн-часть, если компания оплатила мне только билет ONLINE?
    Если компания, которая оплачивала ваш билет, не готова проапгрейдить его до ONLINE + OFFLINE, то вы можете сделать это самостоятельно со скидкой. Скидка дается за прохождение опроса после окончания онлайн-части конференции.
  • Есть ли ограничения по количеству билетов на офлайн-часть?

    Количество билетов ограничено вместимостью площадки проведения конференции.

    Так что лучше купить билет заранее, пока они в наличии.

  • Есть ли ковидные ограничения для посещения офлайн-конференции?

    На офлайн-площадке не будет ковидных ограничений. Ни QR-коды, ни ПЦР-тесты для прохода на площадку не нужны.

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

  • Что будет с офлайн-частью в случае новой волны COVID-19?

    Пока мы не видим рост заболеваемости COVID-19, поэтому отменяем ковидные ограничения при посещении офлайн-площадок. Теперь вам не нужны ни QR-коды, ни ПЦР-тесты для прохода на площадку. На площадке будут санитайзеры и одноразовые маски. Если к моменту проведения конференции не будет соответствующего требования, то обязательного масочного режима не будет.

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

    Если же ситуация ухудшится, и на законодательном уровне мероприятия будут отменять, мы перенесем офлайн-часть в онлайн. Тогда спикеры будут выступать удаленно или из нашей студии. Для участников с билетом ONLINE ничего не изменится. А участники с билетом ONLINE + OFFLINE смогут конвертировать свой билет в ONLINE с возвратом разницы или перенести его на следующий год. Также можно будет сдать билет и целиком вернуть свои деньги.

    В любом случае мы не будем переносить конференции на следующий год.