Developer, Architect, Trainer, Consultant; Michael has worked with and trained people in a wide variety of technologies, as well as having just written a lot of code.
His career has ranged from data analysis in Python, to enterprise OO code in C#, to extremely functional (in both senses) code in Elm and Haskell, with a sprinkling of F# and TypeScript inbetween.
On the surface, Elm and Fable (the F# to JavaScript compiler) look very similar - functional, ML based languages with a focus on pragmatism over complexity. In fact, the most common way of writing JavaScript in Fable is via the "Elmish" library which implements the, well, Elm architecture. But the philosophy behind the two languages is very different. Take a tour of the two languages with someone who's used both professionally, and we'll investigate how the different ideas behind them have lead to different features, different ecosystems, and even differences in how teams work with them.