Mashups with nerves

Thinking about user-driven programming. The main guys involved here: Yahoo! Pipes, Microsoft Popfly, Teqlo… they all let you build “run-once” applications, that process some inputs and produce some outputs. This is fine for the kind of applications that they are showcasing – read my news, display my photos, etc… but what if you want to build an application that you don’t have to “hand-hold”? Let’s say that I want to build an app that reacts every time my RSS feed is updated, without me having to go a run it? Let’s call that a mashup with a nervous system…

Edit: I’ve just found that Popfly lets you add in a Timer block that will let you repeat an action periodically. This is cool, but it’s not reacting to input, still polling.

This is probably related to the nature of the inputs to these kinds of apps – they are generally static feeds that you do something with the whole of, perhaps subject to some condition (such as display all my news since yesterday or all my pictures of France). It would be interesting to see a mashup capable of taking some sort of messaging input (email, IM…) and working with that as it comes in.

There is another complexity with these run-once apps – there isn’t a way of saving state – when you run the app it does just one thing and that’s it. You could hook the app into a datastore like Flickr or Google Base, and I know some people don’t like programs that save state, so maybe this isn’t a bad thing…

I guess the reason this is a problem for me is that I want to move beyond applications that provide essentially a customized view of some data, to an application that will monitor data as it comes in and do something with it.


Edit again: It’s occured to me that if an app could monitor the sources of static content but only do something when there is a change, that would also work as a monitoring solution…


  1. Posted June 15, 2007 at 4:53 pm | Permalink

    Nice article. The answer is, of course, help is on the way. A platform is being built that will fill the gaps you are calling out here, and then some. We are building it, with help from some other key Web2.0 players. Stay tuned, but for now, know that it includes the following properties (the names should lend some clues):

    We’ll be leaking information as we keep getting closer. It is a huge endeavor though, and will be out some time in 2008. Until then, keep plugging away with the great stuff these other guys have put out.

    Jay, would love to hear from you – ryan dot gahl at nthpenguin dot com. We can give a quick demo/presentation, as we’d love feedback from the community of people who actually _get_ mashups and actually _use_ stuff that’s out there today.

  2. Posted June 20, 2007 at 1:07 am | Permalink

    Ryan, sounds cool. I’ll give you a bell.

  3. Posted June 25, 2007 at 7:03 pm | Permalink

    Hi Jon,

    BT’s also leading a project to deliver an always-on, event-driven hosting environment for customer-authored code.

    The public face of this project is shared for the time being only on my blog at…

    However, I have prototype implementations now functional and a web-based community will soon be launched to support the tool. When it’s time, you’ll naturally see links from that page on my blog too.

    We aim to trial this financial year, building on an open-source process-hosting toolkit we produced a few years back…

    Do get in touch. I think we can probably give you the architecture you want at a price you may like 🙂

    Also if you’re hooking up with Ryan sometime, then perhaps we should make it an open thrashing of ideas and demos to see where we end up.

2 Trackbacks/Pingbacks

  1. […] etc. I’ve written about this before and described the problem as needing a mashup “nervous system“. What happens if you start to use your customers themselves as the nervous system? A […]

  2. […] which is responding to changes in data (I’ve previously called this giving mashups a “nervous system“); the second is shifting data from one transmission format to another, which allows you to […]