Bryan Cantrill on Rust and Why He Feels It’s The Biggest Change In Systems Development in His Career
The InfoQ Podcast12 Huhti 2019

Bryan Cantrill on Rust and Why He Feels It’s The Biggest Change In Systems Development in His Career

Bryan Cantrill is the CTO of Joyent and well known for the development of DTrace at Sun Microsystems. Today on the podcast, Bryan discusses with Wes Reisz a bit about the origins of DTrace and then spends the rest of the time discussing why he feels Rust is the “biggest development in systems development in his career.” The podcast wraps with a bit about why Bryan feels we should be rewriting parts of the operating system in Rust. Why listen to the podcast: • DTrace came down to a desire to use Dynamic Program Text Modification to instrument running systems (much like debuggers do) and has its origins to when Bryan was an undergraduate. • When a programming language delivers something to you, it takes it from you in the runtime. The classic example of this is garbage collection. The programming language gives you the ability to use memory dynamically without thinking of how the memory is stored in the system, but then it’s going to exact a runtime cost. • One of the issues with C is that it just doesn’t compose well. You can’t just necessarily pull a library off the Internet and use it well. Everyone’s C is laden with some many idiosyncrasies on how it’s used and the contract on how memory is used. • Ownership is statically tracking who owns the structure. It’s ownership and the absence of GC that allows you to address the composability issues found in C. • It’s really easy in C to have integer overflow which leads to memory safety issues that can be exploited by an attacker. Rust makes this pretty much impossible because it’s very good at how it determines how you use signed vs unsigned types. • You don’t want people solving the same problems over and over again. You want composability. You want abstractions. What you don’t want is where you’ve removed so much developer friction that you develop code that is riddled with problems. For example, it slows a developer down to force them to run a linter, but it results in better artifacts. Rust effective builds a lot of that linter checking into the memory management/type checking system. • While there’s some learning curve to Rust. It’s not that bad if you realize there are several core concepts you need to understand to understand Rust. Rust is one of those languages that you really need to learn in a structured way. Sit down with a book and learn it. • Rust struggles when you have objects that are multiply owned (such as a Doubly Linked List). It’s because it doesn’t know who owns what. While Rust supports unsafe operations, you should resist the temptation to develop with a lot of unsafe operations if you want the benefits of what Rust offers developers. • Firmware is a great spot for growing Rust development in a process of replacing bits of what we think of as the operating system. More on this: Quick scan our curated show notes on InfoQ https://bit.ly/2uZ5QHZ You can also subscribe to the InfoQ newsletter to receive weekly updates on the hottest topics from professional software development. bit.ly/24x3IVq Subscribe: www.youtube.com/infoq Like InfoQ on Facebook: bit.ly/2jmlyG8 Follow on Twitter: twitter.com/InfoQ Follow on LinkedIn: www.linkedin.com/company/infoq Check the landing page on InfoQ: https://bit.ly/2uZ5QHZ

Tämä jakso on lisätty Podme-palveluun avoimen RSS-syötteen kautta eikä se ole Podmen omaa tuotantoa. Siksi jakso saattaa sisältää mainontaa.

Jaksot(396)

AI, ML, and Data Engineering InfoQ Trends Report 2026

AI, ML, and Data Engineering InfoQ Trends Report 2026

In this episode of the podcast, members of the InfoQ AI and MIL editorial staff and friends of InfoQ discuss the current trends in the domain of AI, ML and Data Engineering. One of the regular featur...

30 Loka 1h 11min

The Future of Web Apps: Will AI Agents Generate UIs on the Fly?

The Future of Web Apps: Will AI Agents Generate UIs on the Fly?

Rachel Lee Nabors, former React core team member, dives into the architecture and philosophy behind local-first applications, exploring how small language models (SLMs) running directly on-device can ...

19 Loka 47min

What Does It Really Mean To Program With AI: A Conversation with Joy Ebertz

What Does It Really Mean To Program With AI: A Conversation with Joy Ebertz

In this podcast, Michael Stiefel spoke to Joy Ebertz about how the use of artificial intelligence is changing the way architects and developers do their jobs. Focusing on the long term success of the ...

12 Loka 44min

Future Cybersecurity: Hardware Memory Safety, Automated Governance and Post-Quantum Cryptography

Future Cybersecurity: Hardware Memory Safety, Automated Governance and Post-Quantum Cryptography

In this episode, Chris Swan, engineer at Atsign and security track host at QCon London, reflects on the ideas shared during QCon London 2026 and teases topics of the future edition. The discussion exp...

5 Loka 34min

The AI Revolution Fails Without Psychological Safety For Developers: A Conversation with Erin Doyle

The AI Revolution Fails Without Psychological Safety For Developers: A Conversation with Erin Doyle

In this podcast, Michael Stiefel spoke to Erin Doyle about how artificial intelligence tools are transforming the software development process, and how they are affecting software engineers. Architect...

28 Syys 54min

The Future of AI: From Enterprise Adoption to Open Source Sovereignty

The Future of AI: From Enterprise Adoption to Open Source Sovereignty

In this episode, a panel of AI experts, Meryem Arik (DoubleWord), Clara Higuera Cabañes (BBVA), and Jeff Smith (C Proof), demystify the current state of AI in the enterprise. The discussion navigates ...

25 Syys 52min

Securing AI Agents: Identity, Authorisation, and the DPACT Framework

Securing AI Agents: Identity, Authorisation, and the DPACT Framework

In this episode, Sahil Agarwal talks about the critical challenges of identity, authorisation, and security in the age of AI agents. Sahil introduces the DPACT framework (Delegation, Policy, Auditabil...

21 Syys 41min

How Will We Train Developers If AI Does the Routine Work: A Conversation with Scott Hanselman

How Will We Train Developers If AI Does the Routine Work: A Conversation with Scott Hanselman

In this podcast Michael Stiefel spoke to Scott Hanselman about developing new software engineers when artificial intelligence agents are doing most of the work on which junior developers were trained....

14 Syys 36min