Loading…
CppCon 2021 has ended
Thursday, October 28 • 12:30pm - 1:30pm
A Case-study in Rewriting a Legacy GUI Library for Real-time Audio Software in Modern C++

Log in to save this to your schedule, view media, leave feedback and see who's attending!

Feedback form is now closed.
Delayed broadcast

This session is part of the Software Design Track.

A case-study in the design and development of iZotope's GUI framework,
for real-time audio software, using C++17 to eliminate common sources of
bugs and increase developer productivity. To illustrate this process,
we will study GlassProperties, a new open-source library for property
serialization and accessor method synthesis. While designed to support
building GUIs for real-time audio software, GlassProperties is a general
purpose framework not tied to any one GUI library and could easily be
adapted into your GUI or any part in your tech stack.

We will cover the library design process, starting with
analysis of legacy code and bugs to develop user problem statements.
These user problems will be our guide for wrapping a legacy system with
a new type-safe API using C++17 compile-time meta-programming so that
run-time bugs become compile-time errors. Once we arrive at a C++17
design, we will close with a brief look to the future and how the
library would look with C++20 Concepts.

In addition to learning the software design techniques to succeed in
this rewrite, some lessons learned will be shared so you will be armed
with both the C++ skills and business strategy to take on a project like
this at your organization.

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

Speakers
avatar for Roth Michaels

Roth Michaels

Principal Software Engineer, Native Instruments
Roth Michaels is a Principal Software Engineer at Native Instruments, an industry leader in real-time audio software for music production and broadcast/film post-production. In his current role he is involved with software architecture and bringing together three merged engineering... Read More →


Thursday October 28, 2021 12:30pm - 1:30pm MDT
Online C