"Twisted" for Networked Applications

From the Twisted Website:

“Twisted is a framework, written in Python, for writing networked applications. It includes implementations of a number of commonly used network services such as a web server, an IRC chat server, a mail server, a relational database interface and an object broker. Developers can build applications using all of these services as well as custom services that they write themselves. Twisted also includes a user authentication system that controls access to services and provides services with user context information to implement their own security models.

Twisted provides important features needed for networking programming, both at the high and low levels:

– Pluggable event loops allowing the developer to take advantage of platform-specific capabilities.
– Abstractions of protocols and transports.
– Through Twisted Spread, mechanisms for network encoding of data (in Python, Java, ELisp, and other languages), to a full-blown distributed object system.”

http://www.twistedmatrix.com/products/twisted

Mailinglist Networks

Recently, some interesting projects emerged that make the vision of exchanging distributed information from mailinglists more and more true. ZZ/OSS has the vision that one day it will be able to reuse a certain mailinglist post or thread in an online publication or forum for example, and automatically preserve the relation with the mailinglist. Mailinglist Networks are one step towards interchangeable information – no matter from which source it comes. We develop the Content Network System to become a supportive software architecture for this purpose.

1. RSS Feeds

There are mailinglist archives/scripts available that offer RSS feeds aka XML annotated threads for harvesting. Take for example the mailman-archive-to-rss.txt script or Archive.

2. Visualization

Contextual relations between threads and postings are often hard to grasp once a discussion involves many contributors and goes over a long period of time. With Apache Agora, Stefano Mazzocchi has written a Java Applet to visualize social relationships in a community by analyzing the postings, especially the replies, to that community’s mailinglist.

SRM Modifications

The Script Running Machine (SRM) will be optimized. Maintainer Derick Rethans sent the following TODO list to the SRM mailinglist:

– Make connection handling Multi-threaded
– Port the extension to ZE2
– Implement timers

SRM is a PHP extension that does all sort of persistent storage for PHP. This storage can be simple variables for applications, but also objects, and even running objects called Bananas (similar to Java Beans). For more information see the website dedicated to SRM.

MyLifeBits Project

“The MyLifeBits project aims to put all personal documents and media online, to allow time-shifting, and location independence when you are connected to MyLifeBits.” (Microsoft Bay Area Research Center Media Presence Group), http://research.microsoft.com/barc/MediaPresence/MyLifeBits.aspx. This pointer came in via OSCOM mailinglist.

With CONESYS, one could even decide which of his personal data he wants to share with the public or a certain group of people.

MotusNet: A Content Network

MotusNet is a content network in which addressable objects, contents, are decoupled from the physical nodes that carry them. The content names in MotusNet are hierarchical, so that they can be aggregated in the routing tables to support a larger number of contents. Further, the process of content replication improves availability, performance, and defends against denial of service attacks by localizing their effect. Additionally, using content migration, similar contents can be placed closer together in order to improve the degree of aggregation. A networking class at Harvard University has built a prototype of MotusNet.

http://www.eecs.harvard.edu/~htk/publication/2001-cs244-content-network.pdf