Categories
Podcasts

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.

Categories
Podcasts

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.

Categories
Podcasts

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.

Categories
Podcasts

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.

Categories
Podcasts

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.

Categories
Podcasts

Functional Geekery Episode 104 – Debasish Ghosh

In this episode I talk with Debasish Ghosh. We talk his introduction to Scala, domain modeling, lawful abstractions, extracting algebraic patterns from a code base, and more.

Our Guest, Debasish Ghosh

https://debasishg.blogspot.com/
@debasishg on Twitter

Conference Announcements

Compose Melbourne will be taking place August 28th and 29th. For more information and to register, visit http://www.composeconference.org/2017-melbourne/.

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.

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

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

About Debasish
C++
Java
Ruby
Python
Scala
Lightbend
Spark
Kafka
Setting the stage for discovering Scala
Spring
Hibernate
Unification of object-oriented and functional paradigms
Structure and Interpretation of Computer Programs
Scalaz
Haskell
Cats
Scheme
Scala bringing a statically typed language with higher-order functions
IntelliJ IDEA
Generating getters and setters as the way you do enterprise development
Setting the stage for domain modeling
Domain Driven Design by Eric Evans
Bounded Context
“Domain model is possibly the most important artifact in the life-cycle of a project”
DSLs in Action
Why Functional Programming Matters by John Hughes
Functional Modules and how they relate to Bounded Contexts
First reaction Scala
Starting in Scala by writing tests
Design Patterns in Dynamic Programming presentation by Peter Norvig
Bridge and Strategy patterns as higher-order functions
First encounter with Scalaz
Algebraic Design
Monoid as a design pattern in functional programming
“Use the least powerful abstraction that applies to your use case”
How algebraic types work in Scala
Money as a Monoid
Importance of Lawful Abstractions
Domain models, Algebraic laws and Unit tests
Mining your codebase for Algebraic patterns
Refining abstractions to less powerful abstractions after initial identification
References to where to understand the different algebraic types
Typeclassopedia
Functional Programming in Scala
Functional and Reactive Domain Modeling
Rúnar’s Episode of Functional Geekery
Haskell productivity pyramid
Functional and Reactive Domain Modeling
Functional Conf
India Erlang & Elixir Factory lite
Scala eXchange 2017

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

Categories
Podcasts

Functional Geekery Episode 103 – Justin Schneck

In this episode I talk with Justin Schneck. We talk embedded Erlang and Elixir with the Nerves Project, where Nerves fits in the landscape of embedded systems, prototyping vs deployment, and much, much more.

Our Guest, Justin Schneck

http://mobileoverlord.com/
@mobileoverlord on Twitter
mobileoverlord on Github
Nerves Project
@NervesProject on Twitter

Conference Announcements

Elixir.LDN will be taking place on August 17th. To help encourage inclusion and diversity 30 Free Scholarship places are available. Visit http://www.elixir.london/ to find out more and register.

Compose Melbourne will be taking place August 28th and 29th. For more information and to register, visit http://www.composeconference.org/2017-melbourne/.

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.

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

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 [@4:53]

