Functional Geekery Episode 114 – Fred Herbert

In this episode I talk with Fred Herbert. We talk his introduction to Erlang, making languages accessible to the community, productionization as a phase of software, property testing, we wrap up with a tease of how “Everything is Terrible”, and much more.

Our Guest, Fred Herbert

@mononcqc on Twitter
https://ferd.ca/

Conference Announcements

Clojure SYNC will be taking place in New Orleans on February 15th & 16th of 2018. For more information and to register visit: http://clojuresync.com/.

LambdaDays 2018 will be taking place February 22nd and 23rd in Kraków, Poland. For more information, and to register, visit http://www.lambdadays.org/.

BOB 2018 is coming up in Berlin, Germany on February 23rd, 2018. For more information, and to register, visit http://bobkonf.de/.

:clojureD will be following BOB 2018 in Berlin, Germany on February 24th, 2018. For more information, and to register, visit http://clojured.de/.

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 [@2:06]

About Fred
Learn You Some Erlang For Great Good
Erlang in Anger
How Fred got introduced Erlang
Writing “Learn You Some Erlang” as he was learning Erlang
Python
Structure and Interpretation of Computer Programs
Structure of Erlang programs
“The idea that there is no main function”
OTP
Go
Links and Monitors in Erlang
Erlang and OTP in Action
“Difference in trying to prevent the errors compared to trying to deal with them”
Making languages approachable and health of the community
Fred’s Keynote at Erlang User Conference 2016
Getting interaction with newcomers to remove hurdles to getting started in a language
Thinking about the Productionization Phase of your software
“A lot of the work you do is not writing it the first time, its really keeping the thing going after that”
Smalltalk
dtrace
Importance of thinking about your people as a part of your system
Conway’s Law
Haskell
Racket
House M.D.
Seeing your code as a piece of writing
The importance of predictable code
Programming in the Large and Programming in the Small
Programming Paradigms for Dummies by Peter Van Roy
Lasp
Property Testing
PropEr Testing.com
“Most of the errors in the system are mistakes that I didn’t see coming”
Haskell QuickCheck
Erlang QuickCheck
Hypothesis in Python
PropEr
Quviq
Upcoming talk at CodeMesh
Everything is Terrible
SpawnFest
This Week in Erlang

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

Functional Geekery Episode 113 – Oskar Wickström

In this episode I talk with Oskar Wickström. We talk his introduction to software development, journey to functional programming, tooling, state machines and static typing, and more.

Our Guest, Oskar Wickström

@owickstrom on Twitter
owickstrom on Github
https://wickstrom.tech/

Conference Announcements

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

Clojure SYNC will be taking place in New Orleans on February 15th & 16th of 2018. For more information and to register visit: http://clojuresync.com/.

LambdaDays 2018 will be taking place February 22nd and 23rd in Kraków, Poland. For more information, and to register, visit http://www.lambdadays.org/.

BOB 2018 is coming up in Berlin, Germany on February 23rd, 2018. For more informationa, and to register, visit http://bobkonf.de/.

:clojureD will be following BOB 2018 in Berlin, Germany on February 24th, 2018. For more information, and to register, visit http://clojured.de/.

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 [@2:35]

About Oskar
How Oskar moved from music to programming
PHP for a band website
What made software become more interesting to move into development
WordPress
What made to move to looking into other languages
Object-Oriented Programming in PHP
C# and .NET
Java
Scala
Haskell
“Absorbing every advice from people that I respected”
How Oskar was exposed to Haskell
Learn You A Haskell
Programming Scala as Java, but with a better syntax
What were the “Ah-Ha” moments when starting to learn Haskell
Static-Dispatch in Haskell vs Dynamic-Dispatch in Java
Implementing an Event Store
Event Sourcing
Making the move from Haskell in side projects to working in Haskell
Functional JavaScript
React
Reactive Programming
Implementing functional ideas from Haskell to JavaScript
Giving mini-trainings on functional programming concepts
Dual Feedback loop between play projects and applying to work problems
First work project in Haskell
Oden
Go language
PureScript
Using a language to deliver small tooling for yourself
Trying to use the best tooling
How Oskar thinks about picking tooling
The Unix Philosophy of “doing one thing and one thing well”
Documentation
Sphinx
reStructuredText
Hyper
PureScript middleware like Express and Connect in Node.js
Representing middleware as a state-machine verified by a type system
Why run PureScript in a Node.js environment?
“That’s a question I always get asked when people ask me about Hyper”
Row Polymorphism
Migrating an existing Node.js app to PureScript
purerl
Cowboy
Hardy Jones mentioning purerl on Magic Read Along
servant
Overview of upcoming talk “Finite State Machines – Your Compiler Wants In”
Idris
“This is a very nice hammer, but you don’t want to apply it everywhere”
CodeMesh
Haskell eXchange 2018

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

