PurelyFunctional.tv Newsletter 248: Weapons, GraphQL, and the return of an old acquaintance

Sign up for weekly Clojure tips, software design, and a Clojure coding challenge.


Issue 248 - October 23, 2017


Hi Clojurers,

I'm deep in content-production mode on my next course. That means I did not watch or read as much this week as I sometimes do.

Please enjoy the shorter issue!

Rock on!
Eric Normand <eric@purelyfunctional.tv>

PS Want to get this in your email? Subscribe!


Weapons of Math Destruction Book

As computers give us more help, and computers make more decisions for us in our lives, we should be aware of the dangers inherent in how they work. Algorithms are considered neutral, yet it is this neutrality that makes them amplify existing problems.

Some example dangers:

  • Training a model with historical data may train the model on pre-existing biases.
  • Once an algorithm is used to make decisions, it could become a positive-feedback loop, creating the evidence for its own efficacy.
  • Current algorithms go against many of the ideals we hold dear. For instance, we want to judge a person by their actions instead of what a group they belong to has done in the past. Algorithms do bucket people into groups (often called clusters) based on statistical correlations, then treat everyone in that group the same.

I was initially afraid to read this book because I already dislike technology enough. I didn't want another bleak outlook on the future. But I faced it and read it anyway. The book has made me rethink my relationship to algorithms. If anything, I want to make sure a person is somewhere in any loop involving a statistical system.


The REPL

I'm very happy to see the REPL is back with its excellent newsletter. I missed it while Daniel was away for the winter.


The Ultimate list of Functional Programming Conferences

I've made a big list of all of the functional programming conferences I could find. Is your favorite conference on the list? Have you found any errors? Let me know!


Clojure SYNC

I am continuing work on Clojure SYNC, the conference I'm running in New Orleans. Please buy a ticket. If you're thinking about sponsoring the conference, that program is coming soon!

Do check out the speaker line-up. I personally invited each of them to ensure that we had nothing but consistently engaging speakers.

And if you have any questions, just reply to this email. In addition, I'd love to hear what's stopping you from buying a ticket :)


The Case for Clojure and GraphQL: Replacing Django

Rodrigo Landerdahl had quite a positive experience with Clojure and GraphQL. Short version: ecosystem is not as good a Django, but the Clojure codebase was smaller, had fewer bugs, and caused fewer arguments.


How can more layers be more efficient?

From the archives: 18 months ago, people were still wondering how ClojureScript + React could be faster than React, and how React could be faster than manipulating the DOM by hand. Each layer is adding indirection. So how can it get faster the more you add? Read the article for my take.