To celebrate the first day of the Clojure West conference, this entry of the
(take...) series forcuses on the inimitable Baishampayan Ghose. As Clojure grows and gains mindshare, more and more companies are betting their success on the language, and Baishampayan's company Infinitely Beta is quite unique. In this installment we'll focus on finding Clojure, Clojure in India, and Clojure's past conferences.
How did you discover Clojure?
I have been a Lisp aficionado for as long as I can remember. I studied Scheme when I was in college and my first job out of college was a travel startup where I had the privilege of building an air search & ticketing platform in Common Lisp.
I first read about Clojure on comp.lang.lisp in early 2008 but I was quick to dismiss it in my mind because I was not too sure about its utility and honestly, I abhorred the `J' word :-)
One day, we incurred a loss of a million Rupees at my company because of a bug that got triggered by my (apparently pure) code due to our usage of mutable datastructures in Common Lisp. That made me grow a distaste for any language that had mutable datastructures by default and I started looking at Clojure in earnest.
I watched Rich's videos, read anything that talked about Clojure and started writing little bits of code in Clojure to get a feel of the language. It took me some time to understand Clojure's state management semantics and its relationship with the JVM but when I did, I was truly enlightened.
How are you using Clojure in your business?
We are two year old startup and we've been a Clojure company from day #1.
We've built two products so far, the first one being a equities research and portfolio management application for the Indian stock market trader. We used Clojure to build the backend that would do all the data-processing and expose a REST API for the frontend to consume.
The new product that we are building is a social CRM platform for enterprises. This product is built completely in Clojure from front to back. We are expected to launch before the end of this year and I will make announcement when we go live.
The only thing left for us is to move to ClojureScript and then our circle will be complete.
What motivated you to start Planet Clojure?
I was just scratching my own itch. That was mid-2009 -- we were busy building our first product and I wanted to keep a tab on all the Clojure related blogs in one place so that I could keep myself abreast with the latest happenings in the Clojure world. We have come a long way since then as we now track more than 300 Clojure blogs! A big shout-out goes to Alex Ott who has been instrumental in growing and managing Planet Clojure.
You've been to both Clojure conferences (and now the third!); what were the differences between the latest and the first?
My first reaction when I heard about the Clojure/conj 2010 was "Wow! Clojure is going mainstream". When I got to the conference I was amazed to meet and interact with the stars of the Clojure community and people whom I had known only from their blogs/tweets. I was fascinated to peek into the minds of people using Clojure to solve real-world problems, I felt that my decision to bet my startup on Clojure not all wrong -- I felt vindicated.
To me, the first conference was about Clojure asserting itself as a first-class programming language that could be used to solve all kinds of problems elegantly; it was about firmly establishing the very ethos of the language.
But the last one took the cake. While the first one was about Clojure being able to do certain things, the last one was about showing the world how it's done.
Since the first Clojure/conj the community has been able to come up with some absolutely mind-blowing things that address some really tough problems, problems that people otherwise dare to attempt solving.
Here we have David Nolen going into the hard-core land of Logic Programming, Pattern Matching and Predicate Dispatch, giving us tools to tackle really hard problems with equal amounts of ease and elegance. With the blessings of none other than Professor Friedman himself, I am sure David (and Ambrose) will take us to even greater heights.
We have Sam Aaron, with his amazing creation Overtone showing us how we can transplant Clojure's mind-blowing abstractions into a completely different domain, and thereby augmenting the whole creative process of making music.
And of course, there was ClojureScript, yet another gift to the world from Rich Hickey proving once again that simplicity, power and focus, when combined can help us solve some really tough challenges.
In a way, while Clojure/conj 2010 was about signalling the arrival of Clojure, Clojure/conj 2011 was about taking Clojure to completely uncharted territories, where no other programming language has gone before.
What is the state of Clojure in India?
As far as I know, we are probably the only Indian product company that does Clojure full-time. There are a tonne of people who are using or learning Clojure at a personal level but I guess there is still time before it's adopted by more companies. Most software companies in India do services exclusively so many times they can't bid for Clojure projects because they don't have any Clojure expertise and since they don't get those projects they don't find it worthwhile to invest in developing any expertise in Clojure. So it's kind of a chicken-and-egg problem. Having said that, India has a growing startup ecosystem and I think if Indian startup founders adopt Clojure in some way it will not only be a great competitive advantage for them, it will also help them in attracting talent -- it has certainly been that way for us.
I do a lot of Clojure evangelism in India by speaking at events, user-group meetings, etc. In the past I had conducted a 2 a day, completely gratis Clojure course and I would like to conduct one again, given sufficient interest.