Live data from Hacker News

Clojure at Netflix (2013) [slides]

speakerdeck.com

41–50 of 307 posts

Re: Clojure at Netflix (2013) [slides]

#41
post #37
post #30

Earlier quoted context omitted.

The cancellation of a few major Clojure conferances hasn’t helped. I’m guessing it speaks to demand. I used Clojure for a long time, professionally. Not much any more. Main issue is that the language is not very readable (a pain point mentioned in these slides) and very hard to find people to work in it. Also more than any other language Clojure is very sensitive to typos in your code. A misspelled keyword results in…

>>A misspelled keyword results in nil accidentally flowing through your app. Some dynamic languages, worked around this issue in the 90's. Perl for example, if you use 'use strict; use warnings' will catch most of these misadventures. Having said that, only the most novice programmers make these kind of mistakes. Like the absolute beginners, in the first day or two of exposure to programming. As a rule almost any sho…

They just disagree without explaining why. Anyways, I sometimes have typos in my Clojure code, but once I follow through with your mental model and just reproduce the problem in REPL it is easy to find these sort of bugs.

Re: Clojure at Netflix (2013) [slides]

#42
post #3

What happened to Clojure? Was it just a fad, or are people still using it in their day jobs? Are people still hiring Clojure devs? If you write Clojure at work, are you happy with it?

I work for one of the big "brand name" companies (I don't want to say which, but it's on the "companies using Clojure page"), and on my team we try and start all new projects to use Clojure.

Frankly, I love it. After the "zen" of lisp clicked for me, Clojure gave me an OS/2-style "Better Java Than Java". Suddenly I was able to compose standard JVM library stuff in a more-natural and easy way than I could in vanilla Java, I was able to easily define relatively-well-optimized persistent data structures, and I could quickly provide new semantics to the language as I saw fit. Also, the Clojure REPL provides an amazing level of increased productivity.

Do I miss the Hindley-Milner type system from my last job? A bit, but surprisingly it doesn't bother me as much as I thought with Clojure.

I don't know if Clojure was just a fad, but I think that it'll always have a loyal fanbase, like mosts Lisps.

Re: Clojure at Netflix (2013) [slides]

#43
I love Lisp, so I thought Clojure would be a great productivity booster. And it is, if you are a one-man or one-woman shop. But try to build a team around a Clojure project and it's another story. The language basically begs you to make "magic" happen with domain-specific constructs. That might make you feel powerful as a programmer, but it's also a nightmare for new team members to get up to speed on.

And then, as others have mentioned, it's hard to find Lisp programmers. Most programmers are turned off by the syntax and/or immutability. I happened to take a Lisp class as an undergrad, but I would otherwise probably be in the same boat.

Re: Clojure at Netflix (2013) [slides]

#44
post #21
post #13

Earlier quoted context omitted.

We are a mostly Clojure shop and are very happy with it. It's very expressive, functional, and allows you to tap into the Java ecosystem if you need to. Might not be as hyped today as it was some years ago, but the language itself is still a joy to use. Edit: SWE at exoscale.com here. We're hiring, also for full remote positions!

Dang thats some expensive cloud pricing. Your cheapest plan offers 512MB of RAM for 5 Euros a month. There's well over 5 competitors who can get you quadruple that amount of RAM and maybe even double the storage for half that price per month. This is due to renting out space at datacenters, no? I'm no hosting expert.

Hey, Exoscale CTO here,

Thanks for looking into the service. We're certainly not the cheapest in terms of pricing but I would also warn against using RAM prices as the sole way to gauge a service.

To drive low prices a lot of VPS providers tend to have a very liberal way of playing with overcommit, which we don't do. The same goes for CPU.

Our instances should be considered to higher-end families such as the C3 and here you'll see we're playing in the same field in terms of prices.

Re: Clojure at Netflix (2013) [slides]

#45
post #37
post #30

Earlier quoted context omitted.

The cancellation of a few major Clojure conferances hasn’t helped. I’m guessing it speaks to demand. I used Clojure for a long time, professionally. Not much any more. Main issue is that the language is not very readable (a pain point mentioned in these slides) and very hard to find people to work in it. Also more than any other language Clojure is very sensitive to typos in your code. A misspelled keyword results in…

>>A misspelled keyword results in nil accidentally flowing through your app. Some dynamic languages, worked around this issue in the 90's. Perl for example, if you use 'use strict; use warnings' will catch most of these misadventures. Having said that, only the most novice programmers make these kind of mistakes. Like the absolute beginners, in the first day or two of exposure to programming. As a rule almost any sho…

You don’t have to be an absolute beginner to make this mistake. You just need to be on a project with inadequate test coverage.

Re: Clojure at Netflix (2013) [slides]

#46

Would be interested to hear their experiences with Clojure at Netflix for the 5 years that have followed since then. Did they keep writing more Clojure? If so, how much of their code is now in Clojure compared to Java? How much more did they rewrite from Java to Clojure? Do they use Clojure rather than Java for new code? What other languages do they use? Python? Erlang? Rust? How much, in terms of functionality, is w…

Did they keep writing more Clojure?

Since Netflix likes to constantly write about their tech (videos, blog), my guess would be no, but interested in an official answer too.

They are now heavy users of nodejs though.

I personally ran out of reasons to prefer another dynamically-typed language over Javascript on the server (not a hard rule of course).

Re: Clojure at Netflix (2013) [slides]

#47
post #21
post #13

Earlier quoted context omitted.

We are a mostly Clojure shop and are very happy with it. It's very expressive, functional, and allows you to tap into the Java ecosystem if you need to. Might not be as hyped today as it was some years ago, but the language itself is still a joy to use. Edit: SWE at exoscale.com here. We're hiring, also for full remote positions!

Dang thats some expensive cloud pricing. Your cheapest plan offers 512MB of RAM for 5 Euros a month. There's well over 5 competitors who can get you quadruple that amount of RAM and maybe even double the storage for half that price per month. This is due to renting out space at datacenters, no? I'm no hosting expert.

It's due to us offering some guarantees on what you get, and therefore not over provisioning our hardware :)

Many of our clients choose us for performance (IOPS, memory guarantees, etc...), and our geographic and legal situation (no connection to 5 eyes countries, strong privacy laws).

Re: Clojure at Netflix (2013) [slides]

#48
post #16
post #3

What happened to Clojure? Was it just a fad, or are people still using it in their day jobs? Are people still hiring Clojure devs? If you write Clojure at work, are you happy with it?

While other posters comment that "Clojure still works", IIRC the "promise" was that Clojure/Lisp would be much, much more productive , and that claim I feel like must been disproved in daily work, otherwise Clojure would still a main topic around here. Reminds me of the classic Erann Gatt post: https://news.ycombinator.com/item?id=2308370 (I loved to play with Elisp, Clojure, Lua, Factor, Ion, Ioke and hope dynamic l…

If there is one think about humanity that is worth to note is that the shittier alternative always wins. This is true from money through computer architectures to programming languages.

Re: Clojure at Netflix (2013) [slides]

#49
post #37

Earlier quoted context omitted.

>>A misspelled keyword results in nil accidentally flowing through your app. Some dynamic languages, worked around this issue in the 90's. Perl for example, if you use 'use strict; use warnings' will catch most of these misadventures. Having said that, only the most novice programmers make these kind of mistakes. Like the absolute beginners, in the first day or two of exposure to programming. As a rule almost any sho…

They just disagree without explaining why. Anyways, I sometimes have typos in my Clojure code, but once I follow through with your mental model and just reproduce the problem in REPL it is easy to find these sort of bugs.

I'm not sure, but if people have problems, as bad as things like hiring programmers who struggle with indenting code, making typos in variable names, write functions hundreds of lines long, can't modularize code, write 3 nested for loops, or write nested if's where '&&' suffices.

Then you are having far bigger problems related to project management, hiring and overall direction in which you are running your team/company.

Clojure as a tool doesn't aim to fix these kind of problems. And it can be argued no tool will fix these problems.

Re: Clojure at Netflix (2013) [slides]

#50
post #21
post #13

Earlier quoted context omitted.

We are a mostly Clojure shop and are very happy with it. It's very expressive, functional, and allows you to tap into the Java ecosystem if you need to. Might not be as hyped today as it was some years ago, but the language itself is still a joy to use. Edit: SWE at exoscale.com here. We're hiring, also for full remote positions!

Dang thats some expensive cloud pricing. Your cheapest plan offers 512MB of RAM for 5 Euros a month. There's well over 5 competitors who can get you quadruple that amount of RAM and maybe even double the storage for half that price per month. This is due to renting out space at datacenters, no? I'm no hosting expert.

That 512mb server can cost several thousands at enterprise datacenters so its not that bad. It all comes down to who their customer base is.
Post reply on HN