3 ms·
> it just takes months So does learning a language enough to claim to know it. As Bruce Eckel once said, programming is like learning to navigate a room blind
by Ygg2 4y ago
> it just takes months
So does learning a language enough to claim to know it.
As Bruce Eckel once said, programming is like learning to navigate a room blind. You won't learn till you've bumped into every wall and piece of furniture.
- dagw 4y agoSo does learning a language enough to claim to know it. True, but many languages let you do a lot of useful things while you are still learning, without requiring you to truly understanding what you are doing. Some people manage to spend their entire career writing useful little python scripts without really "knowing" most of python. Languages like Rust and Haskell make you learn a lot more of the language up front before you can become useful. This should not be taken as a critique of the language however.
- Ygg2 4y ago> True, but many languages let you do a lot of useful things while you are still learning, without requiring you to truly understanding what you are doing. Well same can be done in Rust. Hate the borrow checker? Just Box/RefCell all the things. However learning that habit can be pricey from execution POV, so most Rust books don't teach it.
- staticassertion 4y agoBox/RefCell are gonna be way harder than just ".clone()" or not sharing mutable references all over the place.
- Ygg2 4y agoWell it's the only way to bypass borrow checker as fas as I know. And I assume teaching you a bad habit, then un-teaching it is going to be more expensive than not. I guess another way could be by using Copy-able structs is anohther way.
- staticassertion 4y agoI don't get what's so hard about rust. You can be productive pretty quickly. I learned it in 2014 as a junior dev/ intern, it took maybe a few weeks to be productive, maybe a few months to really "get" the language/ internalize the borrow checker. I haven't found that the on-ramp for productivity is higher than any other language tbh, I'd say that my experience with Python was similar, for example. Can someone who struggled with the language explain what the hard part was? My first language was C++ so I think that's probably biasing, everything looks sane after that.
- pylua 4y agoI love rust . But it can definitely be confusing when you try to do something you are used to doing in another language but cannot do it exactly the same way . For instance , the GOF state pattern. I find it best to return the next state in an option in rust , which is different than other languages .
- dagw 4y agomaybe a few months to really "get" the language/ internalize the borrow checker. No one is saying it's super hard (assuming you are an OK programmer) just that it takes a month or three of actively working with it to wrap your brain around it, which you seem to agree with. I'd say that my experience with Python was similar I've had colleagues (that aren't programmers) who taught themselves just enough python to be productive with writing Python scripts that solved real problems while knowing maybe 20% of the language. Rust will not let you get away with learning only the very basics like that. They have no idea what a list comprehension or function decorator is, hell most of them have probably never typed the word "class" into a script. In Python that doesn't matter, you can get very far with just basic data types, functions, for loops and cutting and pasting from random web sites.
- staticassertion 4y agoMy personal experience is that most engineers I encounter can onboard to rust very quickly, as I did. But I read online about people who are struggling for many months to do basic work.