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.

2 replies on “Functional Geekery Episode 106 – Reid Evans”

Great podcast. I’ll be looking up his youtube channel.

I think there might be some more nuance with the .NET community though. There are a lot of us that would like to push the envelope but it is hard to get people to off “mainstream”. I work at an office where I was hired on with the understanding that I could write some F#. I only did some things in F# because I know that I’m only one of about 3 people in AZ that does F#. Those some things there were clear advantages. But for the API hitting the database it is pretty dumb to begin with and the advantages of F# are minimal since most of the logic is in the database.

I explained to my boss all the benefits of functional programming and he didn’t understand it completely until he started using Kotlin (he is a Linux and Android lover – which makes it weird that he was having any .NET done to begin with, I think it had more to do with who he had available to do the work). Even though he is using Kotlin he can see some of the advantages (like no null) and the static typing but I think he still doesn’t fully grasp how powerful functional programming (when he told me that we are getting off .NET and moving to Kotlin for all the back end he said that I still need to write classes).

So, back to my original point. I think some of the reasons that the .NET community doesn’t move faster towards more pure functional programming languages are C# is a solid language (I would say it’s better than Kotlin even when talking about C# 6 – although C# 7 is even better and C# 8 is going to be awesome, which brings in more of what some of Kotlin already has but the features C# has more than make up for what Kotlin has), it is easy to find more C# programmers, a ton of the boilerplate work has been take care of with frameworks, libraries, and tooling – it works really well with SQL Server – probably one of the best SQL databases out there considering the amazing tooling it has like SQL Server Data Tools and SQL Server Management Studio.

I think the most important things to programming are static typing and CI/CD (as studies have proven). I think some of the greatest things functional programming brings to programming are Algebraic Data Types, Pattern Matching, pure functions, currying, and Type Providers. Not all of which are exclusive to functional languages but are definitely more natural.

I would add that when you come from other languages like Java and Objective-C that are such a bad experience to work with it is much easier to supplant them with more functional-like languages. Oh, that C# wasn’t such a great language! And that from someone who is a huge F# fan!

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.