Functional Geekery Episode 112 – Micheal Sperber

In this episode I talk with Micheal Sperber. We talk his introduction to programming and functional programming languages, important commonalities across languages, power of syntactic abstraction, teaching programming to beginners and experienced programmers, Concurrent ML, and more.

Our Guest, Micheal Sperber

@sperbsen on Twitter
http://www.deinprogramm.de/sperber/

Conference Announcements

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

Clojure SYNC will be taking place in New Orleans on February 15th & 16th of 2018. For more information and to register visit: http://clojuresync.com/.

LambdaDays 2018 will be taking place February 22nd and 23rd in Kraków, Poland. For more information, and to register, visit http://www.lambdadays.org/.

BOB 2018 is coming up in Berlin, Germany on February 23rd, 2018. For more informationa, and to register, visit http://bobkonf.de/.

:clojureD will be following BOB 2018 in Berlin, Germany on February 24th, 2018. For more information, and to register, visit http://clojured.de/.

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 [@3:03]

About Micheal
How Micheal got into software
How Micheal’s interest in teaching related to his interest in software
Micheal journey of learning different languages
BASIC
C
Germany’s National Competition of Programmers for high school students
Finding a community of people to learn from
How Micheal came across functional programming
LISP
Structure and Interpretation of Computer Programs
Scheme
Hope
Miranda
Haskell
ML
OCaml
Clojure
Erlang
F#
Scala
Elixir
What is the core that Micheal finds across functional languages
Immutability
Type Based Design (regardless of static or dynamic typed)
Macros as the “feature wish” for all languages
Hygienic Macros
Power of a common, well known, syntactic abstraction
What Micheal has found about teaching functional languages
“Your students are different than you”
“You have to put some distance between what you teach and what you love”
Racket
“You need to have languages designed for teaching, and tooling designed for teaching”
Dr. Racket
Commonality of teaching beginning programmers and teaching experienced professionals
Common principles for teaching as starting points
“Keep excitement out of it”
Program by Design
How to Design Programs
Design Recipe
Using types about your data to match information in your problem statement
Lessons from taking the teachers’ excitement out of the curriculum
“Here’s this thing, we don’t care if you love it or not, just do your thing”
Letting the students get excited for themselves.
Difference in thinking in types between dynamically and statically typed languages
Concurrent ML
Overview of similarity and differences in concurrency across functional programming languages
Messages and immutable data
Erlang process model for concurrency
Overview of Concurrent ML
Rendezvous
Algebra of Rendezvous
“It’s like Christmas when you pull it out of the box”
Composition of Rendezvous across different concurrent mechanisms
Wittgenstein “The limits of your language are the limits of your world”
Going back to other concurrency mechanisms after knowing about Concurrent ML
core.async
Concurrent ML as a way of thinking
Standard ML of New Jersey
Extracting Concurrent ML concepts as a library
Star
Concurrent Programming in ML
Concurrent ML as the best book on concurrent programming
John Reppy Ph.D. thesis
Concurrent ML book on covers multiple paradigms
Mike’s upcoming CodeMesh presentation
International Conference on Functional Programming
Funktionale Programmierung
BOB Konf

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

Functional Geekery Episode 111 – Stian Veum Møllersen

In this episode I talk with Stian Veum Møllersen. We talk his introduction to programming, exploring programming languages, “Perlis Languages”, Concatenative Languages, Creative Programming, and more.

Our Guest, Stian Veum Møllersen

@mollerse on Twitter
mollerse on Github

Conference Announcements

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

Clojure SYNC will be taking place in New Orleans on February 15th & 16th of 2018. For more information and to register visit: http://clojuresync.com/.

