An Open Software Services Ecology

Evan Prodromou is one of the bloggers on autonomo.us. As with most blog posts on the site, the following is his personal viewpoint.

One of the suggestions of the Franklin Street Declaration is for programmers to “[d]evelop software that can replace centralized services.” I’ve taken that suggestion to heart in creating the Laconica microblogging platform, which powers my site Identi.ca. I was using microblogging services a lot, and I wanted to have one that would preserve my autonomy; so I created my own.

I’d like to put forward some suggestions for other Web applications that are ripe for an Open Software Service implementation. These are Web applications that I use on a regular basis. I’d prefer to instead use services that respect my autonomy, and I’m looking forward to a point where I can live my life on-line that way. Here are some services that I use on-line regularly, and that I’d love to have Open alternatives for.

  • Calendaring. A web interface for calendars, calendar sharing with other users. Compare 30boxes.net, Google calendars
  • Email. I think it’s still the case that most email depends on Free Software (sendmail, postfix, exim) and that Free Data would play a small role, if any. But it would be interesting to see a Web email service that attempts to meet the OSSD. There are some very good Free Software Web email clients, but few have the rich UI that proprietary services use. Compare Gmail, Yahoo mail, Microsoft Live Hotmail.
  • Social bookmarks. These are services that I use pretty regularly, and they’re ripe for Open Data sharing. I’ve heard good things about Tasty, but haven’t tried it. Compare del.icio.us.
  • Social news. The announcement by Reddit that they would make their software stack available under a Free license was encouraging in this area. A more comprehensive Open Data license on Reddit’s part would make this a big win. Otherwise, it’s entirely possible for a competitor to start a social news site with a more liberal data policy. Compare also Digg, Mixx, Propeller.
  • Storage. Storage of mass data is a great potential service. There is a wide variety of uses in here, from one-off sharing on imageshack.us to a complex CDN and backup service like Amazon S3. In between lie services like box.net. This is a place where commercial Open Software Services could break some new ground, and where open protocols like WebDAV could prove useful.
  • Photo sharing. Similar to generalized storage, and might be a component of a storage system, but photo sharing is a very popular Web service with a proven business model in premium services. It’s also a very crowded area where a disruptive new player waving the Open Services banner and providing a distributed protocol for sharing would be better able to break in than another also-ran with a slightly different featureset. Compare Flickr and… nah, just Flickr.
  • Video sharing. Again, a subclass of “storage”, but specific features for video would make this a different kind of site. It’s a hard area to break into, since the storage and bandwidth requirements are so insanely high, but there are lots of neat possibilities. Compare YouTube.
  • Mapping. OpenStreetMap is a star player here; its wiki-generated maps are high-quality, and the OpenLayers software is clean, fun and easy to use. But I still think there is a ton of information about places on the map (restaurants, stores, metro stations) that could be better indexed, and routing is very helpful too. Embeddable widgets for use in other sites would be neat; that may not be an OSM goal. It’s still not clear to me whether OSM is ready to oust Google Maps, Yahoo Maps, or others in the area.
  • Web Search. I’m excited about Search Wikia and I think it has a really strong role to play as the (a) search component in the Open Services ecology. Whether it can deliver quality results, distribute the indexing load (where’s the Linux client for grub?), and fulfill the promise of Free Software and Free Data remains to be seen. For now, compare Google, Yahoo, Ask, Live.
  • Homepage. I realize not everyone uses this kind of service, but I find them extremely convenient. They’d also be relatively easy to implement. The Open Data component could be extremely interesting, and interfaces with e.g. social news and social bookmarking will be key. Compare iGoogle, Pageflakes, Netvibes.
  • Compute power on-demand. I’d love to have an alternative to Amazon EC2 that runs on Free Software. I like Linode a lot, but their provisioning interface isn’t free. This is another clear place where commercial Open Software Services can do well; clearly selling the compute time and power is a benefit to users, who would be willing to pay for it.
  • Distributed commenting. There are a few commenting systems out there that span different Web sites. It would be interesting to see one that was distributed in its operations, use Free Software, and encouraged users to make their comments Open Content. Compare Disqus or coComment.
  • Social networking. Probably the most invasive and least autonomous part of the Web today. Walled gardens like Facebook are an incredible anti-pattern for autonomy, slurping in personal information and refusing to share it in even the simplest ways. An Open Software Service for social networking is going to be important. AroundMe and NoseRub are promising starts, but they need to work together. A default large-scale site that people can try out before setting up their own servers would be nice, too. Compare MySpace, Friendster, Tribe.net (like others in the crowded space, a good candidate for embracing Open Services and turning around declining traffic), Bebo, Hi5, Orkut, etc. LinkedIn is a good example of a vertical application (work and professional life), and there could be similar ones on different services.
Of course, all these services would benefit from use and re-use of each other’s data and software. Embedding photo sharing or social bookmarking into a homepage service, videos into a social networking site, combining computer power on-demand with storage… all have great promise. And merging Web 2.0 patterns like APIs and widgets with Open Service models of Free data and source code means is going to be a really powerful mix.

This is, of course, the Web world from my perspective; there are a lot of services that I don’t use or even think about. And there are some things that are well-implemented (information like Wikipedia, software development hosting like Savannah or ShareSource) that would also be good elements to weave into this mix. I’ve started a wish list page on the autonomo.us wiki for further elaboration and discussion.

Tags: , , , ,

  1. I think a very good starting point would an alternative to del.icio.us with an API compatible with the existing del.icio.us API. That would ease existing software using del.icio.us API to still work with the new free service.

    Another interesting part, if a free alternative for del.icio.us has a large user base (500.000 users?). The data collected (urls, classification) can be used for a free search engine to crawl content bookmarked in the social bookmark services. That would ease classification of crawled web site.

    I think the main issue is the continuous investment required/ to make a scalable free web services. Have you already discussed about the possibility of funding? not especially at the early stage but to keep the service running (bandwidth, hardware, human) and scalable when the number of user is increasing? and how to keep everything free when there is some funding in the process.

    Thanks a lot for this initiative,

  2. Evan,

    You mention social networking – you might take a look at the work we’re doing on the DiSo project. Distributed Social Networking, all open-sourced, and designed to be usable by any independent site operator (though we’re evangelizing solutions that could be used by the big players as well).

    Cheers,

    –Steve

  3. For the social bookmarking part, there is the excellent (but still WiP) Semantic Scuttle, which is a sequel of the now abandonned Scuttle. It is (or aims to be) del.icio.us-compatible and can be installed on any LAMP server.

    The project is here : http://sourceforge.net/projects/semanticscuttle/ And an english demo : http://festic.fr/semanticscuttle/demo/en/

    An OAuth-based cross-site sharing (kinda like what laconi.ca aims to do) would be a nice addition, btw.

    Concerning social networking, one can have a look to elgg (http://classic.elgg.org). Not really decentralised, but at least OSS, easy to install on your own server and quite active. Plus there is a plugin to allow XMLRPC calls between instances of it (may serve as a start for decentralised behaviour).

  4. I guess it’s more “webcasting” than “video sharing,” but the University of Toronto’s ePresence is worth a mention in the video category.

  5. I think I’d add a hosted feed reader. Google Reader is great – but why can’t I have my own to hack on?