June 19, 2017

Clojure Rising

#Still Here, Still Doing Clojure It's been a while since I've added to my blog over at fn-code. If you were to speculate that this is because I am no longer a Clojurian, you would be very wrong. In fact, from my perspective Clojure adoption and usage is alive, well, and growing in both my own life and in the community.

As far as the lack of blogging goes, here's a summary of what's been going on with me:

  • I changed jobs in late 2015 and moved from New Mexico to Idaho.
  • I've been actively evangelizing and promoting Clojure within my own company, to great effect. This takes a lot of time.
  • Other competing interests: Family, personal coding projects, learning IoT, reading books, playing games, sleeping, etc.
  • Google modified Drive to no longer serve up JavaScript libraries and other assets which made blogger a much less attractive blogging platform. Finding and implementing a good workaround has been a time suck.
  • Blogging is hard. If you don't believe me, try to write an informative and interesting post. Then continue to do so on a regular basis.

So, despite the lack of blogging I've still been living the Clojure dream. My public presence has just been reduced due to competing interests for my time. A few weeks ago, though, there was a minor kerfuffle on some of the interwebs regarding the early demise of Clojure that made me think I should get back into the blogging scene. My audience probably isn't huge, but I still wanted to let people know that in my world, at least, Clojure is not dead, but is very much on the rise.

#Clojure Rising From where I sit, I am personally witnessing rising Clojure adoption and enthusiasm.

At my former employer, Sandia National Laboratories, my team has gone "all in" on Clojure. Here's a talk given at Clojure/conj 2016 from a former co-worker, Jennifer Lewis, about her experiences:

I don't stay in frequent contact with my Sandia colleagues, but when I do hear from them they are still going strong on the Clojure front.

At my current employer, Clearwater Analytics, there is one team of 9 developers that are "all in" on Clojure as well as a few others that work on smaller projects in Clojure. When I started out at Clearwater in September 2015 I was the only hard core Clojure developer. A few others had dabbled in the language and really liked it but nobody was doing any full time work in it. That's a substantial change in just over a year and a half. We even have a full-time job posting exclusively for Clojure developers.

Beyond my own experiences, I see many companies that are doing really interesting work in Clojure as well. Companies like Walmart Labs, LonoCloud, and ThreatGrid (to name a few - there are many others) are doing really amazing work to solve challenging problems and the recurring theme is that Clojure is a major enabler. Teams that have adopted Clojure often report having the common experience of being more productive and having more fun while doing it.

So, yes, I see a lot of opportunities in the Clojure landscape and I think things are only going to get better. Smart teams are continuing to see the Clojure ecosystem as a way to implement creative, cutting-edge solutions to problems much faster than other technologies and they are having fun while doing it.

#Recommitting to the Blog Despite the rosy outlook from my perspective, I see that not everything is perfect in Clojure-land. We are still a relatively small community that needs to work to foster growth and adoption. For my part, I am going to try to get back into providing regular blog content that is useful to the community.

A couple topics that I think would be of value are:

  • Functional programming basics: Learning Clojure, functional programming, and new tooling (e.g. Emacs+CIDER) at the same time can be daunting. For many Clojure neophytes, this is the situation. I have some ideas for posts that illustrate some of the basic concepts to help those trying to get into the FP paradigm while also learning Clojure.
  • Adoption tips and tricks: I have had the great opportunity of leading adoption of Clojure at two different organizations. This wasn't serendipitous. I'll blog on this and provide some advice to those of you who want to do Clojure full time but aren't seeing a path to it.

I'll also continue to blog about topics of general interest regarding Clojure.

#Aside: The New Platform After experiencing frustration with blogger I spent a bunch of time looking at alternatives. After some recent posts from the community about Cryogen I decided to give it a shot and all I can say is that it is awesome. So, this is the new home for my blog. I've migrated all of my old posts over as well. I hope you come back soon.

Tags: clojure clojurescript