Is there a app store for commodity servers? Or is SaaS the dominant model, as other see it? I've been thinking about the distributed social web and wondering what is required to create a market for social and personal server apps. Ones that you can easily install from the store to your hosting provider of choice. Not everything will be on Google AppEngine or a Facebook app, nor should it require complex make install fiddling. I believe these are coming, in fact this post has been brewing a while and google have announced google apps for your google domain in the meantime, which addresses part of the ideas in this post.
I am thinking of a personal server which has simple consumer facing software which you can effectively drag install, applications like Mint and Fever are a good step in this direction. Certainly Simon Wardley has been arguing in this direction for a while. This thinking has been inspired by looking at the iPad, by reading Charlie Stross' Accelerando and Daniel Suarez's Daemon. Put in a more direct manner, where is the iPad server app store?
What exists at the minute? Server side applications are by and large aimed at developers and sys-admins. WordPress and Movable Type are probably the closest to widespread consumer apps. Other than Mint and Fever apps mentioned earlier, which are aimed at geeks. The vast majority of server installable applications are for other software developers, not a small market, but not mainstream. There are lots of options for these kinds of app Amazon AMIs, virtual MovableType or what Cloudera are doing with Hadoop and the vast array of VMware products. Most if not all of these apps are free and the money is made from consulting and service contracts.
I'm also not really thinking of Google App Server or similar easy development environments, nor just RPM / CPAN / MacPorts "apps" for geeks. Perhaps something like Apple's Remote Desktop with applications packaged as installing DMG files would be a step in the right direction. There are MySQL installs as a DMG, plus many others. These are an improvement over make and make install, but they are not apps in the same light as Mint above, nor as invisible as an iPhone app install. There are tricky issues to solve including the at least four different platforms for which virtual images are created, making these is not trivial.
What is required to make a consumer server side app store possible or even desirable? It needs to be simple to install, eg drag and drop to install. Then quick to configure. Tools like webfinger (protocol) will automate people lookups, these are the kinds of hooks that will simplify setup, I'll come back to this later. I imagine these tools will be personal always on data processing tools. Rather than having a server at the end of your ADSL line you'll have a managed instance of a virtual server in a colo somewhere. They could be the wearable computing of scifi fame, but i suspect that phone as sensor with data processing in the cloud is more likely. The ability to easily move these apps and their data from one service provider to another is vital. Another lock-in is not desirable, I think it is more important with these data rich applications than with iPhone apps. Plus this kind of data portability is widely supported for server apps, eg SQL, imap, commonlog files etc.
At XTech in 2008, Steven Pemberton gave a talk on hosting your own data amongst other ideas, which Jeremy Keith wrote great notes on. The ideas in this talk won't leave me alone, go and read it if you've not come across it. I see identity services as a driver for these tools be you@yourdomain rather than email@example.com, single namespaces get filled up pretty quickly. The web is young still, 16 years old in public awareness. What will new users of Twitter or Facebook or Linkedin have as options for names in even five years? Many people already get a vanity domain with email, but imagine a distributed twitter (fethr?) or linkedin, facebook etc. The laconica / identica project, aka status.net is heading in this direction too, imagine this running on your WRT54G or FON router.
Some other ideas that spring to mind. A web proxy that looks at every thing you read online and finds updates, references etc based on the url stream it receives and processes, there was a mac app that did this locally, can't remember name. This might find prices on things you've looked at; locate good books etc on things you search for or recommended blog posts on other things you've read. There is another set of apps in the pachube mode, processing the increasing array of sensor data that we are generating, location based data is one popular area now, but there are many more coming soon, eg smart meter data.
Another possibility is the delegated you that could exist, we have this to a limited degree already in terms of free/busy statements for calendars. Can we extend this to some sort of basic automated decision making capability on our behalf, this already works well using an multi-agent based model for the estar system, which allocates time on automated telescopes worldwide. I've mentioned brokerage agents before in terms of delegating authority, but now there are proposals for OAuth delegation to support these kinds of ideas. Combined with webfinger and knowledge of who your friends are via an address book a service like this could process some social application invites automatically. Extending this why doesn't my copy of MovableType or Wordpress know who I am? these are generally single user software, so it should be aware of who my friends are, perhaps acting as a whitelist for comments as a small example.
Lastly (and more wildly) are there sufficient personal volumes of data to warrant a hadoop / hive / mahout application for an individual? Trawling the friend of a friend and wider internet for useful information based on a model of your interests? A kind of intelligent RSS reader, perhaps based on the estar multi-agent ideas. That few of us have an ongoing data processing agent watching the web for us bothers me. Where are the intelligent agents of sci-fi fame? Douglas Adams suggested the monk plus which dealt with the world so that you don't have to, a delightful creation. One of those which helped me deal with the world would be very welcome. James Bridle's lovely sxsw book is another good example of the kinds of things these agents might make for us, give it the conference you are going to and the flight your flight plus hotel and a guide pops out tuned to your friend, location etc.
I think these are coming soon, the recent efforts from Google give strength to that, but a single provider lock in is not desirable. How do we make these apps exist and make them easily portable?