How to find a good first Rust project

Lotte James have a few tips on how to introduce Rust into your workspace on the ferrous systems blog .

Aim to answer three questions

  1. How can we minimize cost or risk to projects and timelines?
  2. How can we maximize rewards (reliability, efficiency, developer happiness)
  3. How can we maximize learnings from the first trial?

Qualitites of a good first challenge

  • Pick a problem domain you already know. If you rewrite a service, don’t change its behaviour or API, instead only change one variable at a time.
  • Avoid the “critical path”. Try Rust on projects that don’t have tight deadlines.
  • Pick components that are well documented and well isolated. Well documented/good rqeuirements or well isolated, architecturally.
  • Solve a problem you have. Might be slow-to-start CLI tools, tools that aren’t portable between Windows, macOS and Linux.

Tooling: Our Favourite “First Challenge”

Implement support tooling for your development process are a great candidate for a first challenge, because:

  • Developers always appreciate cleaning up little “paper cuts”
  • Your team is alraedy working without these tools
  • These tools are not typically part of your “main product”
  • Often relatively small and have a specific scope

Strengths of Rust to lean on

  • Portability/cross compiling
  • CLI tools (clap , multiple platforms)
  • Serialization/deserialization (serde )
  • Data parsing/number crunching
  • Multithreaded code
Edit this page on GitHub