InfoQ

News

Lessons for the Agile Community from 8aweek

Posted by Kurt Christensen on Apr 22, 2008 01:54 PM

Community
Agile
Topics
Agile Techniques
Tags
Lean,
FDD,
Productivity
Eliminating waste is one of the core principles behind Lean software development, and certainly no environment is less forgiving of waste than a startup company, where money is tight and disaster lurks around every corner. A startup company focused on productivity issues would thus seem doubly suited as a role model for agile teams striving to eliminate waste within their organizations.

8aweek is a startup company which produces a service that monitors users' online habits and enables them to limit access to distracting websites, providing feedback by way of "productivity report cards". InfoQ recently had the opportunity to ask 8aweek co-founders Dave Fowler and Zachary Garbow some questions about how they connect with users, prioritize work, and get things done.

InfoQ: What is 8aweek, and what can it do for the average developer?

8aweek: A recent study by salary.com found that the average employee wastes over 8 paid hours a week, mostly online. Self-employed people and students waste just as much time, and the problem is worse among younger workers. 8aweek is a browser toolbar that aims to reclaim those hours by helping you control distractions while you're working on your computer. You can specify which sites you waste too much time on and let 8aweek limit the amount of time you're allowed on those sites before it outright blocks you.

InfoQ: How did 8aweek come about? Did you initially build it for yourselves? If not, what was the motivation?

8aweek: We're both highly motivated people and noticed that the Internet was a huge time suck and prevented us from getting things done. For a couple of years I had edited my hosts file to keep out the distractions. It was a cumbersome hack and had no good controls or interface. But when I used it I was at least 2x more productive because I lost that impulse to check Facebook every 5 minutes. I shared the hack with Zack who expanded the idea greatly and we decided to make a tool to give the functionality to everyone in an easy to use and helpful package.

InfoQ: What sorts of development processes (if any) do you use internally to develop 8aweek?

8aweek: Our development process is similar to Feature Driven Development. Based on user feedback we identify which features will make the most people happy and create a schedule and plan for integrating those features.

InfoQ: How do you identify what new features to create? And how do you go about prioritizing things?

8aweek: At first we made a very simple prototype that just blocked access to websites based on a user-defined list. After experimenting with this limited prototype we easily came up with a huge list of features it needed to be more robust. We initially focused on which features would provide the greatest impact for a quick beta launch so that we could iterate from there based on user feedback.

About a day before we launched we added an almost obnoxious feedback and response system. We put the feedback input box right into the toolbar for easy access.  Every day people report bugs, send encouraging messages and request new features. We've been launched for just 2 months and have received and responded to 1600 pieces of feedback.

Having such a close connection to our users has been incredibly valuable. It lets us know what parts are on the right track, what features are most important to users, and which bugs are the biggest pains. It's also incredibly motivating and makes the whole project that much more personal. It's what gets us up in the mornings... err afternoons, and keeps us working into the early morning.

InfoQ: How do you decide that something is "done" enough to release into the wild?

8aweek: We focus on rapid iteration based on user feedback. So as soon as a feature is bug free, we release it and let our users tell us if we did it right or need to improve some aspect of it. We could simply guess at what users want, but in the end it's much better to let them tell us themselves!

However there is a danger of taking user feedback too literally. Sometimes users don't know exactly what they want, so it's important for us to look at the root cause of a user's request and infer the intent of that request itself. We can then determine the best approach to solving the problem. Then when we release a feature it becomes pretty clear whether we hit the mark based on how our users respond.

Related Sponsor

VersionOne is recognized by Agile practitioners as the leader in Agile project management tools. Companies such as Adobe, BBC, CNN, Dow, HP, IBM, Sony and 3M have turned to VersionOne to help deliver greater value to their customers.

3 comments

Reply

8aweek by z q Posted Apr 22, 2008 10:30 PM
Re: 8aweek by Kurt Christensen Posted Apr 22, 2008 11:32 PM
Re: 8aweek by Farrukh Shahzad Posted Apr 23, 2008 2:39 AM
  1. Back to top

    8aweek

    Apr 22, 2008 10:30 PM by z q

    I don't think it is a good ideal. Now days, surfing becomes more and more common for the office guys. Although it waste some working time, but under huge pressure comes from the work,the life and so on, it can relieve our press and motivate our inspiration. on the other hand if the boss control the time of surfing, it maybe brings objecting minds to the staff.

  2. Back to top

    Re: 8aweek

    Apr 22, 2008 11:32 PM by Kurt Christensen

    Well actually, the product seems to be designed for people to apply restrictions to their own behavior. Think of it as your conscience, reminding you to get back to work. If your work is so unpleasant as to make you *want* to waste time surfing the web, then you have a problem that 8awek can't fix :-)

  3. Back to top

    Re: 8aweek

    Apr 23, 2008 2:39 AM by Farrukh Shahzad

    Well If I've to audit my own self and "restrict my own behavior" then there is no need of any toolbar for me :-) I get knowledge of new technologies by surfing, like reading the technology news, blogs and RSS feeds of many website like InfoQ.com so this why most of the colleagues come to me and ask technology ideas and questions.

Exclusive Content

Tapestry for Nonbelievers

A new article by I. Drobiazko and R. Zubairov introduces v. 5 of the Apache Tapestry component-oriented web framework. The tutorial shows how to create a component and covers IoC in Tapestry and Ajax.

Pete Lacey on REST and Web Services

In this interview, Burton Group consultant Pete Lacey talks to Stefan Tilkov about his disillusionment with SOAP, his opinion on REST, and addresses some of the perceived shortcomings REST vs. WS-*.

Business Natural Languages Development in Ruby

Jay Fields presents his concept of Business Natural Languages - a type of Domain Specific Languages geared towards being readable by domain experts.

Distributed Version Control Systems: A Not-So-Quick Guide Through

Adoption and interest for Distributed Version Control Systems is constantly rising. We will introduce the concept of DVCS and have a look at 3 actors in the area: git, Mercurial and Bazaar.

Segundo Velasquez and Agile as Seen Through the Customer's Eyes

Deborah Hartmann interviewed Segundo Velasquez about his experience as customer with an Agile team during the initial phase of software design of a product.

Fine Grained Versioning with ClickOnce

David Cooksey shows how to fine grained versioning to a ClickOnce deployment using an HttpHandler written with ASP.NET, making partial rollouts to a test audience much easier.

Implementing Manual Activities in Windows Workflow

Windows workflow (WF) is an excellent framework for implementing business processes, but lacks support for human activities. This article describes a completely generic approach for changing this.

Markus Voelter about Software Architecture Documentation

In this interview taken during OOPSLA 2007, Markus Voelter talks about the importance of documenting the software architecture, and gives some good and also bad examples on how it could be done.