“Iterate and release” has its problems, too

One of the teams I’m working with has adopted a sort of customized agile-style development process. I really like it, but a few problems are coming up:

  1. Just like after a heavy workout, you need a warm down of some sort. You can’t just suddenly stop and declare victory after a sprint. There are always a few more things to do, and your brain muscles need to flush out the acids that built up during the race. And just like that feeling the day after a good work out, it’s hard to actually get momentum going again, and a cheerleader only makes you bitter.
  2. Collaborating with other teams in the company is very tricky. Team independence is crucial to the agile process, but that means no two teams are ever in synch. It’s like IM’ing with a friend in Europe. You can catch them for a few minutes in the morning if you get into the office early enough, but by the time you’re ready to actually say something, they’ve logged off and hit the pubs.
  3. Similarly, business operations quickly get out of synch with what’s happening on the ground. The roadmap review or the hiring planning or the marketing communications or the performance reporting should all operate with the same “rapid iteration, frequent release” methods.

    For example, in my previous jobs I kept a big whiteboard marked up with all the key metrics of my business. I stared at it all the time. Patterns emerged with each new line row of data which made the short-term decisions much easier to identify. The 3 year plan was then an abstract vision with tangible month-to-month goals. Of course, we weren’t able to act on many of the short-term needs because the planning for the current year was already locked down.

  4. It seems hugely important to have an abstract framework to work within as a guiding light when you’re chasing 30 to 60 day goals. But agile development doesn’t necessarily have an end point. The goal needs to feel like a BHAG, yet it needs to be as measurable as the end date of your development cycle.

    For example, a news media site may want to chase down a long term goal of “High customer loyalty”. That goal then needs to be measured in terms of things like repeat visits. And so the result of each sprint should be an understanding of whether or not that sprint had an impact on repeat visits.

There are lots of great things that come out of the agile process including an intense focus on a goal that everyone can work towards and the freedom to postpone things that block progress, among many others. However the process is not without flaw.

At some point, all the IT solutions you can purchase and project management processes you can adopt will hit a ceiling. That ceiling is most likely a need to fundamentally alter the goals and direction of the business itself.

Switching to a new host and blog platform

I’m moving from Blogharbor to WordPress to publish this blog.  I’ve been procrastinating this job for months, but it’s time for a little Spring cleaning.  Apologies if the feed gets messed up or if things look weird. 

Social search and molecular biology parallels

Steve Burbeck’s meaty “Multicellular Computing” paper has a lot of lessons that can be derived for any personal perspective.  It made me think that we’re just scratching the surface of the many ways information discovery can be made more efficient if we optimize human-contributed data on the Web.

He describes the parallels between cell behaviors and information technology to show the benefits of growing specialized interconnected systems rather than independent all-powerful systems.  He starts by describing layers of abstraction:

“The details of a hurricane or a tornado are fundamentally not explainable by invoking the physics of individual air and water molecules.  Nor can a computer be understood by pondering the behavior of electrons.”

On several occasions I’ve been asked to explain tags.  And it seems to me that the answer people want is not about tags and tagging but rather the impact of their existence.  The details of a tag or the process of creating a tag are completely boring.  But the impact of tags and tagging have a much more profound future.

I’ve mentioned before John Battelle’s historical view of the search user interface which I really like.  He compares it to command line DOS which was followed by the visually rich Mac OS.  The OS GUI created a powerful layer of abstraction on top of the hardware which then created an explosion of activity in personal computing.  

So the question is, what new layer of abstraction will alter the way we think about information flow and create a similar explosion of activity on the Internet?

Search is a great call-response UI.  It works really well when you know what you want to find.  It’s like the way a man hunts for socks in a shopping mall:

  1. find shops that have socks
  2. identify cheapest, most useful and closest.  order by priority.
  3. find socks, select necessary quantity
  4. pay
  5. reward self with snack on way to car

But it’s not as good for making more qualitative decisions.  What if I want socks that last a long time?  What if I want knee-highs?

If you think of each type of human data contributed to the information pool on the Internet as elements and molecules (clicks, views, saved things, sent things, tags, comments, ratings, individual blog posts, wikipedia entries, etc.), then you can imagine bodies made up of those pieces with unique purposes, behaviors, functions and roles.  

Getting back to Burbeck’s paper, the flaw in the PC OS is that it tries to be all things to all people.  Like the single-celled organism, it has to be totally self-sufficient to operate.  

The Internet has altered our view of the computer as an all-powerful tool through breakthroughs like standard web services (HTTP) and common messaging protocols and formats (TCP/IP and RSS).  It looks more like a multicellular organism.

“Multicellular organisms thrive because their cells specialize and collaborate in far more complex and information-rich ways than can a single cell organism.  Metazoans have cells and organs that are specialized for sensing environment, communicating and storing information and acting upon the environment. Yet, at least for a given individual organism and for its species, complexity is not an end in itself, it is merely the means of improving fitness to survive.”

To relate this to search, a much more efficient body of intelligence and information discovery is one that can both find the right information at the right time but also optimize the method for locating the right information through different means.

I’m active enough online to know the brands that have user-contributed data that will quickly get me to what I want.  I know Wikipedia is great for finding commons-based research on just about any topic.  I know del.icio.us is great for finding things people like me have seen in their quests.  Rojo and Megite do a great job of keeping my finger on the pulse of new things people are saying that matter to me.

But there’s an abstraction layer out there somewhere in the future that will make it easier for me to jump from data pool to data pool more fluidly to find what I need…and to interact with it.

Great stuff in this paper that you can apply to whatever you're doing in this industry.  I highly recommend reading what you can of it.