Конференция C++ Russia
Санкт-Петербург
19-21 апреля 2018

27
лучших докладчиков
1250
минут информации
для опытных
разработчиков

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

Место проведения: Санкт-Петербург, ул. Кораблестроителей, 14, гостиница Прибалтийская.

В течение года сообщество проводит встречи в разных городах России: Москве, Санкт-Петербурге, Новосибирске, Екатеринбурге, Нижнем Новгороде, Саратове.
На встречах выступают докладчики из разных городов и стран.

Открывать конференцию будет Jon Kalb, разработчик с 25-летним стажем
В течение этого времени успел поработать в Amazon, Microsoft, Netscape,
Yahoo и других компаниях. Jon -- организатор конференции CppCon. Автор книги
C++ Today: The Beast is Back.

Доклады

20/04/18
Track D
12:45 - 13:45
Фёдор Короткий
Фёдор Короткий
Память – идеальная абстракция
int* ptr = new int;
*ptr = 42;
delete ptr;

Что на самом деле происходит, когда выполняются эти 3 строчки кода? Мы заглянем внутрь аллокатора памяти, операционной системы и современного железа чтобы дать исчерпывающий ответ на этот вопрос.

Slides in pdf

21/04/18
Track A
17:00 - 18:00
Simon Brand
Simon Brand
Modern C++ Parallelism from CPU to GPU

Parallel programming can be used to take advantage of multi-core and heterogeneous architectures and can significantly increase the performance of software. Modern C++ has gone a long way to making parallel programming easier and more accessible; providing both high-level and low-level abstractions. C++17 takes this further by providing high level parallel algorithms, and much more is expected in C++20. This talk will give an overview of the current parallelism utilities available, and look to the future of how GPUs and heterogeneous systems can be supported through new standard library features and other standards like SYCL.

Slides in pdf

20/04/18
Track D
17:00 - 18:00
Анастасия Казакова
Анастасия Казакова
Отладка кода на C++, без запуска и компиляции

Когда смотришь на шаблоны, рефлексию, генерацию кода на этапе компиляции, метаклассы, возникает ощущение, что C++ поставил себе задачу максимально “спрятать” итоговый код от разработчика. А нетривиальное использование препроцессора (и многочисленные ответвления) может сделать последовательность действий программы очень неочевидной. Конечно, эти подходы избавляют разработчиков от бесконечного copy-paste и повторения похожих частей кодовой базы, но требуют более продвинутой поддержки в инструментах разработки.

Можно ли отлаживать код без непрерывного его перезапуска, без отладчика, да даже без простой компиляции всей кодовой базы? Если ли возможность поиска ошибок в коде, который нельзя собрать или запустить на локальной машине? Есть! Интегрированные среды разработки (IDE) обладают обширными знаниями и пониманием пользовательского кода, и именно они могут предоставить соответствующие инструменты.

В данном докладе будет показано, как можно было бы “отлаживать” макроподстановки, вложенные typedef, понимать типы переменных (которые в современном C++ оказываются зачастую “спрятанными”), отлаживать разные ветки препроцессора или перегрузки операторов, и многое другое с помощью по-настоящему умной IDE. Какие-то из возможностей уже доступны в CLion и ReSharper C++, а какие-то являются просто интересными идеями на будущее, которые было бы интересно обсудить с аудиторией.

Slides in pdf

21/04/18
Track A
12:45 - 13:45
Ivan Čukić
Ivan Čukić
2020: A void_t odyssey

C++ has always had a powerful meta-programming sub-language which allowed library developers to perform magical feats like static introspection to achieve polymorhpic execution without inheritance. The problem was that the syntax was awkward and unnecessarily verbose which made learning meta-programming a daunting task.

With the recent improvements to the standard, and with the features planned for C++20, meta-programming has become much easier, and meta-programs became easier to understand and reason about.

In this talk, we will present a few modern techniques of meta-programming, with main focus on the magical void_t meta-function.

Slides in pdf

20/04/18
Track A
10:00 - 12:00
Jon Kalb
Jon Kalb
C++ Today: The Beast is Back

This talk will cover why engineers looking for performance choose C++. Jon will present an historical perspective of C++ focusing on what's going on in the C++ community right now and where the language and its user base is heading. With a renewed interest in performance for both data centers and mobile devices, and the success of open source software libraries, C++ is back and it is hot. This talk will explain why C++ is most software engineers' go-to language for performance. You will receive a rough historical sketch that puts C++ in perspective and covers its popularity ups and downs.

This talk is based, in part, on the book "C++ Today: The Beast is Back" published by O'Reilly.

Slides in pdf

20/04/18
Track D
16:00 - 17:00
Herb Sutter
Herb Sutter
New in C++20: The spaceship operator (operator<=>)

The new operator<=> was recently adopted as a language feature for C++20. In this talk, the designer and author of the <=> proposal gives an overview of the feature, discusses its motivation and design, and walks through examples of how to use it. We give particular emphasis to how the feature makes C++ code cleaner to write and read, faster by avoiding redundant work, and more robust by avoiding several important but subtle pitfalls in the more brittle code we previously had to write by hand without this feature.

Программа

Первый день конференции 19 апреля -- это день мастер-классов. Вы можете посетить один четыре мастер-классов на ваш выбор. Обратите внимание: два мастер-класса проходят на английском языке. Мастер-класс это практическое занятие под руководством опытного программиста. Для работы вам понадобится ноутбук, более подробные требования есть в описании каждого мастер-класса. На этот день продаётся отдельный билет.

20/04/18
track atrack btrack ctrack d
09:00 - 10:00 Регистрация
10:00 - 12:00 Jon KalbC++ Today: The Beast is Back
12:00 - 12:45 Кофе-брейк
12:45 - 13:45 Arno SchödlFrom Iterators To Ranges — The Upcoming Evolution Of the Standard Library Borislav StanimirovDynaMix: A New Take on Polymorphism Дмитрий БанщиковРазделяемые библиотеки без внешних зависимостей Фёдор КороткийПамять – идеальная абстракция
13:45 - 14:45 Jonathan Boccara105 STL Algorithms in Less Than an Hour Mikhail MatrosovVersatile C++ applied Сергей ВасильевСтатический анализ: ищем ошибки... и уязвимости? Алексей СалминMemory Management Tips & Tricks
14:45 - 16:00 Обед
16:00 - 17:00 Viktor KirilovInteractive C++ Compilation (REPL): The Lean Way Александр ГранинФункциональный подход к Software Transactional Memory Илья ШишковКак научить языку C++: опыт создания курсов на Coursera Herb SutterNew in C++20: The spaceship operator (operator<=>)
17:00 - 18:00 Victor CiuraEnough string_view to hang ourselves Вадим ВинникCollection Processing. Single essence, multiple manifestations Иван ПономарёвCrash репорты Android NDK Анастасия КазаковаОтладка кода на C++, без запуска и компиляции
18:00 - 19:00 Andrei AlexandrescuFastware

Билеты

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

Как всегда действует студенческая программа.
Для получения скидки пишите на
students@cpp-russia.ru

Входной билет

Посещение основной программы конференции 20-21 апреля

Мастер-класс

Однодневный интенсив, практика, индивидуальная работа. Необходим ноутбук.

Онлайн

Просмотр любого доклада. Записи докладов доступны в течение двух месяцев.

Ужин с докладчиками

Горячая пища и общение с докладчиками в неформальной обстановке. 20 апреля в 20.00

Купить билет

Перейтик заказу билетов

Platinum спонсор

Gold спонсоры

Silver спонсоры

Community спонсоры

Контакты

Место проведения: Санкт-Петербург, ул. Кораблестроителей, 14, гостиница Прибалтийская.

Если у Вас есть вопросы,
их можно задать по телефону или почте

+7 (905) 292-77-13