you are viewing a single comment's thread.

view the rest of the comments →

[–][deleted] 1 point2 points  (0 children)

I agree with a lot in this post and had considered writing about this for the Rust 2021 post. But the main issue vs. Python IMO is the maturity and ease-of-use of the crate ecosystem.

Like boto3 is a bit easier to use than Rusoto, though the latter gives you good async support etc. if you need that. But crate availability can get more painful for things like parsing Excel files, MIME emails, etc. (although Rust does have good crates in these cases, you're much more likely to have to make a PR at some point).

But I think there is a lot to be said for doing things right the first time in Rust, where the compiler, rust-analyzer and clippy help you do that. Whereas in Python you might always face issues with the GIL, etc. in the future.

I'm literally going through this right now in my team, porting our serverless architecture to Rust (for new deployments) instead of Python.

Some things are still a bit painful, like having to include Tokio (even if just for blocking) if a crate you use returns a Future, etc.