They say time is money, but we all know that you’re giving up more than money when you allocate your time to something. Investing your time also comes with an opportunity cost. Should you learn language A, framework B, or library C next? And what kind of return will you get on that investment? It seems the good developers have a heuristic for narrowing down where best to spend their time.
So, how do you gauge if learning the Elm language is worth your precious time? We think it’s worth it if you’re one of the following kinds of developers:
Curious about FP
First, if you’re simply curious about functional programming or you’ve struggled with FP concepts in another language, then you’ll find Elm relatively straight-forward to learn.
For me, Elm has been the easiest way into functional programming because it combines all things FP with (and this is the most important part) the ability to create something, for example a reactive web page. Elm goes beyond the theoretical. Its syntax is clean and readable, and you can build practical stuff with it quickly.
If you’re a language nut, then you’ll really enjoy Elm. It’s an innovative and well-designed language. Evan Czaplicki, the designer of Elm, drew inspiration from Haskell, OCaml, F#, and other ML-family languages and made it all approachable in Elm.
It’s also easy to play around with Elm. One of the quickest ways to start writing Elm code is to jump in the online editor. There’s also a REPL for experimenting, and the Elm package catalog has a growing collection of community packages.
Become A Better Programmer
Lastly, if you just want to become a better all-around programmer (and who doesn’t?), then knowing a functional programming language will serve you well. For me, Elm made functional programming finally click.
After 20+ years of (mostly OO) programming, learning Elm has made me think differently about solving simple and complex programming challenges. It’s also been a gateway into other FP languages.
Build a complete Elm web app from start to finish!
We'd love to help you make efficient use of your time learning Elm. Our Building Web Apps with Elm course quickly gets you up to speed building feature-rich web apps with Elm. You'll learn how to confidently build your own Elm apps from scratch with a deep understanding of both the how and the why.