Hacker News new | ask | show | jobs
by prpatel 4634 days ago
You need to learn Clojure. I would bet since you've been a developer for 23 years you've probably tried Clojure already - especially since it's popular among the Java/JVM crowd. Here's why, in the context of your post, I think you would like it:

1) Is dynamic like JavaScript, the learning curve for a seasoned developer such as you would be low and you'd get velocity quickly

2) Allows you to focus on the problem solving at hand rather than spending a bunch of time just build base classes to model your solution

3) Refactoring is easier as Clojure puts you on the road to pure functional programming, and your solution is not complected (or at least has low complection)

4) Has a nice interactive environment for prototyping/developing, much like some of the JavaScript tools out there

5) Can emit JavaScript for the browser using ClojureScript

1 comments

Thanks for the advice! I have toyed with Clojure, but the idea of functional programming without a procedural escape hatch for any real world project puts me off a bit after doing ML at university.

What would be the best book to read to get me excited about Clojure, in your opinion?

I also love Clojure, but I would recommend learning Scala. Its essentially a vastly improved Java. Or you could say its vastly improved on many previous languages. But at its core it is Java (JVM).

Its easy to read, succinct, functional or OOP when you want it to be, and you can work directly with any java library. Its really a well designed language.

The only downside is that the compile time is very slow, whereas with Clojure you can develop on the fly.

The downside to Clojure is that the code is very dense to read. But if you have the time I also strongly recommend playing with it for a week.

Scala play! is a pretty good web framework.

There's several good Clojure books. I'd start with Rich Hickey's video "Simple made Easy":

http://www.infoq.com/presentations/Simple-Made-Easy

The "Joy of Clojure" is the best book on understanding the mid and high level constructs and design of Clojure (and FP). It's not a beginner book though - for that the books from the Pragmatic Programmers or Oreilly are excellent.

Thank you!