The disappearing calendar

I've had a few blog posts floating through my head for months - and now a business trip gives me an opportunity to let them float through the pipes of the internet.

A lot of agile methodology is around estimating and working in small increments to drive better predictability of delivery date.  I've teneded to find that as a product gets more mature and installed at more customer locations, it takes a longer period of time to close out a release.  The agile planning helps with the earlier phases, but at the end we need a little bit different planning and monitoring tool.

Whiteboard to the rescue!  As we get near the end of a release cycle, I often draw a calendar on a whiteboard.  I usually draw this in front of the whole team, and I draw the weekends on the calendar as well.  Then I grab an eraser and wipe off all the Saturdays and Sundays.  Then I erase any holidays or company events.  Then I ask the team where to mark the milestones like truly feature complete, feature testing complete, and regression testing complete.  Each day after that at the scrum, I erase the previous day.

I think this exercise does a couple interesting things.  First, the concept of "weeks" can sound like a lot - as in "oh, I'm sure we'll be done with that in a couple weeks".  When you draw the calendar and erase the non-working days, you're now looking at an exact number of boxes.  Second, when you start putting marks on this calendar, you see how close together things really are.  If you say you're feature complete on Tuesday and you say that you'll be done feature testing by Friday, it's clear there's only two boxes between those days.  Hopefully feature testing has been going on during the development iterations, but having the calendar illustrates the margin of error.

Lastly, erasing the days helps illustrate the sense of urgency.  The calendar is getting physically smaller on the whiteboard which should raise some questions about whether there's enough boxes left.

Here's hoping your calendar has all the days you need!

Free products = grillin' in the tornado

As you may have already seen, NewsGator announced today that all client products are free.  At the same time, we released new versions of NetNewsWire, FeedDemon, NewsGator Inbox, and NewsGator Go! for Windows Mobile.  Though we didn't make any noise in the press release about it, we also released an update to our online reader and several important changes to our API's at the same time.  There's more detailed information in the FAQ.

So here's the agile product management thought on this:  OMG!

As is typical here at NewsGator, there wasn't a ton of time between when we decided to do this and when we made it happen.  In a big command and control environment, someone would have built a giant project plan.  That probably would have taken a week just by itself.

Instead, we gathered the first stakeholders with the riskiest changes and had a chat about it.  Then everyone took ownership of their own piece - the client developers, the platform team, the platform team, the online reader team, marketing, support, etc.  We looked for the critical items that one group would need to complete for another group and those were the only things that we put on the calendar (such as it was).  The group of all stakeholders only met about three times.

This just can't happen without tons of maturity and ownership by the people involved.  But that's what makes Agile, and NewsGator, really work.

OpenSocial Grilling

Sometimes when the grill gets really hot, you just have to move the food quickly without necessarily having a complete plan. 

Last week, Google announced the OpenSocial APIs.  We had been working for about four weeks on this, and the application evolved tremendously during that time.  For contrast, here's my original mockup that we used to discuss the use case and features:

Giftnewsfinal So in about one month, we went from a rough concept (with a pretty ugly mockup) to really nice application.  Along the way, we did lots of iteration and even some very basic UI and concept testing.

From a product management point of view, we didn't bother building detailed iterations.  The team was small, and the API information from Google was very sparse in the beginning.  We basically just set a goal of having the primary features working by the middle of October so that we could spend the end of the month focusing on integrating the API's.

As it turned out, that plan worked pretty well because the API's ended up being a fair bit different than we guessed.  Iteration planning definitely has a place, but it is important to recognize situations where there isn't enough information to make a plan of any value.

Here's what the "canvas page" view of Didja Hear!? looked like on Friday when OpenSocial was announced:

Didjahear_nov1  

So where does that leave us now that Google has made their announcement?  As you might have guessed, a lot is still changing.  So the team is still working to a list of top priorities and adapting to the changes in APIs.

This is about as agile as product development gets, and we're staying on top of this by chatting and drawing sketches about new issues and use cases. 

For now, the grill is so hot we've just got to focus on making sure nothing gets burned while keeping an eye on how and when this gets served up for everyone to enjoy!

Grillin' Social Sites at microwave speed