LambdaDays 2018 will be taking place February 22nd and 23rd in Kraków, Poland. For more information, and to register, visit http://www.lambdadays.org/.

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 [@2:42]

About Stian
How Stian got into programming
Java
Starting out as a consulting
“I didn’t see programming as fun; it was more of a means to an end”
Discovering the fun of programming through front end development
ClojureScript
Elm
PureScript
Prolog
Michael Fogus’ Perlis Languages post
Eifell
Joy (mirror)
What about web development sparked the excitement about programming
Angus Croll – Break all the rules
Jed Schmidt browserver: a node.js HTTP server, in your browse
What sparked the excitement about learning about different languages
“I wanted to understand how we arrived at this point in history”
“If you take a framework to its ultimate conclusion you end up with a language anyway”
Evolution of language learning exploration
Java and Python in University
Functions as Values in JavaScript
Clojure
Exposure to the idea of Language Families
Lisp
Racket
Scheme
F#
Standard ML
Programming Languages Coursera Course by Dan Grossman
Prolog
“A language even stranger than Prolog”
First exposure Concatenative Languages
Difference between Stack-based and Concatenative Languages
Joy (mirror)
Experience when starting to learn Joy
The balance between declarative versus imperative in Concatenative Languages
Difficulty of just programming your way to a solution without thinking about the problem
Thinking Forth
How Concatenative Languages change your thinkings
Focus on Factoring in Thinking Forth
Algol
Cobol
C++
Smalltalk
Refactoring: Improving the Design of Existing Code
Stian’s upcoming presentation at CodeMesh 2017
How Creative Programming works well with Concatenative Languages
Recommendations on getting started with Concatenative Languages
Read-Eval-Print-λove
Joy
Factor
Flatmap Oslo 2017 presentation (slides)
ait
turtle-ait
FARM 2017 presentation (slides)
#concatenative on FreeNode
Concatenative Languages wiki

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

Functional Geekery Episode 110 – Kiwamu Okabe

In this episode I talk with Kiwamu Okabe. We talk his introduction to writing software for hardware; exposure to functional programming; running Haskell, ATS, and VeriFast verification on bare metal hardware; and more.

Our Guest, Kiwamu Okabe

http://metasepi.org/

Conference Announcements

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

Clojure SYNC will be taking place in New Orleans on February 15th & 16th of 2018. For more information and to register visit: http://clojuresync.com/.

LambdaDays 2018 will be taking place February 22nd and 23rd in Kraków, Poland. For more information, and to register, visit http://www.lambdadays.org/.

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

About Kiwamu
Ricoh
Functional IoT
How Kiwamu got into software
BSD
Transitioning from OS development to hardware programming
What made Kiwamu want to try running functional languages on bare metal hardware
Haskell
How Kiwamu was first exposed to Haskell
OCaml
Scheme
Why Haskell appealed to run on hardware
Glasgow Haskell Compiler
QuickCheck
First pass at applying Haskell to bare metal hardware
Jhc Haskell Compiler
ATS
Experience with ATS on bare metal hardware
ChibiOS/RT and ATS
VeriFast
What the social aspect of functional languages running on bare metal looks like
Balance of ATS vs VeriFast
seL4
What the technical aspect of functional languages running on bare metal looks like

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

Functional Geekery Episode 109 – Zach Kessin

In this episode I talk with Zach Kessin. We talk his transition to using Elm for front-end web development, using it with Erlang back-ends, his goal to help grow the community around Elm, and more.

Our Guest, Zach Kessin

@zkessin on Twitter
Pain Free Web Development YouTube Channel

Conference Announcements

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.

Celebrate the 10th anniversary of the release of Clojure October the 12th – 14th at the Clojure/Conj in Baltimore, Maryland. Visit http://2017.clojure-conj.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/.

Moonconf will be taking place the 9th-11th of November. For more information visit http://moonconf.org/.

Clojure SYNC will be taking place in New Orleans on February 15th & 16th of 2018. For more information and to register visit: http://clojuresync.com/.

LambdaDays 2018 will be taking place February 22nd and 23rd in Kraków, Poland. For more information, and to register, visit http://www.lambdadays.org/.

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 [@3:22]

