Stefan Baumgartner
Eternal Sunshine of the Spotless Programming Language
#1about 2 minutes
Understanding the original design goals and evolution of C++
C++ was created to improve upon C with better static type checking and support for large-scale programming through user-defined types.
#2about 4 minutes
How Java and Go emerged to address C++ limitations
Successor languages like Java and Go were created to solve specific C++ frustrations like manual memory management and slow build times.
#3about 8 minutes
Modern C++ evolution and the burden of backward compatibility
While modern C++ has adopted features similar to Rust, its commitment to backward compatibility creates significant technical debt that prevents removing outdated features.
#4about 4 minutes
Defining shared behavior across types with Rust traits
Rust traits provide a powerful way to define shared behavior, similar to interfaces, but can also be implemented for types you don't own.
#5about 6 minutes
Extending core language syntax and features with traits
Traits are the mechanism for implementing core language features like operator overloading, allowing custom types to integrate seamlessly with Rust's syntax.
#6about 6 minutes
Achieving composition over inheritance with the newtype pattern
By wrapping an existing type in a new struct (the newtype pattern), you can implement custom trait behavior to favor composition over complex inheritance hierarchies.
#7about 5 minutes
Simplifying error handling with custom error types and traits
Creating custom error enums and implementing conversion traits like `From` allows for clean, centralized error handling using the question mark operator.
#8about 9 minutes
A practical example of refactoring code using custom types
A web handler is refactored by creating custom response types and implementing conversion traits, making the code more readable, reusable, and type-safe.
#9about 1 minute
How the Future trait enables a flexible async ecosystem
Rust's `async/await` syntax is built upon the `Future` trait, which allows different third-party runtimes to provide the execution logic.
#10about 15 minutes
The power and limitations of using traits for language design
Traits are the central construct for evolving Rust by adding new features without introducing breaking changes, though they can lead to complex error messages.
Related jobs
Jobs that call for the skills explored in this talk.
MARKT-PILOT GmbH
Stuttgart, Germany
Remote
€75-90K
Senior
Java
TypeScript
+1
ROSEN Technology and Research Center GmbH
Osnabrück, Germany
Senior
TypeScript
React
+3
Matching moments
11:32 MIN
The industry's focus on frameworks over web fundamentals
WeAreDevelopers LIVE – Frontend Inspirations, Web Standards and more
11:10 MIN
The only frontend stack that truly matters
WeAreDevelopers LIVE – Frontend Inspirations, Web Standards and more
03:05 MIN
Building collaborative design tools and the neo-brutalism trend
Slopquatting, API Keys, Fun with Fonts, Recruiters vs AI and more - The Best of LIVE 2025 - Part 2
02:44 MIN
Rapid-fire thoughts on the future of work
What 2025 Taught Us: A Year-End Special with Hung Lee
05:32 MIN
Getting hired by contributing to open source projects
Devs vs. Marketers, COBOL and Copilot, Make Live Coding Easy and more - The Best of LIVE 2025 - Part 3
01:32 MIN
Organizing a developer conference for 15,000 attendees
Cat Herding with Lions and Tigers - Christian Heilmann
14:14 MIN
Scripting presentations and demos in VS Code
Devs vs. Marketers, COBOL and Copilot, Make Live Coding Easy and more - The Best of LIVE 2025 - Part 3
03:38 MIN
Balancing the trade-off between efficiency and resilience
What 2025 Taught Us: A Year-End Special with Hung Lee
Featured Partners
Related Videos
A Love Letter to Rust
Rainer Stropek
Get ready to Rustle
Marco Otte-Witte
Rust Beyond Systems: Revolutionizing Web Development
Patrick Koss
Reasoning about Rust: an introduction to Rustdoc's JSON format
Luca Palmieri
Don't compromise on speedy delivery nor type-safety by choosing TypeScript
Jens Claes
Guided Memory Management: Rust's Ownership Model
Stefan Baumgartner
Lies we Tell Ourselves As Developers
Stefan Baumgartner
WeAreDevelopers LIVE - Should We Respect LLMs? Is Rust Taking Over? Developers as Content Creators and more
Chris Heilmann, Daniel Cranney & Francesco Ciulla
Related Articles
View all articles



From learning to earning
Jobs that call for the skills explored in this talk.

WeMatch GmbH
API
Azure
Continuous Integration





SPECTRUM AG
Dresden, Germany
REST
Linux
Scrum
Python
Docker
+5