I'm not a patient person by nature despite the "immersion learning" lessons from my kids.  Grilling is one of the few activities around food where I actually invest a little time.  Most working days, I toss a frozen lunch in the microwave between meetings and eat at my desk - and that's the pace I really want software development to follow.   Thunk, slam, beep, beep, beep, grab a soda, ding - eat!

This sort of attention-deficit life pacing makes agile development really appealing for me.  But with enterprise software, sometimes it can take a little longer than that.

Not so with the NewsGator Social Sites release that we announced today.  We started this effort two months ago.  In enterprise software development pacing that's the equivalent of having the food cooked before you can close the door on the microwave!

A lot of hard work went into making this possible.  The team had tremendous focus (and has a ton of talent of course).  From an agile product management point of view, the two biggest tools for this release were a couple of powerpoints and the whiteboard.  The real key, of course, was that there was a lot of timely, focused communication. 

Ashley (enterprise product mgt) and I had lots of quick meetings looking over a developers shoulder at a screen.  We pointed, asked questions, and drew pictures on the whiteboard.  We talked through tradeoffs, demo'd the prototype versions to key folks along the way, and used the software on our internal SharePoint server for almost the full time we were developing.

It's pretty rare that even the best of agile practices can produce this much great functionality with high quality in this short of a time period.  And while some releases are best grilled slowly, this was one was just perfect out of the microwave!   

Agile widget grillin'

The Syndication Services group at NewsGator is really great example of the power of customer involvement and rapid iteration.  They work so quickly and in such close partnership with customers, that they don't have any product management resource assigned for the widget production.

But they do have a lot of product management experience in the people who guide the team, and that lets them make decisions quickly.  And they have very skillful account managers who make sure expectations are understood and communication happens quickly (along with very strong support staff who back everything up.)  EDIT:  Just realized that I probably didn't make it clear enough in this paragraph that it is the very experienced and talented development and QA folks who are the linchpin to getting the widgets built quickly, correctly, and beautifully.  I probably should have shortened this whole thing to say that this is an excellent team!

The end result is really cool!  Yesterday, the new travel widgets for USA Today were released!  These are sexy widgets built in Flash that allow USA Today to be the first national newspaper to make content available in detachable widgets.  I have travel news on my Facebook profile page now!

At the same time, the Associate Press wrote a great story about the trend of newspapers toward widgets.

The point of all this from an agile product management point of view is that when customer communication is great, iterations are really rapid, the team is really skilled and experienced, and the scope of the work is not huge, product management is not really necessary.  I'd love to have some claim to the credit for their great work, but the Syndication Services team churns out awesome, customer-pleaseing widgets all by themselves!

If you'd like to see some of the other cool widgets this very agile team has produced, you can just hop over to http://www.newsgatorwidgets.com/

Grillin' with NewsFriends

Today we launched NewsFriends - a free social news application for Facebook.  It's a cool application that lets you choose friends to get your news.  The idea is that some of your friends are likely to hunt down cool news, blogs, video feeds, podcasts, etc and you can just benefit from everything they add.

Newsfriends75x75

Launching a Facebook application is tricky, and we sure learned some things today.  But I've already found two cool new feeds from Jennifer and Zoe!

The reason for this post, however, is to bring up an agile development point.  The vision for NewsFriends when it started out was quite a bit different than how it looks today.  In effect, everyone who worked on the project acted as a customer to give input into how the application should work.  It wasn't quite as simple as having a single customer to say "yes" or "no" to a feature, but some of the best parts of NewsFriends came from the two developers - Brad and Noel - talking through how they wanted it to work.

Now that it's released into the wild, NewsFriends will be driven by a larger number of customers.  But I think the first version is a pretty good testament to how well ownership and dialog can shape an application.

If you want to give it a try, just go to the NewsFriends information page to learn more and add it to your Facebook profile.

Facebook and Tour de France

We are trying a bit of an experiment to see if people would like to keep up with Tour de France news inside Facebook.

If you have a Facebook account, you can login and add this application with this link.

http://mit.facebook.com/apps/application.php?id=3323195013

I would be interested in your feedback on whether Facebook is a good place for you to catch up on recent news.

Thx,

Brian

Tourdefrance

Priority and time

