this post was submitted on 25 Sep 2023
88 points (96.8% liked)
Programming
17303 readers
53 users here now
Welcome to the main community in programming.dev! Feel free to post anything relating to programming here!
Cross posting is strongly encouraged in the instance. If you feel your post or another person's post makes sense in another community cross post into it.
Hope you enjoy the instance!
Rules
Rules
- Follow the programming.dev instance rules
- Keep content related to programming in some way
- If you're posting long videos try to add in some form of tldr for those who don't want to watch videos
Wormhole
Follow the wormhole through a path of communities [email protected]
founded 1 year ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
Oh man ... I haven't learnt rust myself, but this fits with my sterotyped impression of it ... wanna read a file ... well, let's just wrestle with the type system and compiler for half an hour first!
Not a criticism ... I get the value of the type system and all that, but as an introduction to the language, diving into all that straight away before you do any actual computation is probably not the best way to go.
Static types aside, the file system has a lot of failure cases, which every language is affected by, and Rust makes them very visible. This can indeed feel like a lot, but it's an intentional feature and makes more sense in larger projects. I guess the feeling may get amplified by the author's style of long form posts with a lot of details.
Error handling in practice contains a lot of "let the caller deal with it", using the
?
operator to pass errors up the call stack. The more verbose options are for when you need to actually handle it.Oh for sure, like I said this makes a lot of sense. All I was saying was that as a pitch for learning the language, the part after the file read had been sorted was much more compelling and interesting.
Absolutely, I didn't mean to suggest otherwise. :) I'm just giving a bit of context and perspective from someone who has used it for a while.
Yes, not to knock the book because it is really well done, but it gets theory deep before you're able to apply that theory in a way that makes it make sense. It's like someone describing the theory of gravity to you to teach you how to play basketball
Yea I can imagine.
I'm a pretty big believer in understanding the problem that needs solving before understanding the solution. I'd imagine that gets a bit tricky with rust because the compiler is just not gonna let you run the "problematic" program.
Now that I'm thinking this out loud ... maybe a good way to learn rust would be by using and contrasting it with another language to see what rust is giving you that the other language doesn't. Most are probably coming to rust from knowing a few languages already too.
To be fair, Rust is far from the hardest language I've learned. That honor would go to C++. I'm actually really enjoying it. But I'd maybe compare to learning english. You can learn all the funky grammar rules, the funky spelling, the history that went behind all that funkiness. But it's filled with so many idioms that are just kinda baked in and not written down that it can get confusing fairly easily.