Cian Butler
๐ค SpeakerAppearances Over Time
Podcast Appearances
Yeah, and my goal was something we're still working on, was I wanted to be able to do request cancellation.
So I wanted to be able to say, that's timed out upstream, I want to cancel it.
Something I had previously done in a Tokyo service, so kind of was like, totally, let's do this.
So I sat down to try and figure out how I could map a Tokyo request managed service to our Whiskey app.
It was, and I was reading PyOtree docs and I was playing around with a library called Py, no, not Py import, Rust import, which lets you like very quickly write PyOtree bindings for your Rust libraries.
You can get like a very rough and ready code in like 20 lines with some, not decorators, that's Python, with some macros.
And you can have this very rough importing of Rust code directly into your Python code without a lot of overhead.
Great for prototyping.
I had found some places where I thought I would probably change this if I wanted to bring it to prod and just use Pyotree for creating the interface exactly as I wanted to.
But it was definitely great for prototyping.
But saying that, while prototyping, I started looking at prior art.
And I had found someone had this idea already, which is, I want to say the best thing about open source is sometimes you go and look and say, has someone already had this idea?
And more often than not, someone has.
The project we found, it was called Granion, or I might mispronounce it a handful of times because I got so used to calling it Gradian at one point.
But it's effectively a replacement for that whiskey service we were using that is written 100% in Rust.
It's a Tokyo event loop that hands off to Python processes for doing the actual processing of code.
So all your business logic runs there and it just ensures that all the network logic is done inside Rust.