As a solo founder trying again (1) after many failed attempts, I can only say that my investment in Rust is paying off. A lot.
I have worked with PHP in my early days (2006...), for about 6 years. I wanted to move to a language more structured. When I switched to Python I felt it was worth my investment. Working as a web developer, JavaScript was always there and I could not change that. After working with Python for 11 years, I felt if I attempt to be a founder again, I needed two things from a language - structure in developing my ideas, peace of mind to take a product to users' hands. I was OK to learn syntax, but I can not become a legendary developer with magical knowledge of some language.
Refactoring the codebase is wildly different since I get so much support from the compiler/type system. And, if it compiles, it will simply not have a class of errors.
The investment is steep, really steep. I am no distinguished engineer, just another one with average talent. I have been working full-time building my product and I am preparing to launch - multiple products in the next 6-7 months, all on the same core code-base in Rust. I have never felt a language could give me this much.
I like Rust, but to be honest, your comment just supports my belief that it really isn't worth the investment for most web devs and non-C++ devs (and even in C++, it's an awful investment for gamedev, for example).
There is a long list of languages that are more structured than Python/PHP/JavaScript and provide enough safety guarantees for most use cases, with the benefit of a GC. Languages that are easy to learn, cheap to hire for, productive, and great for teams of all sizes.
Great article! The emphasis on safety and performance really resonates with me, especially in domains like systems programming where Rust's memory safety guarantees can prevent a lot of the headaches that come with languages like C or C++. The ownership model is a game-changer, even though it has a learning curve. I also appreciate how Rust balances low-level control with modern language features like pattern matching and an expressive type system.
However, I’m curious about your thoughts on the ecosystem around Rust for certain domains, particularly in web development or data processing, compared to more established languages. While Rust is making strides, do you think it’s ready to fully replace other languages in these areas, or is it more of a complement to existing tech stacks?
Regarding web dev: I do not use Rust for this. This is not due to anything inherent in the language: It's due to the current ecosystem. I'm optimistic this will change.
A: There's nothing on the level of Django or Rails (I'm watching Loco though); there are many Flask-analogs. If I'm making a website, I want built-in automatic migrations, templates, auth, security, admin, email etc.
B: The web ecosystem ha gone mostly into Async, which is not my cup of tea.
Overall, rust if my favorite language in many domains for holistic reasons: Top-tier built-in tools, no speed limits, easy to make distributable programs, capable of running on embedded, predictable rules about mutability, nice structs and enums etc.
I think this is the general thing I like about the Rust ecosystem: You can expect that people seek to model a domain with afterthought. Like not favoring convenience in the common case over saying wrong things at the edge. There is, admittedly, a lot of drive-by coding where some domains are littered with half-done crates nobody pushed to in 5 years.
I have worked with PHP in my early days (2006...), for about 6 years. I wanted to move to a language more structured. When I switched to Python I felt it was worth my investment. Working as a web developer, JavaScript was always there and I could not change that. After working with Python for 11 years, I felt if I attempt to be a founder again, I needed two things from a language - structure in developing my ideas, peace of mind to take a product to users' hands. I was OK to learn syntax, but I can not become a legendary developer with magical knowledge of some language.
Refactoring the codebase is wildly different since I get so much support from the compiler/type system. And, if it compiles, it will simply not have a class of errors.
The investment is steep, really steep. I am no distinguished engineer, just another one with average talent. I have been working full-time building my product and I am preparing to launch - multiple products in the next 6-7 months, all on the same core code-base in Rust. I have never felt a language could give me this much.
1. https://github.com/brainless/dwata