So Long 2014: Year Highlights
Another year is about to end and as it is tradition in this blog it’s time to look at the year’s highlights!
I have been advocating Functional Programming and Clojure for a while now and 2014 has been good to me. It was the first year where I was paid to work almost entirely in functional languages. Most of it was in Scala and a little less in Clojure.
I’m also thankful for the opportunity to have organised the first Sydney edition of ClojureBridge, a workshop aimed at increasing diversity in the Clojure community by delivering free workshops for women. You can read more about what we did on the day here.
I’m looking forward to a very functional year!
The book has been a while in the making and I had no idea of the amount of effort involved in writing one. I’m mostly content-complete now but working through a number of useful bits of feedback I got from early reviewers. I expect to be done with these in January and then the book should go into production.
I’ll keep everybody posted :)
Most of what I read this year - with the little free time I had - were academic papers and I would like to highlight a few that I particularly enjoyed:
- Monads for functional programming
- Propositions as Types
- Theorems for free!
- Monoids: Theme and Variations (Functional Pearl)
- Functional Reactive Animation
- Push-pull Functional Reactive Programming
- Elm: Concurrent FRP for Functional GUIs
Additionally I can’t help myself and recommend that you read Functional Programming in Scala if you have any interest in FP and Scala. Rúnar and Paul have done a great job and put a lot of good advice in this book.
Between work and writing the book I’m happy I managed to speak this much:
- The Algebra of Library Design (no slides but more about it soon) - Sydney Clojure User Group, October 2014 - Sydney, Australia
- High Performance web apps in Om, React and ClojureScript - LambdaJam, May 2014 - Brisbane, Australia
- Taming asynchronous workflows with Functional Reactive Programming - EuroClojure, April 2014 - Krakow, Poland
- Taming asynchronous workflows with Functional Reactive Programming (portuguese) - QCon, March 2014 - São Paulo, Brazil
- Monads in Clojure - Sydney Clojure User Group, February 2014 - Sydney, Australia
Here’s the Top 5 posts from this blog in 2014:
Functional Composition With Monads, Kleislis and Functors - With learning Scala and Scalaz, I’ve come to learn new ways of composing programs. This short post is a brief look on one of them, Kleisli arrows.
Monads in Small Bites - Part I - Functors - I’m pleasantly surprised this post ranked this high. It’s from a series about Monads and I’m glad it has been helping people understand the general idea behind them.
Clojure and ‘Why Calculating Is Better Than Scheming’ - A fresh look at this popular paper by Philip Wadler from a Clojure perspective.
Purely Functional Data Structures in Clojure: Red-Black Trees - This post is from a series - though I only have two posts at the moment - about persistent data structures in Clojure.
If this tells me anything it’s that I need to blog more!
Happy new year! Here’s to an amazing 2015!