Eternal Sunshine of the Spotless Programming Language
What if one concept could define everything from error handling to async/await? Learn how Rust’s design avoids the complexity of older languages.
#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.
Matching moments
01:46 MIN
The future of Rust in modern web development
Get ready to Rustle
05:39 MIN
Q&A on Rust, `instanceof` alternatives, and `ts-reset`
Lies we Tell Ourselves As Developers
08:47 MIN
Q&A on language design, Rust, and the future of C++
The Design and Evolution of C++
09:43 MIN
Why Rust is gaining so much developer attention
WeAreDevelopers LIVE - Should We Respect LLMs? Is Rust Taking Over? Developers as Content Creators and more
08:20 MIN
Building custom types with structs and traits
A Love Letter to Rust
02:41 MIN
Why developers should consider learning Rust now
Coffee with Developers - Francesco Ciulla
06:52 MIN
An introduction to Rust's core language features
Get ready to Rustle
04:49 MIN
Why Rust is so popular with developers and companies
4 reasons why you should learn Rust in 2021 – and maybe even have fun doing itRust is considered complex and a programming language with a steep learning curve. That's one side of the medal. We mention four points that Rust has ahead of other programming languages in terms of user-friendliness. Rust is a modern programming lan...
Luis Minvielle
The Best Upcoming IT WebinarsNow that you already know what IT webinars are and how they can help you level up your professional appeal, you might want actually to get into one. Live tech webinars are one of the best ways to stay on top of the latest trends and tools because eit...
Daniel Cranney
Building AI Solutions with Rust and DockerIn recent years, artificial intelligence has surged in popularity in the world of development. While Python remains a popular choice in the realm of AI, Rust - often known as Rust Lang - is quickly emerging as a formidable alternative.Rust programmin...
Gerry Schneider
I have a stream! Why it’s definitely worth speaking at tech conferences.Giving talks at certain events is a longed-for goal for many developers. For a good reason: it is the perfect opportunity to share your expertise and passion for a specific topic, help others learn from your mistakes, drive awareness of your solution...
From learning to earning
Jobs that call for the skills explored in this talk.