GitHub’s Nathan Stocks on All Things Rust
Rust has been growing and becoming a more commonly used programming language in systems infrastructure. At OSCON, we caught up with Nathan Stocks, Engineering Manager for Git Infrastructure at GitHub. He told us just why GitHub has been using Rust to help run its Git infrastructure. He’s a big fan of the language, and while GitHub uses it for some projects, he was quick to point out that he can only describe how he uses the language, not how GitHub treats it as a formal tool.
“Rust was a personal project by a Mozilla employee. Mozilla picked it up as an official sponsor in 2009, in May 2015, Rust 1.0 arrived. Rust is a really young systems language,” said Stocks. “I do teach Rust. I love Rust. I think it’s the future. As a systems language it’s competing with C and C++, so we’re looking at low-level languages, compiled, statically typed. Rust gives you a whole bunch of new, modern features, and makes it so that systems programmers can have nice things too.”
“They have a really welcoming, open community. I’ve tried to join some other open source communities, and they’re not always welcoming places, but for us it is. There’s a code of conduct. The core team is really good at helping make sure people stick to that, and it’s been growing like gang-busters. They’re constantly iterating on the organization itself and developing new teams and process,” said Stocks.
“Every six weeks, there’s a point release, and they’re continually adding features with a focus on backward compatibility. But we also have coming up this year, the 2018 edition of Rust. That’s a new concept that was put forth by the community. This is an opportunity for us to have an opt-in a set of breaking changes. So, every three years in Rust there is going to be an edition where you can opt into the new edition. We don’t deprecate the old versions. So there’s the 2015 edition, which is going to remain in support indefinitely, and then there will be a 2018 edition. If you opt into that, you can get some newer, nicer ergonomics. Because the language is young, it’s continuing to continuously evolve, and there are some great features coming out soon,” said Stocks.
In this Edition:
1:49: Why use Rust to handle your Git infrastructure?
2:28: Tell us about the Rust community
3:51: How is Rust evolving in general?
8:02: How is Rust evolving to address safety in code?
11:25: How is the Rust community protecting itself from vulnerability and security problems?
16:39: What are some of the projects that you see as representing the future of Rust?
Feature image via Pixabay.