Loading…
CppCon 2021 has ended
Online B [clear filter]
Tuesday, October 26
 

6:00am MDT

Lightning Talks (CANCELLED)
THIS SESSION HAS BEEN CANCELLED

Come for bite size talks you'll want more of!

ALL TALK SESSIONS CAN BE ACCESSED FROM THE MAIN LOBBY: https://cppcon.digital-medium.co.uk/

Moderators
avatar for Phil Nash

Phil Nash

Developer Advocate, Sonar
Phil is the original author of the C++ test framework, Catch2, and composable command line parser, Clara. As Developer Advocate at Sonar he's involved with SonarQube, SonarLint and SonarCloud, particularly in the context of C++. He's also a member of the ISO C++ standards committee... Read More →

Tuesday October 26, 2021 6:00am - 7:30am MDT
Online B

12:30pm MDT

Changing Legacy Code with Confidence: Practical Advice for Maintaining and Migrating Working Code
Delayed broadcast

Modern best practices always recommend writing new code for testability and maintenance. However, most of us spend more time reading other people’s code and trying to find a place to put our change without breaking existing functionality. Rarely, if ever, does that code have tests; nor does the project timeline allow for large scale refactoring to make it testable. In this talk, we will discuss how to take the fear out of working on legacy code and start working toward not only adding a safety net so we can change with confidence, but also make it easier to understand what the code is actually doing. We’ll look at some techniques that can be implemented without requiring massive hits to your deadlines, and even address issues such as dealing with hardware and timing dependencies in embedded systems. Over time, both you and your team will be rewarded by increased reliability and productivity and no longer dread the word "legacy."

ALL TALK SESSIONS CAN BE ACCESSED FROM THE MAIN LOBBY: https://cppcon.digital-medium.co.uk/

Speakers
avatar for Brian Ruth

Brian Ruth

Sr. Software Engineer, Garmin, Inc
Brian has been programming in C++ for over 20 years, working for both small and large companies on a wide variety of projects and technologies. For over a decade he worked with neuroscience researchers and created high speed acquisition, analysis and visualization software. He is... Read More →


Tuesday October 26, 2021 12:30pm - 1:30pm MDT
Online B
 
Wednesday, October 27
 

12:30pm MDT

Deploying the Networking TS
Delayed broadcast

The Networking TS provides a framework for writing asynchronous and network-aware applications. A framework which also promotes reusable and testable code. These platonic concerns are only part of software engineering however, and only a small part of the motivation for a framework. When all is said and done one must not merely prepare to reuse code but actually use it, not just test it but deploy it.

How is an actual, deployed application using the Networking TS structured? How do the principles of reusable, testable Networking TS code compose as one writes an actual application rather than a test suite? How can one integrate components which exist outside the Networking TS’s ecosystem into an application based on the Networking TS?

This talk will take the listener on a guided tour of a deployed application written using the Networking TS, the techniques employed to maintain the promises of the Networking TS while fulfilling the needs of an actual application, and how this lays the foundation not only to maintain the current application but also to author additional applications going forward as the deployment and maintenance cycle continues.

ALL TALK SESSIONS CAN BE ACCESSED FROM THE MAIN LOBBY: https://cppcon.digital-medium.co.uk/

Speakers
avatar for Robert Leahy

Robert Leahy

Lead Software Engineer, MayStreet Inc.
Robert is a graduate of the University of Victoria where he specialized in graphics, gaming, and digital geometry processing. After 4.5 years in full stack web development he switched to financial infrastructure software development in early 2017. He’s since become involved in the... Read More →


Wednesday October 27, 2021 12:30pm - 1:30pm MDT
Online B
  • Async/Concurrency/Parallelism, Online
 
Thursday, October 28
 

12:30pm MDT

"Deducing this" Patterns
Delayed broadcast

How would our code change if a member function could deduce the type and value category of the object ("this") it worked on?

Potentially a lot, and this talk will highlight some of those changes. Because with C++23, member functions will be able to do just that using a feature described in P0847, "Deducing this". Many patterns in C++ today could change, and new patterns will arise. This talk will explore those patterns, explain how "deducing this" works, and show how it solves the problems that originally motivated the paper.

Some sample effects on our code: CRTP is simplified; decorators become much easier and terser; recursive lambda expressions become straightforward. There are also implications for safely and efficiently moving values through computations.

ALL TALK SESSIONS CAN BE ACCESSED FROM THE MAIN LOBBY: https://cppcon.digital-medium.co.uk/

Speakers
avatar for Ben Deane

Ben Deane

Intel
Ben has been programming in C++ for this whole millennium. He spent just over 20 years in the games industry working for companies like EA and Blizzard; many of the games he worked on used to be fondly remembered but now he’s accepted that they are probably mostly forgotten. After... Read More →


Thursday October 28, 2021 12:30pm - 1:30pm MDT
Online B
  • C++20/Future of C++, Online
 
Friday, October 29
 

12:00pm MDT

Asserting Your Way to Faster Programs
Delayed broadcast

It is common practice to use defensive runtime checks, such as C-style assertions to help ensure program correctness, especially during testing. However, when thorough testing and beta releases bring confidence that production software is acceptably defect-free, redundant checks' value gradually decreases. With the value of redundant runtime checks diminishing, disabling them becomes more reasonable as doing so can often lead to measurable performance improvements. Although these assertions are disabled, they still carry valuable information which could assist the compiler's optimizer - namely, that for every defect-free program, the expression stated in the inactive assertion must hold. Most C and C++ compilers optimize code based on actively checked assertions; however, there is currently no standardized support for harnessing that very same information once redundant checks are disabled.

This talk explores the potential impact of the compiler assuming inactive C-style assertion predicates on runtime performance. We then share the result of our raw empirical research applied to real-world production software leveraging Bloomberg's BDE libraries, contrasting relevant metrics - such as compile times, run times, and binary sizes - across various categories of software libraries and applications. It will turn out that there are substantial opportunities to improve performance having relatively little impact on compile times. Moreover, if runtime performance is not improved, it is rarely, if ever, made measurably worse.

ALL TALK SESSIONS CAN BE ACCESSED FROM THE MAIN LOBBY: https://cppcon.digital-medium.co.uk/

Speakers
avatar for Parsa Amini

Parsa Amini

Senior Software Engineer, APC Workforce Solutions


Friday October 29, 2021 12:00pm - 1:00pm MDT
Online B
 
  • Timezone
  • Filter By Date CppCon 2021 Oct 24 -29, 2021
  • Filter By Venue online
  • Filter By Type
  • • Algorithms/Functional
  • • Async/Concurrency/Parallelism
  • • C++20/Future of C++
  • • Code Design
  • • const/Units/Time
  • • Education/Coaching
  • • Embedded
  • • GPU/Graphics
  • • Modules/Libraries
  • • Real-time/Data Science
  • • Software Design
  • • Templates/Concepts
  • • Testing/Error Handling
  • • Tooling/Debugging
  • • Type Design
  • Business
  • Social
  • Access


Filter sessions
Apply filters to sessions.