What Zach has been up to in since Episode 4
Erlang
Elm
Mostly Erlang
What put Elm on Zach’s radar
Perl
Going from loan calculator to large complicated applications
CoffeeScript
ClojureScript
Friendliness of “you are viewing out of date version” message on package documentation
The Elm Architecture
Initial hump of Elm looking very different than JavaScript
Scheme
Prolog
Only handful of ways to crash an Elm program vs a JavaScript program
“Like superheros, [programming] languages have origin stories”
Thinking in types in Elm compared to JavaScript compared to Erlang
“Level 1 Elm is ‘Yay! Types!”
“Level 2 Elm […] is how can we use the type system as a design tool”
QuickCheck
Curry-Howard Correspondence
Haskell
Idris
Ability to get runtime errors in Haskell
Upcoming Elm in Motion video course
Pain Free Web Development
Using Elm with Erlang
WebMachine
Cowboy
Parse Transform library in Erlang
JavaScript interop via “ports”
JSON Decoders and Decoders in Elm
Problems around silent errors
MySQL and column value truncation in non Strict Mode
Handling JSON decoder parse errors
Result type
HTTP Errors as a type in Elm
Being forced to think about errors and how to handle them
“Suddenly a 12-hour debugging session has become 12 seconds of fix a typo”
Bootstrap CSS Elm Package
The Elm compiler as the best pair you could have sitting next to you
Making Impossible States Impossible
Pain Free Web Development YouTube Channel
Leave comments as suggestions for upcoming topics
Elm Weekly Training Course
_FunctionalG12_ discount code to get it at $12/month instead of $15/month
Zach’s goal of helping building up the community around Elm
NoRedInk
Building the business case for using Elm

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

Functional Geekery Episode 108 – David Christiansen

In this episode I talk with David Christiansen. We talk his introduction to functional programming, research in dependent types, Idris, Nuprl and LFC traits, work to add dependent types to macro-expansion in Racket, and much, much more.

Our Guest, David Christiansen

@d_christiansen on Twitter
http://davidchristiansen.dk/

Conference Announcements

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.

Celebrate the 10th anniversary of the release of Clojure October the 12th – 14th at the Clojure/Conj in Baltimore, Maryland. Visit http://2017.clojure-conj.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/.

Moonconf will be taking place the 9th-11th of November. For more information visit http://moonconf.org/.

Clojure SYNC will be taking place in New Orleans on February 15th & 16th of 2018. For more information and to register visit: http://clojuresync.com/.

LambdaDays 2018 will be taking place February 22nd and 23rd in Kraków, Poland. For more information, and to register, visit http://www.lambdadays.org/.

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 [@3:22]

About David
Idris
Indiana University Bloomington
Racket
Type Driven Development in Idris
The Type Theory Podcast
Dan Friedman on Functional Geekery
David’s introduction to programming and computers
MS-DOS GW-BASIC
Major in Philosophy with Minor in Computer Science
What put functional programming on David’s radar
Lisp
Haskell
A Gentle Introduction to Haskell
Structure and Interpretation of Computer Programs
PLTScheme, now Racket
Internship doing I.T.
QBasic
C
Perl
Smalltalk
David’s grad school work
Exposure to Idris at St Andrew’s summer school
General ML exposure around Copenhagen
False dichotomy between industry and “academic” languages
Progression to push into dependent types
“Part of my job description at the time was: learn about interesting things”
The Type Theory Podcast
Software Foundations
Adam Chlipala on Functional Geekery
Dependent Types as a aesthetic thing
Type Driven Development
Interactive programming environments from the 80’s
“Let the computer do what the computer is good at, which is the details”
Nuprl
Jon Sterling’s jonPRL and RedPRL
Types as predicates that describe behavior
Agda
Coq
Typed Racket
Using Racket as a proof language for Nuprl type system
Logic for Computable Functions by Dana S. Scott
Robin Milner
Edinburgh LCF
ML
Running LCF style proofs in Racket macro-expansion
Hackett
cur
miniKanren
µKanren
Scribble
Slideshow
video
Resources to get started understanding dependent types
Software Foundations
Upcoming _Little Schemer_ family book on dependent types with Dan Friedman
Little Schemer
Upcoming talks previewing book at RacketCon and CodeMesh
Oregon Programming Languages Summer School videos
Suggestions for a title in Little Schemer tradition

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

