As we consider our architecture, consider rewriting portions of our site, and consider writing small very targeted applications (like an application targeted at block parties) we have to start thinking about what commitment we have to our users and to the continued functioning and maintenance of these applications.

For instance, if we rewrite TaskTracker in a way that doesn’t map well to our current lists, what are we going to do with existing lists? Will anyone care if we just throw them all away? Should we move them over? Can we move them over in a scrappy way, flattening lists and losing metadata, but at least keeping the raw content?

That choice should probably be driven by a sense of how many people use the application, and if we can feasibly collect it, how much those people care about the data in their lists. But given that information we’ve just informed our decision, we haven’t made one.

So what is our commitment to the specific applications we’ve written? What is the cutoff level where we are comfortable throwing stuff away, including data? What is the cutoff level where we can throw the application away and keep the information around for reference (e.g., making a static HTML dump of the data)? For future applications, how can we rapidly make useful applications without burdening ourselves with too much code liability, too many things to maintain and monitor?

One possibility with an application like block party is that we write something with a sunset date. In, say, November 2008 we shut the application down, and we are clear about this up-front. Maybe in September we start marking the site with big “GOING OUT OF BUSINESS” messages. After that we replace it with a static file (and maybe a redirect for the whole tree). If the application was good and we want to deploy it again next year, we can, maybe improved for maybe not.

If we do pick up the pace of new application development, I am a little scared about the code liability we could introduce — either spending too much time keeping the applications up, or creating a sloppy site where applications just disappear and stop responding after a prolonged period of non-maintenance. Or if we do good change control and don’t break applications they just become spam pits, which isn’t any better.

Filed January 17th, 2008 under Architecture

No Comments

RSS

No comments yet.

Leave a comment