So, the Elm Europe 2018 conference is over! There are a few things I’ve learned - I’ll list them below, but I hope you’ll reply with your insights too!
Evan Czaplicki - What is success?
Healthy culture supports diverse community, which supports sustainability, which in the end (incidentally?) supports some of the JS norms of success (GitHub stars etc.)
Brian Hicks - Let’s make nice packages
The loop to strive to be in:
10 GATHER EXPERIENCE
20 FIND PRIOR ART
30 WRITE NICE API
40 WRITE THE DOCS
50 PUBLISH
60 GOTO 10
Ian Mackenzie - Porting C++ and Scala to Elm
Let things be different (Vector vs UnitVector == Direction)
Let functions be separate (dot product for Direction == componentIn: better name, even though it has the same implementation)
Richard Feldman - Make Data Structures
Think about your types before starting with the implementation!
Go opaque by default. Force yourself to create types only by a few predefined paths.
Joël Quenneville - Working With Maybe
Don’t use Maybe if you don’t need to.
Maybe is better than pseudo-Nothing (eg. empty strings) though.
Custom union types document your domain better than Maybes.
Don’t allow business model functions to accept Maybe as an argument. (Keep it on the edges of the system.)
There were a few great talks about migrating to Elm from the CEO / company perspective - didn’t take notes for these, but will make my superiors watch them