Friday, November 28, 2008

Is Barack Obama the "Scrum President"?

The first moment I thought President Elect Barack Obama might be the first "Scrum President" was while I was watching Obama's Inner Circle Shares Inside Story on 60 Minutes.  David Plouffe, Obama's campaign manager, mentioned how his team only planned for days instead of years.  They were "more agile" and "not afraid to take risks". Now, just because someone says "agile" doesn't mean they follow scrum, but I haven't heard many politicians talk like this group does.

There are a few quotes from another story, Obama On Economic Crisis, Transition, that have elements of "inspect and adapt"
[It] is not always getting it right, but projecting a sense of confidence, and a willingness to try things. And experiment in order to get people working again.
If something doesn’t work that they’re gonna try something else until they find something that does.’
If the idea is right for the times then we’re gonna apply it. And things that don’t work we’re gonna get rid of.
Regarding transparency, Obama said this:
I think that we have to restore a sense of trust, transparency, openness in our financial system.
Scrum is also very big on the concept of "team".  During the week of Thanksgiving (which I don't have a direct reference to, but heard on KNX 1070 radio), Obama said in that America will succeed or fail as one people.

I know I am drawing conclusions on some very loose quotes, and I doubt anyone in Obama's campaign ever said, "Hey, let's run a scrum campaign," but I am seeing enough of an agile spirit, which is the most important thing. 

Scrum and Agile have worked very well for me in software engineering, and I hope it works out well for politics and government too.

Saturday, September 27, 2008

Setting Expectations, Getting Results

When people fail to meet expectations, it is often because they didn't know what expectations to meet.  Being a ScrumMaster, team lead, and manager, the most effective way I clear this up is to explicitly tell teams what I expect.  This phrase, although quite obvious and trivial, helps me achieve that goal:
"I expect you to ..."
Yes, it is that simple.  By clearly letting your team (or boss, spouse, friends, etc.) know what you are expecting, they are better equipped with the right information to meet your expectations.  Here is a specific example:

Self-Organizing and Self-Managing Teams
When teaching scrum to a team, I tell them that "Scrum teams are self-organizing and self-managing".  Now that the team has been told, don't expect them to start being self-organizing and self-managing.  Aside from the culture and personality changes that need to occur to make this happen, it is much more effective to additional tell the teams, or individuals on the team, what is expected of them.  I follow-up with this by telling teams and individuals, "I expect you to be self-organizing and self-managing."  This may seem repetitive, but it is very effective.

Here are a few more examples of expectations:
  • I expect you to get to meetings on time, not 30 seconds late.
  • I expect you to meet  your commitments.
  • I expect you to help others with their tasks as though the tasks were yours.
  • I expect you to be pro-active, don't wait to be told what to do all the time.

Sunday, September 21, 2008

AT&T Uverse Installation: Failed

I was very disappointed yesterday by not being able to get AT&T Uverse.  After waiting about one year for the service to be available in my area, I found out that it is still not available in my area.

There is some sort of junction box on the street that is maintained by AT&T.  You have to live within 4,500 feet to get the service.  I live 6,700 feet, and can't get the service.  The signal is too weak for the service to work.

The technician showed up at 2:00, at the end of the two-hour window quoted.  He spent about an hour trying to get the signal, but was not able to.  He told me about the situation and opened a Help Ticket to see what could be done.  At around 6:15, he told me I cannot get the service because I live too far from the junction box.

Hopefully, AT&T will add a box closer to my house so I can get the service.

Friday, September 12, 2008

AT&T Uverse: Order Placed

I placed an order to get AT&T Uverse today. The phone call took 30 minutes and the customer service rep was very nice. I got the U200 plan with 3.0 Mbps Internet. It looks like a good deal. Here is the breakdown:
  • U200 $59
  • HD "Technology" fee $10
  • 3.0 Mbps Internet $30
  • Extra TV Receiver $5
  • Monthly Total: $104
They are running a promotion so I get $14 off per month for the next 12 months, which brings my monthly total to $90. I am also eligible for the $200 cash-back. If I amortize this over 12 months, my monthly total drops $16.67 to $73.33.

I also was able to bundle my local and long distance service which was $41 before taxes, but is now $32.25.

I am currently a Time Warner customer, but will not be for very long if this all works out. After taxes and fees, I am paying $108 for Time Warner. Compared to the $73.33 for the next 12 months, it is worth trying.

Even after the 12-month promotion, the features, channels, and better equipment will be worth the extra few buck over Time Warner. I have been quite frustrated with the lack of HD selection with Time Warner.

Also, there is no contract, installation fees, set-up fees, or anything like that, or at least none that I agreed to. Not having a contract or equipment to buy is a big feature for me, which is why I haven't gone with DirecTv or DishNetwork, although I have heard good things about them.

Soft Skills: Anything Else vs. What Else

As a Scrum master, I make a conscious effort to allow the team to be creative and voice their ideas, however, sometime I need to control the pace in time-boxed activities. 

A common activity is asking the team to list items which I write on a whiteboard.  Sometimes teams can be a little distracted, tired, bored, or unsure of what should be on the list.  Sometimes teams are very engaged, passionate, and focussed.  In either case, there are two questions I ask, which I learned from Chris Sterling, which helps me control the pace.

"Anything else?"
I ask this question when we need to move on to another part of  the activity or conversation.  This is most commonly used, but is easy to say "no".  Here is an example exchange:
I am going to the market to get milk.  Do we need anything else?
No, that is it.  thanks.


"What else?"
I ask this question when I think there are more items to put in the list. It is easy to say "no" to "anything else", but when asking "what else", there is more of a compelling reason to give an answer. 
I am going to the market to get milk.  What else do we need?
Hmmm...we need eggs too.
With either approach, if there are or are not any items left for the list, the team has a way out, but one way is easier than the other.

Tuesday, August 26, 2008

Make it Visible, Make it Big: Sprint Burndown

An important tenant of Scrum is transparency.  Keeping the teams metrics and state of the project visible to others not only enables others to make decision based on this information, but it also has a great psycological effect on the Team.

Where is your team's sprint burndown chart?
A good place to put the sprint burndown chart is in an are where it gets a lot of visibility, but also where important people see it.  The burndown chart can be placed in a Starbucks, but the Starbucks clientèle is not interested in this.  I have placed the burndown chart on the Director of Engineering's office door, or on the door of the Product Owner.  Another effective place to put the chart is in a room or hallway where the peers of the delivery team can see it.  Of course, you want the delivery team to see the chart all the time too.

Make it BIG
People tend to respond to things larger in scale, than small things.  For example, the worlds largest thermometer gets a lot of attention just because it is big.  Nothing special about saying it is 86 degrees, but if you say it in a big way, now you have some attention.

Printing the chart on 8.5" x 11" paper isn't going to cut it.  Draw a chart on a large easel pad (24" x 37") or if you have a HP Designjet T610 with a 44" spool of paper, now that will work.  Add some colors and make the chart easy to read.

Friday, August 22, 2008

Scrum Tools: Points in eScrum and TFS in Visual Studio

I have been using the eScrum project template in Microsoft Visual Studio TFS edition for a few sprints now.  Along the way, the team noticed some issues with the template.  In TFS, by navigating to Team > Process Editor > Work Item Types > Open WIT from Server, I opened the eScrum Product Backlog Item template and made some changes.

Points
The Product Backlog Item template is missing a "points" field to indicate the relative size of a PBI.  There is a Baseline Work field, but that is used to represent the number of hours for the PBI in reports. I decided to add a Points field where a dropdown shows Fibonacci based numbers (0, 1, 2, 3, 5, 8, 13, 20, 40, 100, 250, 500, ?, infinity).  Since there are values such as "?" and "infinity, the field type must be 'String'.  I could have used the Baseline Work field, but that allows people to enter values that could complicate things, such as entering 21 instead of 20.  To avoid the debate, or having to correct this, I added an ALLOWEDVALUES rule to control this.

Query
Now I can create a query to allow me to see what items does the team need to estimate.  By using the team's velocity, this query can include items that are larger than half a sprint, which indicates the team needs to work with the Product Owner to break this down into smaller PBIs.

Monday, August 11, 2008

Quote: Communication

"Can I talk to the guy who is telling you what to tell me?"
Dan C.

Monday, July 28, 2008

Google AdSense Login Troubles

I was having trouble with my AdSense account. The account was inactive for a while, but then I decided to revive it. After searching on Google Groups and other web pages I was unable to find a solution that worked for me so I emailed their support team, which responded in one day. I hope this helps someone else out.

Symptoms:
When I login to AdSense, I get the message "An AdSense account does not exist for this login, as you have not yet completed an application."

When I try to sign-up, I get the message "A user with the email you specified already exists, Please select a different Google Account login to access this account."
Solution:

1. Please make sure that your AdSense account password is different from
your Google Account password.

2. You can reset it at https://www.google.com/adsense/assistlogin?hl=en_US

3. Once your passwords are different, you will need to log in to AdSense
with the AdSense email and password .

4. Once you log in to your AdSense account, please migrate using
https://www.google.com/adsense/migrate-login-1

Friday, July 25, 2008

Certified Scrum Product Owner

Certified Scrum Product Owner

In July of 2008, I continued my Scrum education by taking a two-day certification course in San Jose. It was taught by two fantastic trainers: Chris Sterling and Bryan Stallings. I highly recommend this course for any product owner, project manager, program manager, product manager, ScrumMaster, etc., if you are using Scrum or not.

Thursday, July 24, 2008

Certified ScrumMaster

Certified ScrumMaster
In June of 2008, I went to UCLA for a two-day training course to get a ScrumMaster certification. The class was taught by Chris Sterling from SolutionsIQ. I went back to work and started applying what I learned immediately.

The challenge was, I was trained to use Scrum, but others weren't. It was as though only one player knew the rules of the game. So how can I fix this...workshops. By holding a few workshops (or crash course), I was able to get the team up to speed...kind of. I couldn't fit all two days of exercises and material into a four-hour meeting.

After one sprint (two weeks), the team had felt what it is like to sprint. It sure was fast and felt short.

So now the team knows (or was at least informed) of the rules, guidelines, and goals of Scrum, the next challenge is to get them to play as a team. They are in the forming stage of the Tuckman model, and over time, will hopefully get to the performing stage.

By continuous inspection and adaptation, I am looking forward to watching the team evolve and improve over the next few sprints.

Friday, April 07, 2006

Mix06 Pictures: Keynote

Here are some blurry pictures of Bill Gates from Las Vegas, NV:



Friday, March 31, 2006

IIS Application Pools and ASP.Net 2.0

Application Pool Organization

Microsoft IIS 6.0 uses Application Pools to run web applications. Each application pool runs in its own worker process. This will allow you to configure each application pool to its own secuirity and resource consumption.

However, application pools cannot have both an ASP.Net 1.x and an ASP.Net 2.0 application running in the same pool. You can create a new application pool for the 2.0 apps.

The two extremes for application pools seem to be this:
  1. Run everything in one application pool
  2. Run each app in its own application pool
There are pro's and con's for each approach. I am asking readers:
  1. What motivates you to put an application in one pool versus another?
  2. When do you create a new application pool?