Hero image

Training

A collection of expert-led training videos on C++ development, produced by Adobe's top engineers

Adobe Software Technology Lab's Better Code Seminar

The Better Code Seminar is an interactive and informative event designed to enhance your programming skills and elevate the quality of your code. Our goal is to provide you with a comprehensive understanding of the principles that underlie great code, based on the latest research and deep thinking in the field.

Better Code: Contracts

Does it sometimes feel like all computer systems are held together with duct tape and good intentions? Do you have confidence that the code you write, and the changes you make, are correct? What does “correct” even mean? How do we know the code we write today won’t become a long-term liability? These persistent questions can be enough to suck all the fun out of programming, but it doesn’t have to be that way. In this talk, we’ll look at the connective tissue of good code, and show how to keep it strong and supple. We’ll suggest replacing code reviews with something better and chart the path to a more hopeful future of software.
Dave Abrahams

See the recording...

Better Code: Algorithms - Preliminaries

A function is a fundamental building block in software development and a key tool for designing efficient and maintainable systems. This talk looks at the characteristics of a “good” function and provides practical guidance on when and how to refactor and utilize existing libraries to develop Better Code.
Sean Parent

See the recording...

Better Code: Functional Design

Functional languages emphasize powerful, simple, and composable APIs, but you don't need to use these languages to benefit from their advantages.

This talk introduces functional design and showcases its application to several real-world problems. It covers denotational semantics and several math-based programming abstractions. Finally, functional solutions are compared with traditional ones.

No prior knowledge of functional programming is required for this talk.
David Sankel

See the recording...

Better Code: Reliable Types

Types are as fundamental as algorithms when architecting any software system. By designing our types around relationships already in our code, and rigorously upholding those relationships with our type invariants, we can build more reliable systems that are easier to reason about. We cover type design and making invalid states unrepresentable with algebraic data types.
Nick DeMarco

See the recording...

Better Code: Algorithms - Composition

Algorithm composition is the process of combining existing algorithms to create new ones that solve complex problems. This talk looks at different forms of composition with different trade-offs. The talk will inspire you to think of algorithms as reusable building blocks that can be combined in novel ways.
Sean Parent

See the recording...

  • Privacy
  • Terms of Use
  • Do not sell or share my personal information
  • AdChoices
Copyright © 2024 Adobe. All rights reserved.