Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

"After two years of iteration (on an Erlang codebase) ...no one on our team is an Erlang expert,"

This sounds a little strange. How is this possible? High turnover on the team?



The API server described in this post is actually a very very small part of the Mixpanel codebase and was the only part written in Erlang (as far as I know). The Erlang server was written in the very early days of Mixpanel and worked well enough for a year and a half, mostly untouched. The statement about iteration is a bit ambiguous, because there was actually very little iteration on the Erlang server, but a ton on the rest of the (Python) product.

So, the lack of iteration wasn't due to high turnover, it was due to having something that worked and other problems to solve. (I'm an intern at Mixpanel)


By the way, you could update your jobs offers - ie the part that you write Erlang, which it seems is not true anymore. I don't get why you put that info there in the first place if you had only one piece or erlang code, which you removed instead of refactorizing.


... and guess who got the task to re-write the server?

...an intern...


Or why not point out the obvious? Erlang is hard to learn.

Anyone claiming to have mastered it in a couple of months like most fanatics here are (pardon my language) full of crap.


I've seen people master it quickly, writing their own behaviours etc..

I learned it on the tube to and from work in a relatively short space of time, writing a comet server for streaming updates to browsers with a colleague. After the initial hump it was easy and fun. I don't claim to be a genius programmer, just an interested dabbler.

To be fair though, the more average developer does struggle with it, and that was a reason my company didn't take it up widely.


Took me a week to be comfortable with it, but would take at least 2 years for me to grok the performance implications of each construct.


Erlang is the first functional language I've written, and I found it very easy to get going with. The syntax takes a bit of getting used to, but it's a compact language with not too many constructs to learn. I bought the Erlang and OTP in Action book to get my head around the OTP system, but the rest was fairly approachable.


Well, "Mastery" is a standard that I think, by definition, few achieve.

But competence in erlang is certainly achievable in a couple of months.

In my example, I started having never once written anything in a functional language. I started by reading Armstrongs book with pragmatic programmers. After a couple of months I could write anything I wanted to in erlang, without too much trouble, and much more importantly:

I was in love with erlang

The idea of writing something in erlang was very exciting and pleasurable to do.

I think that's quite an accomplishment for a language with such a different syntax and with me only putting a couple months into it.

Now, obviously, I won't say I'd mastered it. But prior to that I had the fear of the unknown when it came to functional languages, and a distinct repulsion at erlangs syntax. The only reason I learned it was that I believed it to be the only language that had done concurrency right.

And I had a project to write in it that required concurrency. That might be a big help. I imagine it is hard to learn any language if you don't have a goal that it is well positioned to achieve to work towards while learning.

I suspect people who think erlang is hard to learn, haven't spent any time learning erlang. But in truth, no language, except the very first one, was hard for me to learn.




Consider applying for YC's Fall 2026 batch! Applications are open till July 27.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: