Showing posts with label Scrum. Show all posts
Showing posts with label Scrum. Show all posts

Using a Blog to Publish… Everything!

| Sunday, March 22, 2009

Last week we finished up with our second sprint – Wednesday was the last day and Friday was Demo Day.  One of the new features added during the sprint, as Meat mentioned, was the integration of a Blog into our primary application.  It’s not a real blog in the way that most people think of a blog – random thoughts, opinions, and politics,  but rather a series of documents describing specific features and modifications to the application itself.

Background

A couple of years ago, I pimped out some programming to my wife for a new set of golf clubs.  She helps run a dog rescue, and their old website sucked – it was traditional html in the format of something you would see back in the mid 90’s.  They we constantly rescuing dogs and looking for adoption candidates, and needed a better way to help people understand what the status of the dogs that were going through the rescue process.  I delivered a website that helped with the dogs part of it, but she was constantly asking me to update the front page. 

light bulb shadowBeing a software developer, I HATED doing that kind of work, and  would procrastinate with the skill of a veteran husband who already had his golf clubs.  After the application of some serious nagging with the skill of a veteran wife (maybe above average skill), it occurred to me that what she really wanted was a blog on the front page.  So one day when she thought I was updating her website, I rewrote the front page so that it pulled the “Updates” from blogger.com using the Atom feed.  I set her up with Windows Live Writer and I haven’t had to touch it since!

Back to the Sprint…

In the previous sprint, one of our business analysts was tasked with delivering .pdf documents for some of our more popular reports describing each report in some detail.  We were planning on showing the document in some kind of iframe when a user clicked on the report description page.  In reviewing his work, i realized that we could use this kind of documentation all over our application, but I wasn’t too crazy about .pdf documents being the method of delivery.  So I brainstormed with Meat and a couple of other lead developers and decided to blog our documentation. 

Meat wrote the Atom Interface classes and made it easy for us to drop them onto any page, and I worked on selling the concept to the rest of the Senior Management team.

Whatever you do, don’t mention “Blog”

In a “Roadmap” meeting after our second sprint was well underway, a couple of VP’s were concerned about the amount of “stuff” coming out, and how to get the clients and support staff up to speed on new features.  I mentioned the blog concept – how I thought it would be a good way to get the word out on new features – and yikes – it was met with a lot of skepticism.  I think it would have been an easier sell if I hadn’t used the word “Blog”.  I should have called it “A Collaborative Interactive Article Authoring and Publishing Tool”.

I never really sold the concept to them, but they reluctantly agreed to wait until the demo before passing judgment.  I did get them to consider having the support managers actually participate in the sprint, and author some of the blog content, but I haven’t heard back as to whether or not they will.  It was exciting to me because up until that point I hadn’t considered anyone besides the software development and QA teams would actually author any “articles”.  Now, the more I think about it, the blog is a PERFECT tool for this – and I want as many authors as are willing to post.

Context Sensitive Blog

moreInfo The way we’ve implemented this, we use “Labels” or “Categories” to provide context to each entry.  Our application will provide links or “More Info” buttons on the page that will open a new browser window with all of the blog entries that match the labels specified by the button.  Then, any of our authors can stick a label to an entry describing an update to that page or function and walla – the new blog entry appears inline with the previous entries on that topic.  Additionally, the new entry can be referred to directly with hyperlinks, and we can send links to users via email and twitter too.  We also have a “what’s new” section that will include all entries.

Demo Day

In order to help drive the concept of the blog, and to help sell the idea that we should have many authors, we asked all of the team members to write one article each on a new feature they were adding during the sprint.  So Friday, we rolled out the concept of the blog, along with all of the team’s content, and the feedback was emphatically positive.  Several of the chickens expressed interest in writing content, and others called it the most exciting feature they’ve seen in years.

I don’t think I’ll have any trouble selling the concept now…

Scrum and Journaling

| Thursday, February 5, 2009

As Crash mentioned earlier, we have implemented the Scrum process. So far, I’m very pleased at the progress we are making as a team. The first couple of Scrum meetings were a little rocky but we seem to be in a groove now. The burn down chart is healthy and everyone seems to be acclimated to this new process. It’s not too far off from what we were doing before except now we have accountability to our fellow team members to get sh!t done.

One thing I see programmers struggle with is remembering what they did yesterday. This seems like a simple concept. All you have to do is review the burn down chart and you’ll know what you did. Everyone comes to the Scrum with a pad of paper and a bunch of chicken scratch of things they worked on the day before. For the team leads like myself, it is a little more difficult to remember what you did yesterday because we wear so many different hats in addition to our responsibility to Scrum and the sprint.

I won’t write things on paper, ever, so I went looking for a solution that would allow me to quickly jot things down so that I can stay focused on work and would be easy review them prior to the next days Scrum. I came across an application called EVERNOTE, which is a very cool note taking app on steroids.

Remember everything.

Evernote allows you to easily capture information in any environment using whatever device or platform you find most convenient, and makes this information accessible and searchable at any time, from anywhere.

So I can sync my notes/journal on the web, my iPhone, my PC desktop and MAC desktop. Are you kidding me? This is genius! The features are amazing, like text recognition on images for example. Where has this been all my life?

photo To bring Evernote into my Scrum life I needed it to be a daily journaling utility. Setting Evernote up to be that was simple. I created a notebook called “Journal”. I create a new note each and every day with the date as the title and SCRUM as a tag. That journal note is always open on my machine and syncs often so that I can access my daily journal from other locations, like my iPhone when I’m in a meeting. The next day just before the Scrum, I simply review my journal from the previous day. It’s drop dead simple and I feel comfortable with it because I can access the system from anywhere. The searching engine it bad a$$ which I like because I may want to see all the code-reviews I did at the end of the sprint, or review how many roadblocks I knocked down during the sprint.

If you haven't seen this yet then you have to try it. The best part is the price, FREE!