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

Give Elm a Chance (newCodeCamp)

Give Elm a Chance (newCodeCamp)

Avatar for Joel Clermont

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