Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Thanks. Rust has been recommended a bit in this thread so I'll check it out.

Out of curiosity, what's the appeal of learning Rust ? What kind of projects do you use it for ?

I find that I can solve mostly everything with a blend of PHP/JS, but I also never escaped web CRUDy stuff, and PHP is very well suited for these.



I'm a big Rust fan and have been using it for three years at this point. However, I read nicoburns's original recommendation as "It could be fun and intellectually rewarding to learn Rust", not as something they suggested because it's directly applicable to a lot of projects.

Personally I would say learn it because it's one of those languages that changes how you think about programming as a whole and learning it will make you a better programmer in every language.

That said, I think Rust shows the most promise in a few places:

1. Pretty much anywhere you'd historically use C or C++.

2. WASM

Because Rust can expose C style FFIs you can use it to speed up hot code paths in almost all scripting languages(Python, Ruby, PHP, JS etc). This can be very useful because it allows you to keep most of your code in the scripting language that you and your collaborators are familiar with, while benefiting from Rust's strengths too.

For WASM I think Rust is currently the best choice, it has excellent tooling to work with the web, it's by far the most approachable suitable language for someone who already knows JS, and it doesn't have a big runtime or GC which makes many languages non-starters for the WASM usecase.

Some people would tell you it's a good choice for general purpose backend and there is an ecosystem around that, but I would say if that is your goal Rust offers nothing that Go doesn't do better or at least as well.


It's a general-purpose programming language, so it can be used for most projects. Most problems can be solved with most languages, sure, but rust is fast and "safe", so people flock to it.

It has some nice features. Personally I never found myself besotted with it, in fact I rather dislike it and suggest ada instead. But rust is much more likely to get you a job.


Not sure about employability, at least here. A few months ago I searched for Rust job postings in Montreal (a decent-sized tech hub), and the only three results were Morgan Stanley accepting Rust as a "C++ or similar" language, and two listings for professional aircraft painters.

Still playing with it for funsies, though.


Maybe not. As I say, I don't use it, but perhaps I'm not so immune to the hype of it as I thought.


Would you mind sharing your thoughts on why you'd suggest Ada? What features of Ada make it an interesting/useful language?


I'm suggesting Ada because in my mind it satisfies a similar niche to Rust, but offers a different perspective to Rust. Also I like it more.

Ada is part of the Pascal family, but goes further as it were in all the Pascal aspects, making it essentially the ultimate Pascal. In that regard it's interesting just by being different from C.

It's much more verbose than a lot of languages, which some people like, some people don't, I do. But even if you don't, it's nice to explore some of the design decisions taken in a language designed for use in large-scale systems with long lives.

It was created as /the/ language of the US Department of Defense, which once again may not interest you. I think that in itself makes it exciting, despite having almost no interest in any other aspect of the US.

The compiler has a linter (I guess is the right word) built in, similar to Go or something. It also checks for all sorts of other little errors or potential problems like misspellings, scope, overflows, and off-by-ones. As a language designed to be used in systems controlling space equipment, train networks, and other massive and important things, these features are quite important. I guess more languages have these things now but they were an Ada priority from the beginning.

Useful is definitely relative and for a lot of things Ada won't be the best choice. I've used it for very little, but I think it's a really well done language for the most part that suffers from not being so popular. Now that a lot of other systems languages are getting thrown around - Rust, Go, and things like Nim and Zig - I think Ada should get a share of the light too.

But ultimately I just think that "learn Rust" is said much too often with much too little justification when so many other languages that could be equally as enlightening or fun are around.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: