Eliza Weisman
๐ค SpeakerAppearances Over Time
Podcast Appearances
Brian, you might be pleased to know that I got out in front of this a few months ago and ripped out a bunch of string-based code generation from Idle, which may have been Cliff's doing rather than yours. But now that uses quote and pretty please.
Brian, you might be pleased to know that I got out in front of this a few months ago and ripped out a bunch of string-based code generation from Idle, which may have been Cliff's doing rather than yours. But now that uses quote and pretty please.
Brian, it is with a heavy heart that I must inform you that if you have, any time in the last six months or so, made a typo in an idle RON file and gotten an error that has some RON source in it, that's thanks to Miette.
Brian, it is with a heavy heart that I must inform you that if you have, any time in the last six months or so, made a typo in an idle RON file and gotten an error that has some RON source in it, that's thanks to Miette.
I have read Choose Your Own Adventures.
I have read Choose Your Own Adventures.
This is amazing that Eliza, you also read Choose Your Own Adventure. I am just old enough to remember save scumming in a book. Yeah. Okay.
This is amazing that Eliza, you also read Choose Your Own Adventure. I am just old enough to remember save scumming in a book. Yeah. Okay.
On the subject of finding crates, I was thinking a bit this afternoon about, you know, I have personally had a lot of experiences with, there are many categories of crate where... There are a bunch of implementations of basically the same thing with basically the same API and wildly different performance characteristics. My classic example is like async channels like MPSCs.
On the subject of finding crates, I was thinking a bit this afternoon about, you know, I have personally had a lot of experiences with, there are many categories of crate where... There are a bunch of implementations of basically the same thing with basically the same API and wildly different performance characteristics. My classic example is like async channels like MPSCs.
There's the Tokyo one, there's the Futures one, there are a bunch of crates that are just channels. And having done a bunch of benchmarking and digging into their implementations a few years back when I was writing my own channel, they all have very different performance characteristics and they're not really, there isn't a good one.
There's the Tokyo one, there's the Futures one, there are a bunch of crates that are just channels. And having done a bunch of benchmarking and digging into their implementations a few years back when I was writing my own channel, they all have very different performance characteristics and they're not really, there isn't a good one.
You know, you don't just pick the good one, you pick the right one for the job. And it depends pretty substantially on the usage pattern. And I think kind of the big lesson that I learned from that is that as a crate author,
You know, you don't just pick the good one, you pick the right one for the job. And it depends pretty substantially on the usage pattern. And I think kind of the big lesson that I learned from that is that as a crate author,
I found it very useful to sort of up front, like at the very top of the readme, front and center when you've gone and done something that there are, you know, four different versions of on crates.io, like a channel. Why should you use this? Why should you not use it? How does it compare with other crates that maybe implement something similar? And I found it really useful to do that.
I found it very useful to sort of up front, like at the very top of the readme, front and center when you've gone and done something that there are, you know, four different versions of on crates.io, like a channel. Why should you use this? Why should you not use it? How does it compare with other crates that maybe implement something similar? And I found it really useful to do that.
And I hope that when people go searching for these libraries and encounter something that I've written, they read this section and know when, you know, maybe this is actually not the appropriate implementation for the specific problem they're trying to solve or when it is. And I want to kind of encourage others to think about doing this because I think it's a really valuable exercise.
And I hope that when people go searching for these libraries and encounter something that I've written, they read this section and know when, you know, maybe this is actually not the appropriate implementation for the specific problem they're trying to solve or when it is. And I want to kind of encourage others to think about doing this because I think it's a really valuable exercise.
I can maybe scare up some of the examples of times I've written that.
I can maybe scare up some of the examples of times I've written that.