Categories
Podcasts

Functional Geekery Episode 98 – Scott Wlaschin

In this episode I talk with Scott Wlaschin. We talk on the topic of his upcoming book Domain Modeling Made Functional, and using F# (and ML family type system languages) with Domain Driven Design.

Our Guest, Scott Wlaschin

@ScottWlaschin on Twitter
F# for fun and profit
Domain Modeling Made Functional

Conference Announcements

Curry On Barcelona will be taking place June 19-20th. For more information, visit http://www.curry-on.org/2017/.

Scala Wave 2017 will be taking place July 7th and 8th. Visit scalawave.io to find out more and to register.

O’Reilly Fluent Conference will be taking place June 19–22, 2017 in San Jose, California. Visit http://www.oreilly.com/pub/cpc/61309 to find out more and to register, and use code USRG for 20% off.

EuroClojure will be taking place in Berlin, Germany on July 20th & 21st. Visit http://2017.euroclojure.org/ for more information and to keep updated.

BusConf will be taking place the 3rd-5th of August in Frankfurt, Germany. Registration is open, and more information can be found at http://www.bus-conf.org/.

The Strange Loop coming! It will be held in St. Louis, MO on September 28-30, 2017 at the Peabody Opera House. To submit your CfP, visit http://thestrangeloop.com/.

PWLConf 2017 will be taking place September 28th in St. Louis, MO, before Strange Loop. Visit http://pwlconf.org/ for more information and to stay updated on latest announcements.

Open FSharp will be taking place the 28th-29th of September in San Francisco, California. Visit openfsharp.org for more information and to register.

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.

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/.

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 [@5:41]

About Scott
Scott on Functional Geekery Episode 66
Scott on Three Devs and a Maybe
Programming Like Functions Matter with Jimmy Burrell and Scott Wlaschin
The Tale of State and Behaviour, Part 1 with Scott Wlaschin
The Tale of State and Behaviour, Part 2 with Scott Wlaschin
Scott’s upcoming book Domain Modeling Made Functional
How the book came about
F#
Using F# for Business Domain modeling
Balancing the formalistic mathematical side with the humanistic side of software
Building the thing right vs building the right thing
Domain-Driven Design
F#’s ability to evolve software while keeping aligned to the domain
Ability to lean on the compiler more in ML family languages
Ease, simplicity, and conciseness of adding new domain types
Domain types as concepts separated from their underlying serialization format
Benefit of immutable data in the domain
Ability to focus on domain logic and not defensive programming
Evolving type definitions as the domain logic evolves
Refactoring transformations vs state mutation changes
Abstraction vs Concretion in modeling the domain
Sum/Product Types vs Generic Types in modeling the domain
Ability to model against types without knowing what the types actually are
Monoid – ability to combine two types to make a larger type
“The principles don’t change”
Getting more people to talk about integrating Domain Driven Design and functional programming
Trying to organize the narrative of a book
Overview of what the book’s audience and organization will be
“I wanted to make something approachable”
Demystifying functional programming
Showing people with the focus on practical things over academic things
Lessons learned on not building the right thing
Outline of Scott’s book
Order processing system as example domain
Thirteen ways of looking at a turtle
Upcoming appearances
NDC Oslo
NDC Sydney
Open FSharp conference
NDC Conferences’ videos on Vimeo

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

Categories
Podcasts

Functional Geekery Episode 66 – Scott Wlaschin

In this episode I talk with Scott Wlaschin. We talk his introduction to functional programming and F#, making the ideas accessible without needing a math background, functional programming being similar to object oriented programming taken to the extreme, and much, much more.

Our Guest, Scott Wlaschin

@ScottWlaschin on Twitter
F# for fun and profit

Announcements

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.

Scala Wave is coming up on the 25th and 26th of November in Gdańsk, Poland. Visit http://www.scalawave.io/ to find out more and sign up for their newsletter for updates.

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 Scott
F# for fun and profit
Ten reasons not to use a statically typed functional programming language
F#
How Scott got introduced to functional programming
Smalltalk
Python
How Scott got introduced to F#
Haskell
OCaml
Miranda
Convenience of getting started in F#
Benefit of being on a known platform
Immutability
Partial Application
Yaron Minsky
Jane Street
Making Illegal States Unrepresentable
Learning a language by writing a blog
Reluctance to use jargon
“I had to translate Haskell into F#”
“Why do people care about Monads, Monoids, Applicatives, and all that?”
Railway Oriented Programming
Difference between giving someone tools vs giving someone a recipe
Railway Oriented Programming is really about error handling
What are some of the most well received topics from his content for getting started
FP Patterns presentation
A functional approach to Domain Driven Design
Scott’s slide on “Patterns in Functional versus Object Oriented Programming”
“How do you do a loop [if you don’t have immutability]?”
“The most common functional programming language is Excel macros
Organization of F# for fun and profit site
F# for fun and profit e-book
GitBook
Dr Frankenfunctor and the Monadster
April Fool’s post of migrating to Scala
Scala for fun and profit
Understanding fundamentals and patterns
Monoids series
The Elevated World series
Schism between mathematically oriented and humanist sides of programming
“[Functional Programming] is not that scary”
“Object Oriented design principles taken to the extreme look a lot like Functional Programming.”
The Design of Everyday Things
Don’t Make Me Think
The call to start looking into usability of your applications
What is on Scott’s radar
“If your young, learn as many languages as possible”
Learn how to be a better teacher
Dan North’s Accelerating Agile talk

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