Thursday, September 07, 2006

The Best Erlang Propaganda You'll Ever See

Back in the old days (about 1 month ago), when my blog had about 10 visitors a day (most of whom came to download the XCode plugin for haXe I created), I fully enjoyed the unbridled freedom the blogging medium has given me in my writings about Erlang. My readers (reader?) were all interested in Erlang. Every statement I made about Erlang's strengths was taken as obvious. Justifying my arguments was as easy as saying 'duh.'



Times have changed.



My blog now gets over 1000 page views a day, and some days, when it's featured on reddit.com, it reaches over 5000 page views. With this deluge of new readers, I have suddenly found myself having to contend with an unfamiliar challenge: the Skeptics.



Many of my readers are very intelligent, experienced programmers. Some of them are knowledgeable about if not experts in just about every computer language you can imagine (well, maybe short of Brainf*ck). Erlang is different from many languages, and therefore many of my visitors write very good comments pointing out aspects of Erlang that they don't like or where they think Erlang falls short of other languages.



Like every language, Erlang has some shortcomings. Erlang is a tool, not a panacea. Erlang happens to be a very good tool for building scalable, fault-tolerant, distributed systems, which is primarily why I am so interested in it, but it's not a silver bullet. Depending on your needs, other languages are arguably better than Erlang: Perl for regexps and string processing, OCaml for raw performance, Haskell for its purity and type system, Ruby/Python/PHP for scripting and (some) database-driven webapps, Java for abundance of libraries (and programmers), C# if you're coding for the .NET platform, Prolog for logic programming, C/C++ for desktop programming, etc.



Still, I don't like dealing with skeptics.



You see, I'm at the helm of a well-greased Erlang hype machine, and I'm on a take-no-prisioners mission to recruit every programmer with an internet connection into the cult of Erlang. If you're a programmer, I won't rest until you think in Erlang; talk in Erlang; dream in Erlang. When I'm done with you, your life will be a list; your being will be a tuple; you will communicate to your family and coworkers by asynchronous message passing; your actions will be functions; your consciousness will run on pattern matching.



You will forget your objects. Your shared memory will become Mnesia.



To achieve this nefarious goal of mine, I decided it's time to bring out the big guns.



This is no fun and games anymore. This is war for the hearts and minds of programmers from faraway paradigms. I'm here at my command and control center, and I mean business.



Enough talk. It's time for action.



Without further ado, I present to you my secret weapon, as well as the best Erlang propaganda you'll ever see: The Erlang Movie.





(Try as hard as you can, I know you won't be able to resist hitting that "Play" button.)



...



Now that you've seen the Erlang Movie, we can resume rational discourse regarding the merits of this language. The only condition is that you have to blindingly accept everything I say. You also have to first run around the streets shouting at the top of your lungs "I've seen the light! It's called 'Erlang'!"



Deal? :)



...



Now back to serious writing: please don't take anything I've said here seriously!!!



Update: quick poll -- how many of you have watched the whole thing? :)

15 comments:

Richard Kilmer said...

Wow. I mean, when David Heinemeier Hansson did his Rails video building a Rails app in record time I though it was the shit...but this really changes things for me. My mind has truely been enlightened.

Yoohoo said...

I'm scared.

Steven said...

This seems more like a motivational movie for editing and combs.

Roberto said...

This movie definitely is the key to Erlang world dominance. Soon Joe will be a living legend even among the myspace crowd. Whoever watches this movie will be converted and ready to give away his/her soul to Erlang, or at least to be ready for "pushing the button" for the next 20 years (as the Dharma propaganda movie in the TV series LOST, which somehow had some similarity with the Erlang movie, at least the retro-style ...)

JoeK said...

I thought for a few moments that I'd ended up at http://lileks.com ...

Yariv, you're doing great stuff with your blog. I'm thinking hard about Erlang and have had quite a bit of fun playing around. Keep up the great work!

Narrenschiff said...

I remember my flatmate and myself staring open-mouthed and giggling the first time we saw this film. I especially love the bit with the telephones where it actually goes through tedium and out the other side, turning it into some kind of dadaist sketch comedy show...

Dmitrii Dimandt aka Mamut said...

I'm entranced :) As I am every time I watch this movie

Tieying Liu said...

This is a nice demo. However, I think we need lot more tutorials or demos for traditonal Java/C#/PHP developers. Rails people did excellent job enticing newcomers. Erlang camp should do better :)

klaus said...

Hey, thanks for increasing the used-book-sales value of my Erlang book!

klaus said...

Hey, thanks for increasing the used-book-sales value of my Erlang book!

Jacob said...

so old school ... glasses too big ... strange accents ... unnatural pauses ... cannot watch anymore (2:46)

seriously, does it get better?

New Comer said...

Yes, it illustrates (clearly enough, though) what I have already found out in the web about language. What I expected is a RoR-kind of movie, "Do something real working in 20 minutes and 10 lines of code"... The movie was fun, but I am not sure who has those telephone rackspaces at their disposal :)

Real World said...

"Do something real working in 20 minutes and 10 lines of code"...

Well, real world lasts more than 20 min. (if you're lucky) and takes a little bit more than 10 lines of code (which is inversely proportional to your number of hair on your head).


The question is: when it is ready to go to extremes much longer than 10-20 lines, which tools / languages are going to give you a hand to handle the abstractions and underlying platforms nicely?


The question is always this. There is no single answer. Maybe except Erlang. ;-)

Jay Kint said...

That was awesome! It reminded me of the science movies from grade school! I can see why Erlang is well on its way to dominance.

Justin Sampson said...

All kidding aside, the video did actually give me more insight into Erlang. The point about the other call staying connected while the conference call was rebooted with new code was pretty cool.

And now I know how to pronounce "Erlang"!

Thanks. :)