3 ms·
Is it though? As long as warnings are clear I’d rather find out early about mistakes.
by grey-area 8mo ago
Is it though?
As long as warnings are clear I’d rather find out early about mistakes.
- foolfoolz 8mo agothis is the “types make me slow” argument that everyone self debunks after they program that way for a handful of years
- zahlman 8mo ago> that everyone self debunks Speak for yourself.
- lock1 8mo agoIt looks like it. Based on what I observe as an occasional tutor, it looks like compiler warnings & errors are scary for newcomers. Maybe it's because it shares the same thing that made math unpopular for most people: a cold, non-negotiable set of logical rules. Which in turn some people treat warnings & errors like a "you just made a dumb mistake, you're stupid" sign rather than a helpful guide. Weirdly enough, runtime errors don't seem to trigger the same response in newcomers.
- anticristi 8mo agoInteresting angle: Compiler errors brings back math teacher trauma. I noticed Rust tries to be a bit more helpful, explaining the error and even trying to suggest improvements. Perhaps "empathic errors" is the next milestone each language needs to incorporate.
- Hemospectrum 8mo agoI suddenly understand part of why experienced programmers seem to find Rust so much more difficult than those who are just beginning to learn. Years of C++ trauma taught them to ignore the content of the error messages. It doesn't matter how well they're written if the programmer refuses to read.
- grey-area 8mo agoInteresting. I think over the long term many people come to realise it's better to know at compile time (when they mistype something and end up with a program that runs but is incorrect it's worse than not running and just telling you your mistake). But perhaps for beginners it can be too intimidating having the compiler shout at you all the time! Perhaps nicer messages explaining what to do to fix things would help?
- gdulli 8mo agoThat's surprising because runtime debugging depends on the state of the call stack, all the variables, etc. Syntax errors happen independent of any of that state.
- discreteevent 8mo agoPeople learn by example. They want to start with something concrete and specific and then move to the abstraction. There's nothing worse than a teacher who starts in the middle of the abstraction. Whereas if a teacher describes some good concrete examples the student will start to invent the abstraction themselves.
- torginus 8mo agoI think languages with strong support for IDE type hints as well as tooling that takes advantage of it are a fairly recent phenomenon, except for maybe Java and C# which I think are regarded by the wider hacker community as uncool. C++/C IDE support is famously horrible owning to macros/templates. I think the expectation that you could fire up VS Code and get reliable typescript type hints has been a thing only for a decade or so - for most of modern history, a lot of people had to make do without.