Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Give Elm a Chance (newCodeCamp)

Give Elm a Chance (newCodeCamp)

Joel Clermont

March 25, 2017
Tweet

More Decks by Joel Clermont

Other Decks in Technology

Transcript

  1. What to expect What makes Elm useful and interesting? •

    Code that doesn’t crash • A powerful type system • Ecosystem: quality over quantity • Care-free refactoring • Amazing QA / debug experience
  2. No runtime exceptions • Hooray, no bugs! Not quite. •

    Runtime exceptions are a common class of bugs
  3. No runtime exceptions • Hooray, no bugs! Not quite. •

    Runtime exceptions are a common class of bugs • “undefined is not a function”
  4. No Red Ink’s testimonial Since we began using Elm in

    2015, our production Elm code has yet to cause a single runtime exception. Our error logs show plenty of crashes from our legacy JavaScript code, but none from our Elm code. We've also found our Elm-powered front-end substantially easier to scale than our previous React code base.
  5. The power of the type system • PHP’s type system

    is getting better, but still basic
  6. The power of the type system • PHP’s type system

    is getting better, but still basic • C# and Java? Better yet, but not very expressive
  7. The power of the type system • PHP’s type system

    is getting better, but still basic • C# and Java? Better yet, but not very expressive • ML type system
  8. Elm ecosystem • Package manager enforces semantic versioning • API

    design is extremely thoughtful • Awesome tooling!
  9. My final sales pitch • Welcoming community • Lots of

    effort to making concepts accessible • Easy to use it gradually • Will make you a better JavaScript developer
  10. Next steps • http://elm-lang.org (live demos, debugger, REPL) • https://guide.elm-lang.org/

    • https://www.elm-tutorial.org • https://pragmaticstudio.com/elm • https://frontendmasters.com/courses/elm/ • https://uwm.edu/business/research/centers-institutes/technology- innovation/cti-workshop-series/ • https://www.dailydrip.com/topics/elm • @elmlang @czaplic @rtfeldman @jclermont