MP3 Audio [19 MB] Download Show URL

In this episode I talk with Martin J. Logan. We talk his experience in CTO roles guiding organizations through functional programming transformations, from lessons learned, tips, tools, strategies, how the grassroots level can help, and much more.

Our Guest, Martin J. Logan

@martinjlogan on Twitter

Discount Code from Manning

Reminder that as part of last episode Manning has offered listeners of the podcast a permanent 40% discount code, good for any of their products, in all formats.

Use code podgeekery20 for your 40% discount.

Conference Announcements

Elm Conf is going virtual! Taking place July 15th-17th in your home. The Call for Talks is open and early bird registration has started. Find out more at https://2020.elm-conf.com.

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 [@1:40]

Welcome Martin

Erlware

Martin on Episode 13

Erlang Camp

Lambda Jam 2014 – Design and architecture for actors

[Designing for Actor Based Systems blog post)[http://blog.erlware.org/designing-for-actor-based-systems/]

Being a CTO and bringing functional programming into organizations

Guaranteed Rate

William Hill

A first attempt on .NET with F#

Next attempt using Clojure

“My bet was that there are more smart and talented individuals that want to learn functional programming then there are companies smart or brave enough to give it a try”

Opening up the organization to be more polyglot

Wanting at least one Anchor to teach and mentor the group

Why Clojure was good

Being on the JVM.

“We’re doing Java […] its basically Java, it runs with Java, it interoperates with Java”

Lessons learned from the F# going into Clojure

Commitment of investing through the slowdown to get faster

What helps at at the grassroots to help with a transformation

Participation, Mentoring, Someone willing to help work through exercises with people

Real projects to work on

How to think about limiting the talent pool on the bet for being a functional programming shop

How big of a community are you really looking to build

Being exciting enough to get people from Cognitect working who worked on Clojure

Training and seeding teams

Having the light bulb go off and not wanting to leave and have to go back to other languages

Small team (4-6 people) with single anchor for about 6 months to build a team

Allowing those team members to go out to seed new teams

The fear moves away and people want to learn Clojure

ClojureScript being pulled into the front-end browser flows

Clojure University

Importance of the Install Party to get a high quality development environment setup

Clojure Essentials

Functional Programming patterns similar to Object Oriented Patterns

Doing it again at William Hill with Scala

Avoiding the same bad habits in Java

Scala community being steeped in Category Theory

“Scala will expose you everything you get out of Haskell on the JVM”

Streams in Scala

Helping to make the ground more fertile for a functional transformation

Pointing at other successful organizations

Languages on the JVM help

Helping find an anchor

Working to make it really successful

Focus on the business value and minimize the risks

“Don’t make it just a learning project but a delivery project as well”

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