Our great sponsors
-
InfluxDB
Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
-
WorkOS
The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.
Our project is dominated by I/O, and the bits that are CPU bound can be optimized using tools like numba (we do some serious math in parts of the code base). We actually did a performance comparison between Rust and Python for computation, and we ended up having comparable performance. Rust was 2-3x faster, but when we turned on parallelization, Python ended up being 2-3x faster than single-threaded Rust, and the effort involved was almost zero (didn't test parallel Rust).
The one advantage Rust has over Scala is that it detects data races at compile time, and that's a big time saver if you use low level thread synchronization. However, if you write pure FP code with ZIO or Cats Effect that's basically a non-issue anyway.
The one advantage Rust has over Scala is that it detects data races at compile time, and that's a big time saver if you use low level thread synchronization. However, if you write pure FP code with ZIO or Cats Effect that's basically a non-issue anyway.
I use pyright as my LSP in Neovim for Python code, so I just use mypy for static type checking within CI/CD and GitHub actions.
I use pyright as my LSP in Neovim for Python code, so I just use mypy for static type checking within CI/CD and GitHub actions.