Jessica Kerr

Web Programming without Errors, and Coding without Typing

Infrastructure Developer at Stripe

Web Programming without Errors, and Coding without Typing

This session demonstrates two new ways of programming.
First, Elm is a purely functional programming for the browser, with strict immutability, types, semantic versioning -- and it is kind, with a focus on developer experience. The language leads to the Elm Architecture, a declarative event-based model that can teach us clean ways to think about processing in any language.
Elm code is very explicit. Compared to frameworks that do magical wiring, this can require more typing. Sometimes I wish I had a pair to do the grunt work for me, and now I do! Atomist Editors translate an intention into a pull request, modifying my code in place, leaving me to express the business logic. The wiring is done for me, without sacrificing clarity. You'll see my Editors writing Elm, but you can make Editors operate on any language!
Elm plus Atomist: front-end development with zero runtime exceptions, clear code, clean architecture, and much joy.

Talk objectives:

  • Get people to think about: the tradeoffs between explicitness (ease of reading) and fastness (ease of writing), and can we have both? event architectures. developer experience.
  • Get people excited to use Atomist in their language, and Elm for browser apps.

Target audience:

  • Some experience in functional programming, none in Elm