Functional Geekery Episode 107 – Julie Moronuki

In this episode I talk with Julie Moronuki. We catch up about “Haskell Book”, cover the upcoming Joy of Haskell, lessons learned teaching Haskell in user groups, other projects, linguistics, and more.

Our Guest, Julie Moronuki

@argumatronic on Twitter
GinBaby on Github
http://argumatronic.com/
Joy of Haskell
@joyofhaskell on Twitter

Conference Announcements

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.

elm-conf is returning to St. Louis on September 28, 2017 for a day of learning, speaking, and connecting with the Elm language community. For more information and to register visit http://www.elm-conf.us/.

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.

Celebrate the 10th anniversary of the release of Clojure October the 12th – 14th at the Clojure/Conj in Baltimore, Maryland. Visit http://2017.clojure-conj.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/.

Moonconf will be taking place the 9th-11th of November. For more information visit http://moonconf.org/.

Clojure SYNC will be taking place in New Orleans on February 15th & 16th of 2018. For more information and to register visit: http://clojuresync.com/.

LambdaDays 2018 will be taking place February 22nd and 23rd in Kraków, Poland. For more information, and to register, visit http://www.lambdadays.org/.

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:19]

About Julie
Julie on Episode 19
Haskell Programming from first principles
Update to “Haskell Book” since last time Julie and Chris were guests
Goal of being precise in the Haskell Book
Resetting pre-conceived baggage
Lambda Calculus as the first chapter
“I wish people would just read the chapter and let go of their preconceived notions of what it will be”
Teaching Haskell to her son to teach math
CodeWorld
Chris Smith
“Baby’s First Category Theory” book
Kids ability to pick up abstract ideas
Teaching Haskell in user groups
Joy of Haskell
Chris Martin
Origin of Joy of Haskell
Introduction to some of the advanced topics you might hear about in Haskell
Lens library
Opal Eye library
Getting to be comfortable reading types
What made Julie decide to write the second book
“Since my mission is to get more people to enjoy Haskell, to love it the way I do”
“Whatever they want to do, I want to help them do it in Haskell”
“Learning a language isn’t hard, it’s all the other stuff”
Separating out the pure from the impure
Nix and NixOS
Looking back at linguistics and how it might tie to category theory
Types should make illegal states irrepresentable
Noam Chomsky
Goal of generating only legal sentences from abstract rules
The goal of trying to find a universal abstract pattern to generate all the legal phrase structures of a language
Shower thought as verbs as TypeClasses
Giving an upcoming talk at Haskell eXchange 2017
hands-on-haskell-meetups project
Upcoming Roguelike project in Haskell
Tips for evaluating whether to write a monad tutorial
Monad Tutorial in JavaScript
Making the target audience explicit
“Every tutorial should start with ‘You don’t need to understand monads to do IO'”

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

Functional Geekery Episode 106 – Reid Evans

In this episode I talk with Reid Evans. We talk his introduction to functional programming, F#, functional JavaScript, Functional Knox, and much more.

Our Guest, Reid Evans

@reidnevans on Twitter
reidev275 on Github
@FunctionalKnox on Twitter
Functional Knox
Reid’s YouTube Channel

Conference Announcements

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.

elm-conf is returning to St. Louis on September 28, 2017 for a day of learning, speaking, and connecting with the Elm language community. For more information and to register visit http://www.elm-conf.us/.

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.

Celebrate the 10th anniversary of the release of Clojure October the 12th – 14th at the Clojure/Conj in Baltimore, Maryland. Visit http://2017.clojure-conj.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/.

Moonconf will be taking place the 9th-11th of November. For more information visit http://moonconf.org/.

Clojure SYNC will be taking place in New Orleans on February 15th & 16th of 2018. For more information and to register visit: http://clojuresync.com/.

LambdaDays 2018 will be taking place February 22nd and 23rd in Kraków, Poland. For more information, and to register, visit http://www.lambdadays.org/.

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:18]

