DEV Community

Ben Halpern
Ben Halpern

Posted on

I've noticed a lot of improvement in error messages across several libraries lately, is this Elm's influence?

I've noticed that Rails has gotten a lot more helpful with error messages lately, as have many of the other popular libraries I use.

This post made me really think about it:

It makes sense. As a library matures there's only so much you can do to improve the API, but you can endlessly improve error messages for clarity and guidance.

I'd love any discussion on the topic, but most specifically I wonder if this is really a trend and can it be traced to the great work of the Elm language?

That is the project which really burst onto the scene making compiler messages a true point of pride. And it really is awesome. Developing in Elm is a great experience. I've only used it for toy projects but I'm still a hoverer in that community.

Thoughts on this matter?

Top comments (3)

Collapse
 
jvarness profile image
Jake Varness

Elm's error messages are what other languages error messages wish they were. I don't think I could even write more helpful error messages if I tried.

I hope other frameworks and languages start trying to adopt Elm's "zero runtime exceptions" mantra as well!

Collapse
 
yechielk profile image
Yechiel Kalmenson

I've heard a few great talks on the topic of improving error messages at RubyConf last year and certainly hope that's the future.

I've watched quite a few people go through the process of learning to code (myself included) and I believe one of the biggest "switches" that need to click is learning how to read error messages instead of freaking out when they come up.

Having awesome, clear, and productive error messages will go a long way towards lowering the barriers to entry allowing many more people to learn how to code.

Collapse
 
elmuerte profile image
Michiel Hendriks • Edited

In my experience things generally get better because programmers are confronted with it and resort to fix it. To quote ESR "Every good work of software starts by scratching a developer's personal itch."
So in this case people got annoyed enough to fix the quality of error reporting. Generally dogfooding is a testament to quality software frameworks.