pub struct Transcript;
Expand description

Ben Striegel

C: Hello!

B: Hello!

C: Can you tell me your name and a little about yourself?

B: Ben Striegel, I currently work at a machine shop at Harvard, I have been using Rust for about six years now. So if you had, like, a resume, company is like, “I demand at least five years experience in Rust,” and I am one of the, like, ten people in the world who can actually say, “Yes.”

C: How in the world did you get into Rust in 2011?

B: I don’t really remember…it’s kind of hazy in my mind when I first found it, but it was kind of…hm…I was at my job, and part of my job, which is a very long story - too long for now - was kind of like exploring new languages to try and rewrite a system that I was hired to rewrite, and somehow I found Rust, and at this job I was kind of like the only person there who cared about new technologies or becoming, independently, a better programmer, and so, kind of like by looking in the Rust IRC channel, which was the like, the entire community was, like, thirty people back then, in an IRC channel! I say this (garbled - something about my alma mater) - but I learned more in one year of looking in that channel than in four years of my CS degree, and it was an incredible experience to actually witness this language being made, a very early days, very primordial, and to this day I still kind of like, you know, I am one of the few people who can give firsthand talks on crazy old stuff that was in the language - vague, immature Rust historian that I am - and so I kind of like, became, like, as a lurker, who was there every day reading every scroll back, kind of became the guy, who was like, you know, someone who hadn’t been there for a week came back and like, it’s been a week since I worked on my Rust code, and it breaks - obviously, because that’s how it was back then, so I was the guy who would tell you how to update your code, and every “I’m new to the language, teach me…” I became like their teacher in that sense. So, yeah.

C: That’s awesome. So what is currently exciting and what kinds of things are you looking forward to in Rust?

B: Currently exciting? I am excited that we have maintained stability for two years now, and trying to expand on the platform that we created with 1.0. I’m excited for compiler speed improvements. I think it’s kind of one of the bigger things, like the worrying things in industry, where it’s like, “Well, you’re better than C+ + broadly, but it’s not like a very high bar to clear.” So, other than that, I think mostly my concern is - so, before 1.0, saying as someone who was kind of like around for a long time, we had this vision of several things that Rust still hasn’t quite gotten around to having that stable, so, like, ASM being one of those things, and a few things, like Infiltrate (sp?), coming soon, hopefully, Conts Generics (sp?), coming soon, and maybe the box syntax placement new (sp?), and once those are in, it’ll feel like the language we had envisioned seven years ago - seven years ago as of next year, or whatever - is finally here, and come to pass.

C: It has arrived!

B: It’s arrived! It’s finally here! Congratulations!

C: Awesome. What are pain points that you run into regularly?

B: Pain points. Well, one thing that they mentioned today here at Rust Belt Rust, in a keynote, was the match ergonomics thing, where I’m always like, star over here, ref over here, should there be an ampersand over here, should we be using pattern matching, should I like (unintelligible - something about a match statement)? That kind of thing. That’s actually going to be lovely. I love that. I’m looking forward to also question mark in main.

C: Yes.

B: That RFC? Because I mean, like, if your doing examples like me, as a teacher, you don’t want to worry about having main then call into a function that returns a result properly, you want to be able to use the question mark, and “(unintelligible - something about wraps)”. “Well, it wouldn’t be there in your actual code, I’m just kind of trying to…” That sort of thing. So, that’s a great RFC I’m looking forward to.

C: Awesome. Anything else you want to call out about Rust, Rust Belt Rust, the community?

B: I love Rust Belt Rust, because I’m from Pittsburgh, and so I’m happy to see that we are doing this kind of thing every year…like helping…but we’re doing our part to teach folks who are still around here to do cool things.

C: Thanks so much for talking to me!

B: No problem, Chris, thank you for having me.

C: My pleasure.

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for Twhere T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for Twhere T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for Twhere T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for Twhere U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T, U> TryFrom<U> for Twhere U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for Twhere U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.