About Reid
Delphi
.NET
What set the stage for first exposure for functional programming
CodeStock
Rachel Reese
Rachel Reese’s episode of Functional Geekery
F#
Stop Writing Classes by Jack Diederich
Practical Functional Programming by James Coglin
What set the stage for F#
KCDC
Interface Segregation Principle
Scott Wlaschin
Scott Wlaschin on Functional Geekery Episode 66 and Episode 98
Railway Oriented Programming
Making the sale for folding F# back into work
Type Providers
Sharing the ideas of functional programming with co-workers
PHP
“Wow, you just don’t have that many bugs anymore”
Moving to functional programming in JavaScript from F#
Professor Frisby’s Mostly Adequate Guide to Functional Programming
Ramda
ramda-fantasy
Lining up the shapes of data
Haskell
PureScript
Reid’s presentation at LambdaConf
“It’s a much bigger ocean in JavaScript”
Introducing functional programming using JavaScript back into teams
Expanding functional programming concepts to broader communities
CodeMash
Tribes by Seth Godin
Functional Knox
Common pain points that help sell functional programming
Reid Evan’s YouTube channel talking functional programming in JavaScript
Planning an upcoming functional programming conference in Knoxville, Tennessee
Vision for what the conference might look like
“If we have 500 [people] we have to drastically change our ideas”
If you are interested in Functional Knox remotely reach out

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

Functional Geekery Episode 105 – David Koontz

In this episode I talk with David Koontz. We talk his introduction to functional programming, F#, Haskell, community building, the LambdaCast, and more.

Our Guest, David Koontz

@dkoontz on Twitter
LambdaCast
@lambdacast on Twitter

Conference Announcements

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.

elm-conf is returning to St. Louis on September 28, 2017 for a day of learning, speaking, and connecting with the Elm language community. For more information and to register visit http://www.elm-conf.us/.

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.

Celebrate the 10th anniversary of the release of Clojure October the 12th – 14th at the Clojure/Conj in Baltimore, Maryland. Visit http://2017.clojure-conj.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/.

Moonconf will be taking place the 9th-11th of November. For more information visit http://moonconf.org/.

Clojure SYNC will be taking place in New Orleans on February 15th & 16th of 2018. For more information and to register visit: http://clojuresync.com/.

LambdaDays 2018 will be taking place February 22nd and 23rd in Kraków, Poland. For more information, and to register, visit http://www.lambdadays.org/.

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:09]

About David
LambdaCast
How David got into software development
Starting in I.T. and moving towards game programming
First exposure to functional programming
Java
Python
Ruby
Structure and Interpretation of Computer Programs
SICP Lecture Videos
Being unsure of how to apply functional programming ideas in game programming
“Everything was harder than it should be”
C#
F#
Real World Functional Programming
Haskell
Elm
What clicked when understanding _Real World Functional Programming_
LINQ
Trying to apply F# back to game development and day-to-day experience
Unity
Takeaways from trying to apply functional ideas back to C#
RobotArms
Pipeline operators and chaining
Moving from F# to Haskell
Haskell Programming from first principles
Learn You Some Haskell
Bouncing off Haskell and landing on Elm
Retrying Haskell after Elm
Trying to bring Elm to day-to-day work
Electron
GitKraken
Flow
TypeScript
PureScript
Bringing functional ideas back into the community
Lunch and learns
Meetups
Lessons learned from the lunch and learns vs meetups
Building something as a group in the monthly meetup
Elm as front-end and Haskell as back-end languages
Maybes vs Nulls
Not having anything to hold onto when talking about different concepts
Response about having different level of experience between hosts
Advice for sharing your learnings as you progress
“If you knew any more, you wouldn’t fill this important voice on the podcast”
Aiming for a small, concise, irreducible version of an explanation
Desert Code Camp
“If you thinking of doing [a functional programming podcast] I want to lie to you and tell you it’s no work at all”
Going to where people are
Audience breadth of JavaScript or C#
Idris
Advice for community outreach
“Realize nobody can be an expert in everything”
Haskell Pyramid
Resources for getting started in functional programming
Professor Frisby’s Mostly Adequate Guide to Functional Programming
Ramda
Sanctuary
lodash
lodash/fp
FP Chat Slack community
Upcoming appearances
LambdaConf 2018
MoonConf
#lambdacast channel on FP Chat Slack community

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