DEV Community

Functional Geekery

Functional Geekery Episode 61 - Susan Potter

In this episode I talk with Susan Potter. We talk her introduction to Functional Programming, Haskell, Erlang, reasoning about code, Nix and NixOS, reasonable deployments and environments, and more.

Our Guest, Susan Potter

@SusanPotter on Twitter
Susan on LinkedIn
Susan’s company

Announcements

Compose Melbourne is a new functional programming conference focused on developing the community and bringing typed functional programming to a wider audience. Visit www.composeconference.org/ to find out more.

ElixirConf is taking place August 31st through September 2nd in Orlando, Florida. Visit http://www.elixirconf.com to register and find out more.

Full Stack Fest will be hold in Barcelona on September 5-9th. You can check out 2016.fullstackfest.com to find out more.

PWLConf 2016 is the first full-day Papers We Love conference, co-located with the preconference events at Strange Loop in Saint Louis, Missouri on September 15th. Keep an eye out for updates on pwlconf.org.

The Erlang User Conference is coming up in Stockholm, Sweden, the 6th through the 16th of September. Early Bird tickets are now available and get a 10% discount on the conference when you use the code: FunctionalGeekery10 when registering.

Lambda World will be taking place September 30th & October 1st, 2016. Lambda.World is the longest functional programming conference in Spain and Portugal and one of the biggest in Europe. Visit www.lambda.world to find out more and to register.

The 2016 edition of ScalaIO will take place in Lyon, France, on 27th and 28th of October. Visit http://scala.io/ for more information and to register.

CodeMesh is taking place the 3rd and 4th of November with tutorials on the 2nd of November. Tickets are available now, but they are going fast. Visit codemesh.io to register and submit your talk.

Destination Code, a new unconference starting in Utah, is having its inaugural event this December. Visit http://www.destination.codes/ to find out more.

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

Topics

About Susan
Reasonability of software and deployment environments
Susan’s introduction to Functional Programming
Java head and Python meta-programming
Inheriting a Haskell code base
Picking up Haskell 10 years ago and learning resources at the time
Cabal
What about Haskell clicked, or didn’t click, back then
Algebraic Data Types
Sum and Product types
Recursive data structures
Higher order types and generic types
Erlang
Period of enlightenment about isolation
Allowing things to fail
How to signify “failures”/errors in Haskell vs Erlang
Thinking about operational semantics
Scala
scalaz
Understanding the separation of concerns
Garrett Smith on Episode 56
Alignment of Erlang and thinking about operational side of applications
Typed based reasoning
Type specs in Erlang
The Dialyzer
Cloud Haskell
Reasoning using types or supervision trees in regards to error handling
NixOS
Package manager, GNU/Linux distribution, and build expression language
Per user based configuration
Multiple versions of JVM SDKs
Using Nix with Continuous Integration environments
Personal mission of reasonability of systems
Arrows
Kleisli Arrows
Railway oriented programming
Talk by John De Goes on Free structures
Aaron Levin’s blog post on the van Laarhoven encoding of free monads
Extra credit for extensible effects with the Eff monad as an alternative to monad transformers
Short typed functional programming in infrastructure engineering
Getting started in Nix and NixOS
Lethalman’s Nix pills blog series
Nix Cookbook
Upcoming talks
London Scala User Group (LSUG), London (England) – 2nd August 2016
Strangeloop, St. Louis, MO – Sept 2016
Reactive Summit, Austin, TX – Oct 2016
Reasoning about your code

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

Episode source