Five years ago DRW Trading was primarily a Java shop, and I was primarily developing in Ruby. Needless to say, it wasn’t a match made in heaven. Fast forward five years, Clojure is the second most used language in the firm, and the primary language for several teams (including mine). Clojure wasn’t the first language that I’ve introduced to an organization; however, it’s unquestionably the most successful adoption I’ve ever been a part of. The use of Clojure has had many impacts on the firm: culturally, politically, and technically. My talk will discuss general ideas around language selection and maintenance trade-offs, and specific examples of what aspects of Clojure made it the correct choice for us.
A few highlights
- Where to first introduce a new language and your role as the language care-taker.
- REPL driven development, putting TDD’s ‘rapid feedback’ to shame.
- Operations impact of adding a language – i.e. get ready for some DevOps.
- Functional programming, the Lisp Advantage, and their impact on maintainability.
Of course, no good experience report is all roses. The adoption has seen several hurdles along the way, and I’ll happily to describe those as well.