DEV Community

Discussion on: Should I keep Go in my tool box?

 
rhymes profile image
rhymes

oh, and this comment too

why did you decide on Rust over something like Go?

Rust provides a much richer set of tools and abstractions that make it more expressive than Go. It also generally results in higher runtime performance, though Go is also very fast. Go wins in compile time, and i suppose ease of learning, but for me personally not much else.

How hard has it been to do web development in Rust?

Not inherently more difficult than web development with any other language, but...

What has been your biggest problems slowing you down?

The ecosystem is small and immature. This results in sparse documentation, and a wealth of small beta-level interesting libraries but few stable choices. Really, at this point, there's only actix-web at 1.0, and that happened a matter of weeks ago. It also represented a huge breaking API change from the previous release. So, all this will likely improve with time, but leaves much to be desired for a lot of use cases.

What has made using Rust better?

I find the language itself, including rustc and Cargo, to be a superior environment for writing correct code. This correctness extends to web applications, it's quicker to cover all the edges of an application and be satisfied you've done so thoroughly at compile time.

Do you find time to get to MVP/Production much slower than in other languages like Go, Python, or JavaScript?

Not generally. Initial spin-up is slower, but bug-hunting down to usable is not because you're writing fewer bugs in the first place. Depends on your familiarity with Rust and other languages, but i don't think it's really inherently slower.

All in all it's an excellent choice for side projects and probably a decent option for serious work depending on your specific case, but with major caveats.