What I was doing 3 years ago

Wednesday May 17, 2006

This evening I was reminded of an artifact from several years back which many of you may not have seen: it's a paper Itamar and I wrote for the USENIX 2003 conference. I wasn't a "blogger", as the kids say, at the time, so if you weren't at USENIX (and you probably weren't) you would have missed it.

Twisted is a networking framework suitable for building a wide range of networked servers and clients. Twisted provides portability by using high-level abstractions of protocols, various transports (such as TCP and UDP) and an event loop, allowing deployment of the same code across multiple platforms, primarily Unix and Windows NT. (...) However, access to platform-specific functionality is a real requirement for many applications. For example, without the ability to access file descriptors directly, it isn't possible to write programs that integrate access to the serial port into the event loop. (...) Twisted provides low-level access to operating system and event loop specific functionality. (...) Twisted also provides many high-level facilities commonly used by networking applications.

It is one of the better general summaries of Twisted's functionality and design objectives. Parts of it are a bit outdated; the stuff about PB and load-balancing HTTP is just dumb, for example. Still, if you haven't seen it, you should give it a read.

Check it out on the USENIX site.