About Justin
Elixir
Phoenix Framework
Justin’s desire to start his motorcycle from his phone
Arduino
Ecto
Microsoft TDS Driver in Ecto
The Road to 2 Million Websocket Connections in Phoenix
Setting the foundation for the actor model from embedded systems
Raspberry Pi
Raspbian
Erlang Ale
Nerves Project
Justin’s introduction to Nerves
Frank Hunleth
Garth Hitchens
Rosepoint
“Why can’t I just run a Raspberry Pi”
Nerves as suite of helper libraries
Elixir Ale
Nerves as tool to build deployment images
Ability to get minimal opt-in package images
Creating a meal from a grocery kitchen versus at home
Buildroot
What might deployment to production look like
ErlInit
BeagleBone Black
LinkIt Smart
“Anything you can do in Buildroot you can essentially turn into a composable Nerves system.”
“Microcomputers” vs microcontrollers in the Nerves world
Hard real time constraints in Arduino vs soft real time requirements
Nerves.UART
MQTT
EMQ
Le Tote
Key factors Elixir is good at for embedded systems
Wendy Smoak building a cat feeder in Nerves
Bootloader
SystemRegistry
Booting to Erlang/Elixir as process-zero
Dynamic configuration in Nerves
Elixir on Nerves on Lego EV3 brick
Le Tote kiosk on Raspberry Pi or x86
Call to action to get started in Nerves
“Blinking lights as the Hello World of hardware”
Nerves on HexDocs
Nerves Examples
Pi Zero W
Nerves.Firmware.SSH
“Don’t be afraid to do things that have already been done, just for the experience of knowing how to get those things accomplished”
Where to share one’s projects and experiences
#Nerves in Elixir Lang Slack
Elixir Forum
Erlang Factory San Francisco 2017
Erlang User Conference 2017
ElixirConf
LeToteTeam on Github
Thank You to the community

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

Categories
Podcasts

Functional Geekery Episode 102 – Brian Hicks

In this episode I talk with Brian Hicks. We talk his into to Elm, Elm Conf, the State of Elm Survey, community building, and more.

Our Guest, Brian Hicks

https://www.brianthicks.com/
The JSON Survival Kit – Use code `geekery` for 10% off
@brianhicks on Twitter
brianhicks on Github

Conference Announcements

Compose Melbourne will be taking place August 28th and 29th. For more information and to register, visit http://www.composeconference.org/2017-melbourne/.

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

Moonconf will be taking place the 9th-11th of November. For more information visit http://moonconf.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 [@4:20]

About Brian
NoRedInk
Elm
I Brian got introduced to programming
PHP
Python
Haskell
Functional Programming Principles in Scala Coursera Course
STL Python Group
Learning “You can implement any collection operator with foldl and foldr”
Experience folding functional programming constructs back into Python
Celery
Go
Strange Loop
Make the Back-end Team Jealous
Mantl
Mantl UI frontend
Ansible
Mesos
Kubernetes
First experience getting into Elm
Union Types
start-app
JSON.Decode library
Pipeline operator in Elm
Currying in Elm
Error Messages in Elm
Using the compiler as a tool to guide a refactoring
What prompted putting on Elm Conf
St. Louis Elm user group
Elm Conf US 2017 is taking place September 28
State of Elm Survey
State of Elm Survey 2017 Results
State of Elm Survey 2017 overview
elm-format
Integrating Elm into your existing JavaScript application
style-elements from Matthew Griffith
High level picture of Elm components
“The benefit of Elm is creating apps that don’t break”
“Elm approach to API design is rather like grilling something versus cooking it sous-vide
Teasing Elm Conf 2017
Strange Loop
“I’m happy to recommend restaurants as I am local”
Elm Conf US compared to other Elm Conferences
Elm Europe
Oslo Elm Day
Encouragements for getting more Elm Conferences
Start a Elm user group
Recommendations and places to get started
dreamwriter
builtwithelm.co
Elm Slack
Elm sub-reddit
Elm in Action
The JSON Survival Kit
Use code `geekery` for 10% off
Planet Elm

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

Categories
Podcasts

Functional Geekery Episode 101 – Adam Chlipala

In this episode I talk with Adam Chlipala. We talk Coq, proof assistants, getting started, tooling, domains for advancement using proofs, Ur/Web, and much, much more.

Our Guest, Adam Chlipala

Adam’s home page

Conference Announcements

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

Elixir.LDN will be taking place on August 17th. To help encourage inclusion and diversity 30 Free Scholarship places are available. Visit http://www.elixir.london/ to find out more and register.

Compose Melbourne will be taking place August 28th and 29th. For more information and to register, visit http://www.composeconference.org/2017-melbourne/.

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

Moonconf will be taking place the 9th-11th of November. For more information visit http://moonconf.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:07]

