Presentation: Full-Scale Elm in Production

Location:

Duration

Duration: 
2:55pm - 3:45pm

Day of week:

Level:

Persona:

Key Takeaways

  • Explore an early adopter's applied application of Elm
  • Learn lessons & techniques for the incremental adoption of Elm into a production system.
  • Hear how Elm  has improved velocity in frontend development for No Red Ink

Abstract

Elm is a functional programming language that compiles to performant JavaScript. At NoRedInk we have over 80,000 lines of production Elm code. It's the primary technology we use to build our Web application's user interface, which students around the world use to answer millions of questions per day. 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. In this talk, attendees will gain an understanding of how the Elm programming language works, what differentiates it from the other front-end technologies on the market, and practical advice for introducing it to an existing JavaScript code base. The talk will contextualize all this in an experience report of shipping production Elm code, including how it has impacted our team's velocity, technical debt, and hiring. Attendees are assumed to be comfortable with JavaScript, but no other knowledge is needed. Come see how nice your team's front-end programming experience can become!

Interview

Question: 
What is the focus of your work today?
Answer: 

At NoRedInk we make grammar and writing software for English teachers. Students have answered over 2 billion questions on our site, and millions more each day. I introduced Elm to our stack in 2015, and today it's the primary technology we use to power our front-end.

Question: 
What’s the motivation for your talk?
Answer: 

Sharing our experiences with Elm, to help grow the Elm community.

Question: 
How you you describe the persona of the target audience of this talk?
Answer: 

People in a position to make or influence their organization's front-end technology choices. These seem most applicable: Tech Lead, Developer (NON-JVM), Sr Management (VP, CTO, CIO, Director)

Question: 
How would you rate the level of this talk?
Answer: 

Beginner - no prior knowledge of the topic or language assumed

Question: 
QCon targets advanced architects and sr development leads, what do you feel will be the actionable that type of persona will walk away from your talk with?
Answer: 

I can go home and have my team get a small bit of Elm into production right now.

Question: 
What do you feel is the most disruptive tech in IT right now?
Answer: 

Elm, and I don't say that just to be glib!

Speaker: Richard Feldman

Elm Pioneer & Software Engineer @noredink

Richard is the author of “Elm in Action” from Manning Publications, and the instructor for the Frontend Masters 2-Day Elm Workshop. When he’s not writing about Elm, teaching Elm, speaking about Elm, or co-hosting the San Francisco Elm meetup, he likes to take a break from his job at NoRedInk (where front-end programmers spend almost almost all their coding time writing production Elm code) by kicking back and working on some of his open-source Elm projects. Some have said he’s “into Elm,” but he’s not sure where they got that wild idea.

Find Richard Feldman at

Tracks

Conference for Professional Software Developers