Click on the title to read the talk description. All talks with their short descriptions are here.

Scroll to top

Day 1. October 31

Time  & Track
Track 1
Track 2
Track 3

No talks in Favorites yet

09:00 - 18:30


10:00 - 10:30

Conference opening

10:30 - 11:30
10:30 Track 1
11:30 - 12:00


12:00 - 13:00
12:00 Track 1
A state of сompile time regular expressions
Hana Dusíková
#parsing  #metaprogramming  #constexpr 
12:00 Track 2
12:00 Track 3
Automate it
Kirill Tikhonov
#DevOps  #Gitlab  #ContinuousDeployment  #Docker 
12:30 - 13:45


13:45 - 14:45
13:45 Track 1
13:45 Track 2
Teaching geometry to C++
Guy Davidson
Creative Assembly
#linearalgebra  #futurecpp 
13:45 Track 3
14:15 - 15:30


15:30 - 16:30
15:30 Track 1
15:30 Track 2
Type punning in modern C++
Timur Doumler
#typesystem  #bestpractices  #corelanguage 
15:30 Track 3
BareMetal C++
Karina Dorozhkina
Kaspersky Lab
#baremetal  #allocator  #freestanding  #freestandingcpp 
16:30 - 17:00


17:00 - 18:00
17:00 Track 1
17:00 Track 3
18:00 - 18:30


18:30 - 19:30
18:30 Track 1
C++ tricks from Yandex.Taxi
Antony Polukhin
#pimpl  #logging  #fastpimpl  #adl 
18:30 Track 2
Squaring the circle: value-oriented design in an object-oriented system
Juan Pedro Bolívar Puente
Independent consultant
#functionalprogramming  #OOP  #valuesemantics 
18:30 Track 3
19:30 - 23:00


20:00 - 22:00
Track 1
20:30 - 23:00
Track 2
A heart-to-heart talk with the Committee

Panel discussion with C++ standardization committee

Day 2. November 01

Time  & Track
Track 1
Track 2
Track 3

No talks in Favorites yet

10:30 - 18:50


11:00 - 12:00
11:00 Track 1
12:00 - 12:30


12:30 - 13:30
12:30 Track 1
12:30 Track 2
12:30 Track 3
13:00 - 14:15


14:15 - 15:15
14:15 Track 1
14:15 Track 2
14:15 Track 3
Clauses, qualifiers and patterns
Mikhail Matrosov
Align Technology
#longroadtoconst  #corelanguage  #tutorial 
14:45 - 16:00


16:00 - 17:00
16:00 Track 1
16:00 Track 2
16:00 Track 3
17:00 - 17:30


17:30 - 18:30
17:30 Track 1
The Big Four of C++20
Rainer Grimm
Modernes C++
#modules  #RangesLibrary  #concepts  #coroutines 
17:30 Track 2
17:30 Track 3
18:30 - 18:50


18:50 - 19:50
18:50 Track 1
Compile-time type tagging
Ivan Čukić
#compile-time  #types  #templates 
19:50 - 20:20

Conference closing

Kirill Tikhonov

Senior software developer in DINS. He develops and supports backend of cloud telephony system.

For more than 5 years Pavel is developing software in the IT security area. For more than 3 years he is actively using data analysis methods to develop and implement machine learning techniques in IT security. Before starting his developer career, Pavel was a radiophysics researcher and a higher school teacher.

Andrey is a co-founder of PVS-Studio project and CTO at Program Verification Systems. He is Microsoft MVP in the nomination "Developer Technologies". He is an author of large number of articles dedicated to the code quality and error patterns that C++ developers make. He promotes methodology of static and dynamic code analysis.

Alexander is a solution architect at Kaspersky Lab. His main job is to design the backend of corporate systems. Alexander loves integration and C++ and always happy to discuss C++ Enterprise Edition.

Karina Dorozhkina

Karina has been developing basic components for the top-of-the-line Kaspersky Lab products for four years. Last three years she has shifted focus to the transport security sector. During that time participated in the creating of several prototypes: secure gateway for cars on the basis of Kaspersky OS in partnership with the Austrian company AVL, EDR solution for cars head unit on the basis of QNX OS, conduct similar studies on the basis of the Genivi car platform. Wrote in C and C++.