The kids got me a gas grill for Father's Day, so I've been getting in more grillin' lately.

Last night we had an impromptu gathering, so I fired up the grill.  I have a bad habit of overcooking things, so this time I decided to give the actual grilling more attention (priority).  But as is often the case for me, I had lots of other things to do and I ended up not managing the cooking time very well.

This got me thinking about how we manage some teams here.  Many times here, we have so much going on that we just focus on managing priority.  We keep a list of tasks or projects from most important to least important, when someone finishes a task they look for the next available task in priority order.

On the teams where we use this, it tends to work great.  But often you can't predict the time something will be available without having some more specific controls.  So typically, we have additional milestones that we use to drive things to a little more predictable schedules - loads of our online services, demo days, etc.  These teams basically don't work in fixed sprints but have weekly priority reviews and daily scrums.

It's not perfect, but I have to admit it's more accurate than my grilling time management :) 

Anybody else use a hybrid method like this?

Have fun,

Brian

P.S.  Anybody want some slightly charred beef?

More whiteboard grillin'

[Insert interesting excuse here about why I have not been blogging :)  ]

A few weeks ago, we were reworking some of the login flow to our online reader at the same time we were changing the overall site design.  Since there are lots of login paths and rules, this is the kind of thing that can end up being a multi-page requirements document in non-agile approaches.

But I only had about seven minutes to get the requirements done (okay, I actually had days to get the requirements done, but I was doing other work - so I only had seven minutes on the day when I actually decided to do something).

So I printed out the relevant pages in the web site, taped them to the whiteboard, and grabbed a marker.  The result looked like this:

Loginflow

The team chatted about it for 10 minutes, pointed out some things I missed, did the work, and tested it.  And it worked!

I have a few more cool stories like this, so hopefully I'll actually get them written up here.  I'm going to try sharing my posts on Facebook, so if you want to add me as a friend, you should be able to see them in my notes.

Have fun,
Brian

Re-igniting the grill

If you've been reading this blog for a while, I'm amazed at your patience waiting for the next post that has anything to do with agile software product management.  It would be silly to say I've been busy - everyone on the planet is busy (although we are running nine different software betas right now...).  The real truth is that I've been holding off to write about something in particular.

Today we launched our beta of our new online reader!  The technology is super cool (both the parts you can easily see and some secret sauce under the hood).  But the part that excites me the most is the team ownership. 

Some agile development proponents are adamant about specific rules (XP's 40-hour work week) or specific terms (it's a "scrum" not a "status meeting"), but I think ownership is the most important part of any good software development.  So the agile product management trick is - who owns what?

When I met with the online team a little while ago, we talked about overall goals for our consumer business and then we decided as a team how we were best going to achieve those goals.  One of those goals was to make the reader much, much faster. 

As we've worked on the reader over the past weeks, the online team has had ownership of how we would make the reader faster and when they would complete each part of the work.  I have had ownership of the business decisions about what we would specifically deliver.  There has been a ton of great collaboration, and the lines between those areas blur.  But when push comes to shove, everyone knows what they own - and the team has delivered.

So what's the right division of ownership?  I think it varies greatly.  We have products where my only role is to help clear roadblocks and facilitate communication for the real owners and other products where I take a much more detailed role.  At the end of the day, I hope everyone feels like they own something really important, because they do.  NewsGator could never deliver all the truly amazing things that it does with this relatively small staff if everyone did not feel ownership and deliver against it.

So please take a look at the new reader beta.  You'll need a NewsGator online account, but you can get one for free!  Then just point your browser at:

http://www.newsgator.com/ngs/subscriber/beta.aspx

You'll be asked to sign in if you aren't already, and then just click the "Try the beta reader now!" button.

We still have some cool features to add that will make your reading experience faster, easier, and better.  You can check out the release notes on the main page and the tips to see some of the current high points.  Personally, I'm having a lot of fun watching YouTube videos inline.

As always, we value your feedback, so please let us know any issues, things that you love, or things that you would prefer to work differently on our forum:

http://www.newsgator.com/FORUM/Forum52-1.aspx

Thanks again to our online team for taking ownership of this!

P.S.  Stay close to the grill - I have some more good stuff cookin

Recent Posts

Powered by TypePad
Blogroll