I went about learning Rust

This page summarizes the projects mentioned and recommended in the original post on news.ycombinator.com

Our great sponsors
  • WorkOS - The modern identity platform for B2B SaaS
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • SaaSHub - Software Alternatives and Reviews
  • book

    The Rust Programming Language

  • patterns

    A catalogue of Rust design patterns, anti-patterns and idioms

  • I.e. is there a C[RustInh] = C[Rust].

    And way to prove it is to look at Deref anti-patterns https://github.com/rust-unofficial/patterns/blob/main/anti_p...

  • 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.

    WorkOS logo
  • gopy

    gopy generates a CPython extension module from a go package.

  • > So if you learn Go, you'll never be able to use it to interoperate with e.g. your Python program to speed it up.

    Never done it myself, but:

    https://www.ardanlabs.com/blog/2020/07/extending-python-with...

    https://github.com/go-python/gopy

  • build-your-own-jira-with-rust

    A test-driven workshop to learn Rust building your own JIRA clone!

  • I was introduced to rust with https://github.com/LukeMathWalker/build-your-own-jira-with-r... at a local rust meetup. I think it's pretty good.

  • I was introduced to rust with https://github.com/LukeMathWalker/build-your-own-jira-with-r... at a local rust meetup. I think it's pretty good.

  • min-sized-rust

    🦀 How to minimize Rust binary size 📦

  • 6MB is quite large. Makes me question if you were even building in release mode.

    You may want to see https://github.com/johnthagen/min-sized-rust

    It's not difficult to get binaries down into the 50KB range. And for embedded applications, less than 10KB is totally possible.

  • prisma-engines

    🚂 Engine components of Prisma ORM

  • We solved this with flat vectors and just sharing index values in cheap walker objects. It is much nicer to work with compared to arc/weak pointers.

    Code here: https://github.com/prisma/prisma-engines/tree/main/libs%2Fda...

  • 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.

    InfluxDB logo
  • PythonNet

    Python for .NET is a package that gives Python programmers nearly seamless integration with the .NET Common Language Runtime (CLR) and provides a powerful application scripting tool for .NET developers.

  • Having a runtime does not, by itself, preclude interoperating with other languages that have their own runtime. Here's a project that does that for .NET and Python:

    http://pythonnet.github.io/

    (Note that this is not a reimplementation of Python on top of CLR, but rather a bridge between CLR and CPython.)

    The thing that makes FFI problematic in Go is green threads, which have their own stacks that nothing but Go understands. Thus, every FFI call has to arrange things to be what the callee expects, and you can't do async using goroutines across language boundaries (whereas callback-based solutions like promises work jsut fine).

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts