Live data from Hacker News

Elixir at PagerDuty

pagerduty.com

1–10 of 190 posts

Re: Elixir at PagerDuty

#2
I'd love to hear more about your troubles with Scala, and any examples of "clean code being hard to write". Do you think this had more to do with a lack of experience with strongly typed functional languages, or more to do with Scala's mixed paradigm?

Also, thanks for sharing your story. Elixir is a great language and I love seeing it being adopted more and more everyday.

Re: Elixir at PagerDuty

#3
> Elixir has been mostly selling itself: it works, it sits on a rock-solid platform, code is very understandable as the community has a healthy aversion towards the sort of “magic” that makes Rails tick, and it’s quite simple to pick up as it has a small surface area

I was a huge Rails fan back in '07 and built a number of apps with it successfully, but I can't help feel like it's transition to a legacy framework has already begun.

While Rails was never top in the performance category, languages are catching up in tooling and readability. So, now you can get performance and a great developer experience with multiple other languages like Elixir, Crystal, Go and more.

Re: Elixir at PagerDuty

#4

I'd love to hear more about your troubles with Scala, and any examples of "clean code being hard to write". Do you think this had more to do with a lack of experience with strongly typed functional languages, or more to do with Scala's mixed paradigm? Also, thanks for sharing your story. Elixir is a great language and I love seeing it being adopted more and more everyday.

(backend of Victorops is in Scala)

Re: Elixir at PagerDuty

#5

I'd love to hear more about your troubles with Scala, and any examples of "clean code being hard to write". Do you think this had more to do with a lack of experience with strongly typed functional languages, or more to do with Scala's mixed paradigm? Also, thanks for sharing your story. Elixir is a great language and I love seeing it being adopted more and more everyday.

Definitely not the lack of experience, there was plenty of in-house Scala experience. I'm not the author, but he has indeed written about his experiences with Scala on his personal blog: http://evrl.com/programming/scala/2017/04/04/scala-part-ii.h...

Re: Elixir at PagerDuty

#6

I'd love to hear more about your troubles with Scala, and any examples of "clean code being hard to write". Do you think this had more to do with a lack of experience with strongly typed functional languages, or more to do with Scala's mixed paradigm? Also, thanks for sharing your story. Elixir is a great language and I love seeing it being adopted more and more everyday.

I'm not from PagerDuty, but I also moved to Elixir after some years working in a hybrid Ruby + Scala shop. I concur with the author's experience that writing clean and maintainable Scala code is hard. A few reasons:

* Haskell influence on the language, especially early on, encouraged the omission of dots and parentheses wherever possible. Just about every piece of sample code was written as an undifferentiated stream of tokens. There is a mental burden.

* Haskell influence on the community encourages category theory solutions to all problems. This harms interop with Java libraries, in addition to requiring a number of concepts that are safely ignored in many/most other languages.

* Scala's rich OO system (classes, interfaces, traits, singletons, case classes, implicits, etc) results in frequent design paralysis, not to mention taking a while to learn.

Elixir suffers from none of these problems, while retaining some of the things that made Scala a pleasure to use, notably the actor system of concurrency and the use of immutable data structures.

Re: Elixir at PagerDuty

#7
My impression about the Elixir/Erlang so far has been the same.

> Elixir comes with one of the nicest and most helpful communities around

Using Elixir, it's easy to write gorgeous code, with a language that for the most part is really minimalist, and you get to play with the great piece of software that OTP is without all the warts of Erlang (which is mostly the developer experience). The BEAM community is fantastic and really supportive (disclaimer: I'm a GSoC student working for them on making Elixir bindings for Barrel, a replicated document database).

Maybe we could think that it's best in terms of the character of the community if Elixir stays small, however Rust community seems a great example of something bigger to follow that hasn't evolved into a soulless graveyard of enterprise code scattered on the githubs and maven centrals of the world.

There has to be a way between hand-rolled craft parsers you write with a beard and an IPA in hand and another AbstractObservableContainer written by Dilbert that doesn't compromise the ecosystem or contort it in any funny way.

Re: Elixir at PagerDuty

#8
Great hearing more and more Elixir adoption stories from well known companies.

The quote that resonates...

> ...some of us are secretly hoping that one day, we’ll only have to deal with Elixir code

Re: Elixir at PagerDuty

#9
Thank you for sharing your experience! New languages is one of the "fun" parts of programming. Except at work.

There are legitimate problems of legibility, maintainability, and training when introducing new stuff into the stack. Then there's the balance that we have to strike with re-writing old with new. How much do we gain with the new vs how much time is it gonna cost?

Lately, these have been the things I worry about instead of algorithm design or product design. Precisely the things we don't get taught in school or get interviewed for

Re: Elixir at PagerDuty

#10
post #7

My impression about the Elixir/Erlang so far has been the same. > Elixir comes with one of the nicest and most helpful communities around Using Elixir, it's easy to write gorgeous code, with a language that for the most part is really minimalist, and you get to play with the great piece of software that OTP is without all the warts of Erlang (which is mostly the developer experience). The BEAM community is fantastic…

Rust is a community of very nice and helpful people, much like Elixir but with more money behind it. However, I certainly enjoy Elixir's unwillingness to break working code with every release, or to force users to build against nightly releases just to use any features from the last year. Rust is improving in this regard, but isn't quite there yet.
Post reply on HN