Yesterday I took a little time to have a look at the Facebook developer's documentation. It looks really nice. They put a lot of effort in building technologies to make developing facebook applications as easy as possible. I had never really thought about it, but facebook applications don't actually run on the facebook server itself, but on the developer's machines. Of course, this makes sense, you don't want random developer's code running on your machine. That also means that this facebook architecture is essentially the one I described over 2 years ago: Web-Application Plugins. At the time I feared that performance would be a huge problem, but as I use facebook I realise that it's not. The applications are usually quite fast.