About Adam
Coq
“Theorem proving is a secret weapon for improving the way we build systems”
Adam’s first encounter with ML
Going from ML to Coq
What theorem proving looks like today
Addictiveness of proving software
Xavier Leroy – creator of OCaml
Good domains of software for proof assistants
Compilers
Overall technology of effective proofs
Interfaces between components
The Science of Deep Specification
@deep_spec on Twitter
Proving at the internal layers of a system
Generative Testing compared to Proof Specifications
QuickChick
What using Coq to do your proofs looks like
Proof General
Coq IDE
“We should be able to take all the mental effort going into unit testing and put it into specifying and proving instead, for at least some important classes of systems.”
How to start moving toward adopting proof systems
Bedrock
Kami
Software Foundations by Benjamin Pierce, et. al.
DeepSpec project summer school
What domains where formal proof systems fit well
Heartbleed
Cryptography
Fiat Cryptography
Systematic Synthesis of Elliptic Curve Cryptography Implementations
TLS 1.3 standard draft
Ur
Ur/Web
Tier-less languages
How Ur/Web works at a high level
Automatically compiling Ur to Server code, Client code, or SQL depending on context of usage
Selling points of Ur/Web for Haskell or ML fans
Object Capability Discipline
The Ur/Web People Organizer
How Higher-Kinded Types fit in Ur/Web
Ur/Web’s concurrency model
TechEmpower Web Framework Benchmarks
Importance of database transactions and their usage in Ur/Web
Automatic retry of transaction failure built into Ur/Web
Fiat
Building a DNS server using Fiat
The End of History? Using a Proof Assistant to Replace Language Design with Library Design
SNAPL 2017

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

Categories
Podcasts

Functional Geekery Episode 100 – Mark Allen

In this episode I talk with Mark Allen. We talk his introduction to Erlang, deployment, Mark’s various projects, lessons in distributed applications, and much more.

Our Guest, Mark Allen

@bytemeorg on Twitter
mrallen1 on Github

Conference Announcements

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

Elixir.LDN will be taking place on August 17th. To help encourage inclusion and diversity 30 Free Scholarship places are available. Visit http://www.elixir.london/ to find out more and register.

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

Moonconf will be taking place the 9th-11th of November. For more information visit http://moonconf.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 [@4:43]

About Mark
How Mark moved from systems administration to software development
Alert Logic
Erlang
Akka
Microsoft Orleans
Akka.NET
Mark’s first exposure to Erlang
Erlang’s virtues as stumbling blocks to newcomers to Erlang
Understanding loops via recursion
Seeing the power of Erlang with long running concurrent tasks
“[Erlang] makes easy things hard, and hard things easy”
OCaml
Scala
Moving from understanding syntax to thinking in processes
Messages and Mailboxes as a means to concurrency
“If you do have surprises, it’s because you forgot to update that part of the state”
Basho
Making the transition to deeper distributed computing with Erlang
Riak Core
“[In Riak Core] the unit of computation is a VNode”
udon
Reid Draper on Functional Geekery Episode 6
Continuing to fall victim to the fallacies of distributed computing
The Network is Reliable
Deployment story of Erlang
Riak
RabbitMQ
“Your team owns the code… You own the problem the entire time”
AWS and Docker
hex.pm
Project to build a repository behind the company firewall
Elixir
Administrating Erlang
folsom
exometer
Datadog
lager
Error logging and potential to crash the vm with large state
Erlang/OTP release 20.0
Erlang hot-code loading compared to deployment with Amazon AWS and Docker
Ability to patch long running services while still running
“Don’t be intimidated by Erlang”
Way Erlang has changed the way Mark thinks in other languages
Alert Logic is hiring if you want to write Erlang day-to-day
Examples of good Erlang structure
throwdown
Midewest.io
Taipan
parque
udon
kerl
Erlang User Conference 2017
Sagas in Erlang
gisla
Curry On Barcelona
The Sharp Edges of Leaky Abstraction

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