Overview
Explore a comprehensive conference talk on leveraging Rust for production-level projects, drawing insights from the Habitat project's extensive experience. Dive into the challenges Rust excels at addressing, including static compilation, dependency management, and cross-platform development. Learn about pragmatic approaches to using native C libraries, maintaining a unified codebase for Linux, Mac, and Windows, and effectively onboarding new team members to Rust. Discover how to utilize tools like clap for CLI parsing and implement strategies for code reuse and sharing. Gain valuable insights into Rust's performance considerations, synchronization points, and the importance of continuous integration in cross-platform development. Whether you're considering Rust for your next service, application, or tool, this talk provides essential knowledge and practical lessons learned from a team with over 40,000 lines of Rust code in production.
Syllabus
Intro
provides realtime service configuration
Why Rust?
This question comes up...
Code reuse and sharing
Bonus: CLI tools
How Habitat Uses Rust
Use native libraries
Static-compilation
Share build outputs and lockfile
Common versioning
Crate dependencies
Dependency strategy: aggressive
Cross platform codebase
Onboarding team members
Rust pain points
Hint: Cargo workspaces
Cross platform code paths
Hint: Continuous Integration
Rust is too fast?
Hint: Think about synchronization points
Taught by
Rust