ckChris Krycho

Theology, technology, life & art

  • Art
  • Tech
  • Theology
  • Series
  • About
  • C.V.
  • Now

Level up your `.filter` game

A really *smart* introduction to functional programming.

August 18, 2018Filed under tech#functional programming#javascript#links#pedagogyMarkdown source

Adam Giese’s “Level up your .filter game” does something really interesting and helpful: it introduces a bunch of fairly sophisticated functional programming concepts without ever mentioning functional programming and without ever using any of the jargon associated with those terms.

“Level up your .filter game” gives you a reason to use some standard FP tools—currying, higher-order functions, composition—in your ordinary work. It’s pitched at working JS developers. It gives a real-world example of wanting to filter search results based on user input. It shows the utility of defining a bunch of small functions which can fit together like LEGO.

Filters are an essential part of JavaScript development. Whether you’re sorting out bad data from an API response or responding to user interactions, there are countless times when you would want a subset of an array’s values. I hope this overview helped with ways that you can manipulate predicates to write more readable and maintainable code.

I commend the piece to you not so much for the explanation of how to use JavaScript’s Array.prototype.filter effectively (though it has some good suggestions that way!) but primarily as a great example of the kind of pedagogy we need a lot more of to demonstrate the value of functional programming in ordinary, day-to-day development work.

Connect

  • Email
  • GitHub
  • Twitter
  • SoundCloud
  • LinkedIn
  • Vimeo
  • Stack Overflow

Support Me

  • Patreon
  • Cash.me

Subscribe

  • Email

Feeds

  • Everything
  • Art
  • Blog
  • Tech
  • Theology

Recent

  • Art: Photography-ing Again!
  • Blog: Sympolymathesy, or: v5.chriskrycho.com
  • Tech: Test the Interface
  • Theology: Review: What is an Evangelical