PurelyFunctional.tv Newsletter 273: Robots, Categories, Aikido

Issue 273 - April 16, 2018 · Archives · Subscribe

Hi Clojurers,

Besides working on the new design, I've been catching up on conference talks from around the world. There have been some great ones and I try to capture some of the ideas stirring around the growing Functional Programming community.

Please enjoy the issue.

Rock on!

PS Want to get this in your email? Subscribe!

How to Survive the Robots

Kim Crayton's talk at Clojure SYNC 2018 urged us to develop a different skillset beyond programming. Artificial Intelligence is going to replace our jobs at some point. To remain relevant in the short term, we need to do what computers still can't. We need to solve human problems.

Sometimes I find myself solving a problem in code when it's probably better solved in some other way. We need to think beyond our coding skills and see problems at a more human level.

ElixirDaze Keynote YouTube

Rob Conery talks about something that I think about all the time. He's facing this problem: WordPress and Rails are good enough for most business problems. What value is there in Elixir or Erlang? Of course, I think about it as it relates to Clojure.

My best answer for Clojure is "your business problems are complex enough; you want a language that won't add extra complexity on top". It gets a nice reaction, because it's unexpected. Most people are expecting a particular domain it's well-suited for, like web programming or big data. A more philosophical stance comes out of left field.

But lately, I've been dissatisfied with the answer. There are thousands of concerns to the business. Complexity of software might be one of them. But the best way to avoid that is to not develop software at all and instead use something off-the-shelf. So it's

Categories for the Working Hacker YouTube

Philip Wadler (inventor of Haskell's Type Classes and FP superhero) begins this talk thusly:

Some people say "I can't use mathematics. It's too hard." No no no!
What's hard is *not using the mathematics* when you can. ... JavaScript
is much harder than mathematics. Mathematics is designed to be
understood and sensible and consistent.

In Praise of Higher Order Functions YouTube

Mary Sheeran (FP professor extraordinaire) works through several seminal papers in Functional Programming dealing with higher order functions. She traces the use of them from the original Lisp system through Christopher Strachey, Kenneth Iverson, and John Backus, among others.

Visual-textual functional programming with Luna YouTube

Piotr Moczurad describes Luna, which is a mixed visual/textual language. They take some interesting approaches to visualization.

Lisp, Jazz, Aikido PDF

Didier Verna published a very personal journey where he discovers how he relates to Lisp, Jazz, and Aikido in the same way.

Freestyle, Free & Tagless: separation of concerns on steroids YouTube

Michal Plachta shows us how to use advanced mathematical constructs to separate concerns like logging, communication, and persistence.

Apropos #6 YouTube

In which we talk about code style and ClojureScript without React. We also calculate the 10,001st prime number at the REPL!

Thoughts on Functional Programming

If you haven't checked out my new podcast, please do! It's an off-the-cuff recording of the big ideas in functional programming.