Thursday, April 19, 2007

SlideAware: From Python to Ruby to Erlang

SlideAware has created a slick web-based solution for managing the life cycle of Powerpoint presentations. They started using Python, then they switched to Rails, and finally settled on pure Erlang. Using Erlang, they replaced a combination of Lighttpd + RoR + SQLlite + XMLRpc + Jython + Lucene with the much simpler and highly scalable stack of Yaws + Mnesia + Erlang.

They wrote an interesting article describing their technology choices. Check it out at


SlideAware: From Python to Ruby to Erlang | the pix zone said...

[...] [from Yariv’s Blog] [...]

Vijay Chakravarthy said...

Hi Yariv,
Based on the responses, we decided we would go more into detail on various parts of the architecture -- so this looks like this might be a multi-post article. We just added the next post in the series.

wineshtain said...

Hello Yariv,
I'm new to Erlang and after reading several documents regarding the language, I've still got afew unanswered mysteries to how things work.

Most bothering one would be, why are Erlang processes more light weight then OS's ones?

Hopefully you could shed some light on the topic.

With thanks,


Didier Prophete said...


You may find it useful to read about what is called 'green threads'. There is a good article on Wikipedia.

In a nutshell, the idea is that usually switching threads involves doing some system calls at some points, which is fairly time consuming (relatively speaking... we are talking about not even a 10th of a second here). When you start having quite a high number of threads, you start realizing that the OS spends a fair amount of time simply scheduling threads. Now, the idea behind green threads is to simulate os level threads without having to rely on heavy system calls. That's exactly what the erlang VM does, in a very efficient way.

There is a lot more to it (books have been written about this topic !). I hope this points you into the right direction.


about erlang said...

Hello Yariv

IĆ¢€™m new to Erlang, and want to begin my erlang programing from doing some things related ejabbered ( a open source xmpp server). after searching from google, i still have no idear about which kind IDE is suitble for erlang developing. would you please share some developing experience about using IDE?

With thanks,


wineshtain said...


Thank you very much for your answer!