Adi is Chief Science Officer of Swapp, entrepreneur, speaker, experienced software architect and a computer vision, image processing, and machine learning expert targeting real-time applications. He specializes in building cross-platform, high-performance software combined with high production quality and maintainable codebases.

Roman Rusyaev

Roman is a developer of compiler for neural networks in Russian Samsung R&D center. That compiler generates code for NPU (Neural Processing Unit). Compiled neural networks are deployed in flagship phones as such Galaxy Note 10. Also he worked as a developer of optimizing compiler for Elbrus and SPARC microprocessors from C, C++ and Fortran input languages. He has implemented:

Antony Polukhin

A representative of Russia at the C++ Standardization Committee. Author of several accepted proposals to the C++ standard.

Author of the Boost libraries: TypeIndex, DLL, Stacktrace; maintainer of Any, Conversion, LexicalCast, Variant.

Author of "Boost C++ Application Development Cookbook" and "Boost C++ Application Development Cookbook, Second Edition".

Mikhail is an expert software engineer in the Moscow R&D office of Align Technology. He develops a specialized 3D CAD system for designing orthodontic appliances.

Frequent speaker on numerous conferences: CppCon, C++ Russia, SECR, CoreHard, SECON. Co-author of the courses "Основы разработки на С++: коричневый пояс" and "Основы разработки на С++: чёрный пояс" on Coursera, which were developed jointly with Yandex.

Guy Davidson is the Principal Coding Manager at Creative Assembly. He has been writing games for about 40 years and show no sign of stopping. He is a voting member of the C++ committee, and interested in graphics, audio, IO and all things game related. He plays piano, sings for the Brighton Festival Chorus, teaches Tai Chi, raises teenagers and promotes diversity and inclusion in the C++ community.

Timur Doumler is a C++ developer specializing in audio and music technology, an active member of the ISO C++ committee, and part of the #include < C++ > team. He is passionate about building communities, clean code, good tools, and the evolution of C++.

Pavel Novikov

Got an engineering degree in missilery from BMSTU.

Loves C++ and knows how to cook it.

Likes metaprogramming, multithreading and asynchronous programming, coroutine adoption enthusiast.

Arno is responsible for the design, architecture, and development of all the think-cell's software products. He oversees think-cell's R&D team, Quality Assurance, and Customer Care.

Before founding think-cell, Arno worked at Microsoft Research and McKinsey. Arno studied computer science and management and holds a Ph.D. from the Georgia Institute of Technology with a specialization in Computer Graphics.

Ashot is a computer scientist with a background in astrophysics, who works primarily on scalable AI systems and computational complexity issues. He has been using C++ almost exclusively for the past four years for everything, including data science, web & user interfaces.

Alexander Maslennikov

One-man army. Transforms the powerful performance profiler into a cloud service starting with the GUI and ending with the new ways of collecting performance data from remote targets.

Dmitry Kozhevnikov

Dmitry works on in the CLion IDE by JetBrains, his main interest is the C++ language support: the in-house C++ engine, inspections and refactoring engine, and Clang integration. Previously, he was a C++ developer in fields related to 3D visualization, simulation, and training system. Actively following current trends and news in the C++ world.

Alexander Ganyukhin

Has been working as a C++ programmer for over 8 years, mostly in mobile communications and car industry. Recently he became interested in metaprogramming and developing tools in C++ to make life of colleagues a little easier.

Timofey is a software engineer in web development. He is working in KeepSolid, Odessa-based product company. For the past 2 years, he has been working on migrating native applications to web using TypeScript and Dart.

Nikolay Beloborodov

For the past eight years has been in the development of various high performance network services made with Linux on C++ and Boost. For the last two years he has been working as a lead developer in Variti helping to save the Internet from the bot invasion.

Marshall Clow

Marshall has been programming professionally for 35 years. He is the author of Boost.Algorithm, and has been a contributor to Boost for more than 15 years. He is the chairman of the Library working group of the C++ standard committee. He is the lead developer for libc++, the C++ standard library for LLVM.

Andrey Davydov

