Skip to Main Content
Talk Intermediate

From Confusion to Clarity — Understanding Rust the Way the Compiler Does

Proposal status is Rejected
Session Description

Most developers who try Rust hit the same wall. The compiler rejects code that looks perfectly fine and the error messages feel like a foreign language. The natural instinct is to fight it.

This talk is about what happens when you stop fighting and start understanding what the compiler is actually doing.

What I’ll Cover

The Rust Compiler
  • What the compiler checks beyond syntax

  • Why it catches bugs before your program ever runs

  • How to read compiler errors as useful signals not obstacles

Ownership
  • Every value has exactly one owner at any point in time

  • When ownership moves, the old binding is invalidated at compile time

  • No garbage collector needed because the compiler tracks everything

Borrowing

  • Shared immutable references allow multiple readers with no data races

  • Exclusive mutable references give one writer and block everything else

  • The compiler enforces this at compile time not at runtime

Lifetimes

  • Lifetime annotations are contracts the compiler uses to validate references

  • The compiler infers them in simple cases through lifetime elision

  • In complex systems like async agents they become unavoidable and powerful

How This Connects to Real Systems

All of this comes from building ATOS, a multi-agent system in Rust using libp2p gossipsub as part of my C4GT 2026 open source contribution. Each agent owns its state, messages are passed as zero-copy borrows, and the compiler guarantees no two agents corrupt shared data. Rust did not just make this safer. It made it possible.

Who Is This For?

Developers who have written some code but never tried Rust and want to understand what makes it genuinely different from every other language.

Key Takeaways

Key Takeaways

  • You will stop seeing the Rust compiler as an enemy and start seeing it as a teammate that catches your bugs before they ship

  • You will understand why ownership means one value one owner and what happens at the compiler level when that rule breaks

  • You will know the difference between borrowing immutably and mutably and why that single distinction makes concurrent code safe by default

  • You will finally understand what lifetime annotations are actually saying and when the compiler needs you to write them explicitly

  • You will see how these three concepts work together in a real system, not in a toy example, but in actual autonomous agents communicating over a P2P network built with libp2p

  • You will leave with a mental model that makes writing Rust feel natural instead of frustrating

References

Session Categories

Tutorial about using a FOSS project
Technology architecture
Engineering practice - productivity, debugging

Which track are you applying for?

Compilers, Programming Languages and Systems

Speakers

Anurag Pandey
Anurag Pandey Open Source Developer | NSUT

Hi I’m Anurag Pandey, a Open Source Developer at NSUT Org. under Code for Good Tech(C4GT) ‘26, SIH ‘25 Finalist and 2x Hackathon winner. I like to explain and talk about the thing I personally worked upon and build something using that. Currently in the final year of CS grad and till time I had explored mutiple domains from Full Stack, AI agents to Devops/Blockchain and concurrently explaning the work I’ve done which helps others to gain insights from them and use that to build something good or contribute to open source projects.