We interview Jimmy Cuadra about Matrix, an open and decentralized communication protocol, and his implementation in Rust known as Ruma.

Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: hello@rustacean-station.org

Timestamps & referenced resources

[@01:35] - Meet Jimmy Cuadra [@04:46] - How did you get into Rust?

@bascule (Tony Arcieri) The Rust Programming Language Book

[@08:47] - What is Matrix?

Matrix: an open network for secure, decentralized communication libpurple Ruma: Introduction to Matrix

[@14:32] - Why “Matrix”? [@16:44] - What forms of communication does Matrix enable? [@17:59] - What pieces of Matrix does Ruma implement? [@20:27] - Why did you decide to use Rust? [@23:52] - How challenging has Ruma been to implement? [@30:27] - What libraries does Ruma leverage?

Serde: a framework for serializing and deserializing data structures efficiently and generically Diesel: a safe, extensible ORM and query builder

[@34:02] - If you could start all over again, what would you do differently? [@38:57] - Does Ruma use any unstable Rust features? Has it previously? [@42:30] - What other implementations of Matrix exist? [@46:42] - How difficult to implement is the Matrix specification? [@52:59] - How close to maturity is Ruma?

Credits

Intro Theme: Aerocity

Audio Editing: Reece McMillin

Hosting Infrastructure: Jon Gjengset

Show Notes: Ben Striegel

Hosts: Abdou Seck, Ben Striegel