ALTERNATE UNIVERSE DEV

Functional Geekery

Functional Geekery Episode 109 - Zach Kessin

In this episode I talk with Zach Kessin. We talk his transition to using Elm for front-end web development, using it with Erlang back-ends, his goal to help grow the community around Elm, and more.

Our Guest, Zach Kessin

@zkessin on Twitter
Pain Free Web Development YouTube Channel

Conference Announcements

RacketCon is October 7th & 8th at the University of Washington, with keynote speakers Dan Friedman and Will Byrd. Visit http://con.racket-lang.org/ for more information and to register.

Celebrate the 10th anniversary of the release of Clojure October the 12th – 14th at the Clojure/Conj in Baltimore, Maryland. Visit http://2017.clojure-conj.org/ for more information and to register.

LambdaWorld will be taking place in Cadiz, Spain on October 26th and 27th. For more information visit and to keep updated visit http://www.lambda.world/.

CodeMesh is coming up November 8th and 9th in London. For more information, and to keep an eye open for registration, visit http://www.codemesh.io/.

Moonconf will be taking place the 9th-11th of November. For more information visit http://moonconf.org/.

Clojure SYNC will be taking place in New Orleans on February 15th & 16th of 2018. For more information and to register visit: http://clojuresync.com/.

LambdaDays 2018 will be taking place February 22nd and 23rd in Kraków, Poland. For more information, and to register, visit http://www.lambdadays.org/.

If you have a conference related to functional programming, contact me, and I will be happy to announce it.

Announcements

Some of you have asked how you can support Functional Geekery, in that vein,
Functional Geekery now has a Patreon Page.

If that is one of the ways you would like to show your support, you can
find out more at https://www.patreon.com/fngeekery.

Topics [@3:22]

What Zach has been up to in since Episode 4
Erlang
Elm
Mostly Erlang
What put Elm on Zach’s radar
Perl
Going from loan calculator to large complicated applications
CoffeeScript
ClojureScript
Friendliness of “you are viewing out of date version” message on package documentation
The Elm Architecture
Initial hump of Elm looking very different than JavaScript
Scheme
Prolog
Only handful of ways to crash an Elm program vs a JavaScript program
“Like superheros, [programming] languages have origin stories”
Thinking in types in Elm compared to JavaScript compared to Erlang
“Level 1 Elm is ‘Yay! Types!”
“Level 2 Elm […] is how can we use the type system as a design tool”
QuickCheck
Curry-Howard Correspondence
Haskell
Idris
Ability to get runtime errors in Haskell
Upcoming Elm in Motion video course
Pain Free Web Development
Using Elm with Erlang
WebMachine
Cowboy
Parse Transform library in Erlang
JavaScript interop via “ports”
JSON Decoders and Decoders in Elm
Problems around silent errors
MySQL and column value truncation in non Strict Mode
Handling JSON decoder parse errors
Result type
HTTP Errors as a type in Elm
Being forced to think about errors and how to handle them
“Suddenly a 12-hour debugging session has become 12 seconds of fix a typo”
Bootstrap CSS Elm Package
The Elm compiler as the best pair you could have sitting next to you
Making Impossible States Impossible
Pain Free Web Development YouTube Channel
Leave comments as suggestions for upcoming topics
Elm Weekly Training Course
_FunctionalG12_ discount code to get it at $12/month instead of $15/month
Zach’s goal of helping building up the community around Elm
NoRedInk
Building the business case for using Elm

As always, a giant Thank You goes to David Belcher for the logo design.

Episode source