Wednesday, October 17, 2007

What was that?

I've been taking an interest in Erlang and wondering how suitable it would be for anyone launching a non-telecoms web project, so I was quite impressed by this strong endorsement yesterday from the co-founder of a start-up called MochiAds.

Naturally the next question you ask ourself is "how real is this company?" - so I did a double-take when I spotted this techcrunch post today, which seems to show them getting real traction even in private beta.

Nice to think that my technology hunches haven't gone totally rusty...


Roger Lancefield said...

Francis, what does Erlang offer desktop app or web app developers that could entice them away from the commonly used languages for those tasks?

Francis said...

Bob mentions:

Hot code loading: updating the application codebase while it runs

light-weight processes: Erlang processes are much lighter-weight than anyone else's threads, let alone processes, and once started the way you address them is identical whether they're running in the same node (ie Erlang Virtual Machine), another node on the same box (for robustness) or another box entirely. This is why it scales so well, either to multiple boxes (using current technology) or to multiple processors in the 2, 4, 8 or upward multicore CPUs that are emerging.

He also mentions multiplexed socket I/O and the Mnesia database that comes with Erlang as part of the fairly mature OTP framework.

I think his use is pretty focussed on the infrastructure side, and these are infrastructure / system level benefits.

I think the learning curve, the relative maturity of other major languages / frameworks and the relative scarcity of Erlang skills make it a less obvious choice for proof-of-concept applications, or those where performance is unlikely to be a major issue.