Ask HN: Who's using Clojure, and to do what?
2 comments
I use it for my cooking recipe web site http://cookingspace.com. I do a lot of non-trivial calculations for adjusting recipes for ingredients on hand, etc. and the functional style of programming coupled with using maps for in-memory recipe and nutrition data makes it easy to experiment with new code and ideas. I use Compojure+Noir so I tweak UI or back end code, refresh the browser, and see my changes immediately. I also keep a repl open on the same code. In all, a very agile setup.
I also use Clojure for my natural language processing as a web service project (http://kbsportal.com). Both of these sites are 100% Clojure code.
After a long and satisfying career, I (more or less) retired at the beginning of this year and I am working on "side projects" full time :-) Clojure is a great language to use, and except for still occasionally helping old customers, I don't really use Ruby, Java, Scala, or Common Lisp anymore.
I also use Clojure for my natural language processing as a web service project (http://kbsportal.com). Both of these sites are 100% Clojure code.
After a long and satisfying career, I (more or less) retired at the beginning of this year and I am working on "side projects" full time :-) Clojure is a great language to use, and except for still occasionally helping old customers, I don't really use Ruby, Java, Scala, or Common Lisp anymore.
I am curious, how do you deploy your apps? What webserver do you use? Do you bundle these up with "lein uberwar" or "lein uberjar" or something else?
Good question. I have experimented with making WAR files and deploying to Tomcat, but I now use an easy alternative of using an embedded server: I have (in each project) a shell script to rsync the entire project to whatever server I am using for deploying the project. If I am running in production mode, I kill the old process on the server (I use beefy VPS's for my own stuff, AWS for customer work) and manually run:
nohup lein trampoline run prod > out.log &
Using trampoline is nice because it uses the same process for lein and your web app. This process takes me about 30 seconds of manual effort, and I really should completely automate it. I use IntelliJ with the Clojure plugin for most editing and IntelliJ has has some deployment tools that run internally in the IDE - I might settle on that, or use capistrano or something similar. That said, "devops" is such a tiny overhead for me on my own projects that my motivation is not so great to optimize my deployment process.
nohup lein trampoline run prod > out.log &
Using trampoline is nice because it uses the same process for lein and your web app. This process takes me about 30 seconds of manual effort, and I really should completely automate it. I use IntelliJ with the Clojure plugin for most editing and IntelliJ has has some deployment tools that run internally in the IDE - I might settle on that, or use capistrano or something similar. That said, "devops" is such a tiny overhead for me on my own projects that my motivation is not so great to optimize my deployment process.
It was used for my site gbedu.fm. In retrospect, it was a HUGE blunder.
Why?
You have such a limited pool of people to continue work on it.
Why?
You have such a limited pool of people to continue work on it.
Did you consider only the local, or also the global 'remote' talent pool?
both.
Very limited
Very limited
http://news.ycombinator.com/item?id=1453259
I am curious how things have changed.
Who is using Clojure now, and for what?