Making Open Work
May 8–9, 2017: Training & Tutorials
May 10–11, 2017: Conference
Austin, TX

Building a web app in the Elm ecosystem, (almost) runtime-exception-free guaranteed

Tessa Kelly (NoRedInk)
9:00am12:30pm Tuesday, May 9, 2017
The Cutting Edge
Location: Meeting Room 17 A
Level: Intermediate
Average rating: ****.
(4.17, 6 ratings)

Who is this presentation for?

  • Frontend engineers

Prerequisite knowledge

  • Programming experience
  • A working knowledge of JavaScript, HTML, and CSS

Materials or downloads needed in advance

  • A laptop with Elm and your preferred editor installed and ready to go (If you prefer to use npm to install Elm, make sure you have Node.js installed.)
  • A GitHub account

What you'll learn

  • Learn why Elm is a good choice across a variety of metrics
  • Gain experience writing and publishing your first (very small) Elm package and writing your first Elm application
  • Understand the Elm ecosystem and a local dev environment set up for writing beautifully formatted code


Elm is a nice-to-write and nice-to-read language designed to make frontend developers happy. Elm code is easy to change and easy to not change, easy to rip out and easy to replace, and hard to cause a runtime exception in. Tessa Kelly explores some of the open source work that contributes to making Elm code maintainable, safe, and fun, from in-editor tools to package management to great libraries. Kelly walks you through basic syntax as you work toward publishing your first Elm package. The application that you’ll be building is intended to be a learning tool rather than an end in and of itself, which means there will be a lot of room for you to express your creativity.

Topics include:

  • Elm: The whys and hows behind that (almost) runtime-exception-free-guaranteed claim
  • Elm syntax; or, Are you sure you aren’t missing some curly braces?
  • Editor options, including an option that can prevent your team from arguing over white space and code formatting
  • Existing Elm packages: What are the packages that you should know?
  • Publishing a package: How do you get your library to be the one that people should know?
  • JavaScript libraries alongside Elm code
Photo of Tessa Kelly

Tessa Kelly


Tessa Kelly is a software engineer at NoRedInk, an edtech company helping teachers teach grammar and writing, where she builds out new features in Elm, writes the occasional blog post (check out “Data Structures in Elm” and “Writing Friendly Elm Code”), and never needs to argue about the Oxford comma. She recently co-organized the first ElmBridge event in the BridgeFoundry network and presented a lightning talk at elm-conf. Tessa holds a BA in mathematics from New York University, where she minored in history and Middle Eastern studies.

Comments on this page are now closed.


05/24/2017 3:12am CDT

Great session! Thanks very much. Are the slides available?