Hacker News new | ask | show | jobs
by brundolf 1221 days ago
I don't use Clojure and I probably never will, but I love seeing the way it's been kind of a jailbreak moment for Java programmers trapped in enterprise practices. It was laser-focused to give specifically those people access to a whole lot of highly-productive and pleasant language features, wrapped up in a package that enterprise management could be amenable to. It seems like it succeeded in liberating a bunch of people at their real jobs, which is cool to see
3 comments

You just described the last decade of my career more succinctly than I could.

Only extension being I applied the momentum boost to bootstrapping a startup and escaped the enterprise world entirely (other than sales back to that world).

Good times, lots of programming. A++ would buy again.

I've had a couple of jobs doing Clojure full-time, the problem is that Java jobs pay better.
Usual response to that is that there's a skew in Clojure related data as its community consists of mostly experienced devs.

I know it's anecdotal evidence but I'm doing Java right now because I couldn't find a Clojure job that pays nearly the same (and I already used Clojure for 5 years in production environment).

I think there are lots of problems with relying on this. As others have pointed out it could mean that Clojure devs skew more senior. An other issue with these surveys is that this factoid from Stack Overflow is a highly celebrated and oft-reposted part of the Clojure cultural canon and so Clojure developers may be motivated to fill out the survey more than others, especially if they have high income, and may even be tempted to exaggerate their income. For me, all of this is moot. In my country of Canada, there are currently 34 job postings on LinkedIn which even mention Clojure and among those, almost all of them just mention Clojure in passing, such as "nice to have: a functional language like Scala, Clojure or Haskell". Maybe among these 34 postings like 4 are actual jobs looking for people to write Clojure. For comparison, there are about 37,000 postings mentioning Python. With a ratio of more than 1000 to 1, it is impossible to argue that knowing Clojure will be more beneficial for a developer's career than Python, for instance.
Lol, love how high Crystal is on that list. You can get Crystal jobs now?
Once you get experienced enough, you can include a "only program in X" and still get hired :)
I would take a pay cut to work in a sane language like clojure.

I do python now :(

> I would take a pay cut to work in a sane language like clojure.

Honestly this is probably part of the reason Clojure jobs can pay less.

Same experience here. And the irony is many of these clj jobs are from understaffed startups. So basically you end up doing like 3 men's job for 80% pay of a normal java dev. And I'm not counting cljs, most likely you'll deal with cljs as so called 'fullstack' engineer and doing like 4 men's job with one salary. Clojure is fun to program, but as a day job, that really depends..
> I've had a couple of jobs doing Clojure full-time, the problem is that Java jobs pay better.

That sounded to me as if someone said: "I had gigs working as a crane operator, the problem is that working as a bricklayer pays better..."

Not only your statement is wrong, typically Clojure devs get paid more, but you're also missing the fact that these aren't comparable trades, on many facets.

> It was laser-focused to give specifically those people access to a whole lot of highly-productive and pleasant language features, wrapped up in a package that enterprise management could be amenable to.

On the contrary, Clojure was not focused on satisfying business managers, but on satisfying programmers. It's a good thing that it

also

suits business managament, but that's not its purpose.

It was designed to be a practical insert into existing Java codebases and orgs. If it hadn't been, it wouldn't have gained the adoption that it has.
Can you back that up? Clojure was sold by Rich Hickey as an alternative to Java which he hated working with for more than a decade. If some companies managed to integrate it as you suggest fine but that was not what it was designed to be.
Here's a relevant excerpt about the cultural roots, from the recent Clojure Turns 15 panel: https://youtu.be/exSRG-iL74Q?t=191

But most shops using Java would be resistant to adopting a whole new language, especially an audacious lispy language.

So Clojure worked really hard on having good interop support for Java, which meant you could adopt it incrementally into an existing JVM codebase; you don't have to do a ground-up rewrite (scary to cost-cutting stakeholders)

It also meant they didn't have to bootstrap a fresh, immature library ecosystem from scratch (also scary to stakeholders)

They took a very practical approach that acknowledged the existing landscape and introduced idealism into it, instead of trying to create a whole new, blessed island that nobody would ever visit outside of hobby projects. Which is the same thing other successful new languages have done- Kotlin (also with Java), Rust (with C/C++), Zig (with C), TypeScript (with JavaScript).

I'm not sure further reference is needed, it just feels really obvious that this was the strategy. Of course Clojure can and has grown beyond just that use-case, but you need to get a foothold first.