Andrey has been working in ReSharper C++ team, JetBrains for the last 3 years. Before that, he worked in the GIS industry in the areas related to computational geometry and 3D-visualization.

Juanpe is a Berlin-based freelance consultant and engineer, with a focus on value oriented design, interactive software, modern C++, functional programming and open source strategy. Before he worked for Ableton and has been involved in various music technology projects. He has also participated in the GNU project and cofounded a Hacklab in Granada.

Denis Panin

Senior developer in NVIDIA. Develops application virtualisation system for Windows and uses template metaprogramming even in drivers.

Rainer Grimm has worked as a software architect, team lead and instructor for about 20 years. In his spare time, he likes to write articles about C++, Python, and Haskell. Rainer Grimm also likes to speak at conferences. He publishes weekly on his English and German blog "Modernes C++". Heise Developer hosts the German blog.

Now he is an independent instructor giving seminars about modern C++ and Python. He published several books in various languages about modern C++ and concurrency in particular.

Maxim Khizhinsky

Developer of highload server systems. Areas of interest: C++, multithreading, lock-free data structures. Author of concurrent data structures library — libcds. Idiosyncrasic to std::mutex, std::condition_variable and other synchronization primitives. Diagnosed a terminal incurable brain asynchrony.

Björn wrote his first program in 1980. After completing his MSc in CS and Engineering in 1994, programming has been the primary source of income, mostly from writing embedded software for communications systems. He has been working for a while at Net Insight, where he wears many hats, including mentor, trouble shooter, network communications expert, software architect and programmer; the latter in increasingly modern C++.

Occasionally Björn has been seen tinkering with unorthodox software constructs, pondering "what can be done with this?" He lives in Stockholm.

Ivan Čukić is the author of "Functional Programming in C++" published by Manning.

He is one of the core developers in KDE, the largest free/libre open source C++ project.

He is also teaching modern C++ techniques and functional programming at the Faculty of Mathematics in Belgrade and has been using C++ for more than 20 years. He has been researching functional programming in C++ before and during his PhD studies, and uses the techniques in real-world projects.

Hana is working as a senior researcher at Avast Software. Her responsibility is exploring new ideas and optimizing existing ones. She also propagates modern C++ techniques and libraries in internal tech talks and gives talks at local C++ meetups. She studied computer science at Mendel University and subsequently taught several courses there, including Data Structures, Computability and Complexity, and Formal Languages and Automata.

Bryce Adelstein Lelbach has spent nearly a decade developing libraries in C++. Bryce is passionate about C++ evolution and is one of the leaders of the C++ community. He is an officer of ISO/IEC JTC1/SC22/WG21, the C++ Standards Committee. Bryce chairs both the C++ Committee's Tooling Study Group (SG15) and Library Evolution Incubator (SG18). He is the program chair for the C++Now and CppCon conferences, and the chief organizer of the Bay Area C++ User Group. On the C++ Committee, he has personally worked on the C++17 parallel algorithms, executors, futures, senders/receivers, multidimensional arrays, and modules. Bryce works at NVIDIA, where he leads the CUDA C++ core libraries team. He is one of the initial developers of the HPX parallel runtime system. He also helped start the LLVMLinux initiative and has occasionally contributed to the Boost C++ libraries.

Eric Niebler is a senior engineer at Facebook and an active member of the ISO C++ Standardization Committee. He was the principal author of the Ranges TS, which forms the basis of the Range support in C++20, and of the range-v3 library on which it is based. Before Facebook, Eric consulted independently and with BoostPro computing. He has authored several Boost libraries and served as a Boost release manager and a member of the Boost Steering Committee. He's happiest when finding powerful, elegant, and efficient abstractions for complicated code, and firmly believes code can and should be fast and beautiful.

Sean Parent is a principal scientist and software architect for Adobe's mobile digital imaging group. Sean has been at Adobe since 1993 when he joined as a senior engineer working on Photoshop and later managed Adobe's Software Technology Lab. In 2009 Sean spent a year at Google working on Chrome OS before returning to Adobe. From 1988 through 1993 Sean worked at Apple, where he was part of the system software team that developed the technologies allowing Apple's successful transition to PowerPC.