My Wish List for Federal IT Contracting

U.S. Constitution

I was on an industry panel at the ACT-IAC DevOps Forum a few weeks ago. The first question the moderator asked was, “From your industry perspective, what could the Federal Government do to increase the adoption of DevOps?” The moderator and panelists had a prep call a couple of days prior to the event so I had a chance to think about my answer in advance. I chose to let loose on something I would like to see in federal contracting (the first one in my wish list below). After the event, I thought about more contracting approach changes I would like to see adopted by more agencies.
Continue reading

Top 4 IT Fails of All Time

smilies bank sit rest

I’m a big believer in the old adage, “Those who do not learn from history are doomed to repeat it.” You need to examine your mistakes, figure out why and how you made them, and then use those lessons so you can do better the next time. In addition, I would prefer to learn from other people’s mistakes rather than committing them myself — it’s gain without the pain. So I asked myself the question, “What are the biggest IT fails in history?” And then the more important follow-up, “What can I learn from them?”

I wanted to find the failures that were significant and spectacular. They had to be impactful and memorable. There are plenty of stories about failed IT projects that “just” wasted a lot of money like this one from the Air Force (there’s a lot to be learned from them, too). But I wanted the projects that culminated in a momentous, go-out-in-a-blaze-of-glory, end-up-on-the-evening-news kind of failure.

Here’s my short list along with the lessons I took away from each.
Continue reading

What I Think When Your Website Is “Down for Maintenance”

We have two dogs at home, one of whom is “microchipped” in case she wanders off or we lose her. We pay $18 a year to a company to keep our dog’s information available to whomever finds her. This year’s renewal notice came in the mail and it indicated there was an online renewal option available. So I toddled over to the website, entered the microchip number, and… no record found. Hmmm. Maybe I fat fingered it. I entered it again and… no record found. So I called the customer service number and spoke to a rep. I told him I was trying to renew the account for my dog, but the website wasn’t bringing up her record. His response was, “Oh, yeah. Our website is down for maintenance. I use the same website so I can’t take payment from you right now, either. Could you try again tomorrow?” Hmmm, again. I was really surprised this company would schedule a website maintenance window in the middle of the day and it would be so significant they couldn’t even take payment from a customer. Who does that??? It left me thinking about the company and what else I could infer about them just based on this one experience, especially about their IT practices.
Continue reading

Good Coach, Bad Coach: What does a good Agile coach do?

I’ve heard a lot of horror stories from people about engagements with so-called Agile coaches. They want their teams to perform better and, from what they’ve learned and heard, they believe Agile is a way to address that. So they spend a bunch of money on individuals claiming to be Agile coaches hoping to find Agile goodness, but they end up just being frustrated and a little poorer. Even worse, their teams get frustrated, too, and sometimes the whole Agile transformation is put at risk because of the bad experience.

So what does a good Agile coach do?
Continue reading

Creating Transparency with an Agile Project Dashboard

We do a lot of Agile software development work for clients. Small teams. Big teams. .NET. Python. Java. Ruby. Lots of tooling. Minimal tooling. Startups. Large enterprises. One consistent challenge we’ve faced, especially in larger projects with big teams, is making sure everyone involved has accurate context and awareness about the state of the project as a whole. Getting everybody “on the same page” helps people recognize issues, communicate better, and make better tactical and strategic decisions. When people aren’t on the same page, they get surprised — and not in a “hey, surprise, it’s a birthday party for you” kind of way. These surprises cause confusion, stress, more work, and loss of confidence. No fun.

To avoid those unwanted surprises, we need context and transparency into different aspects of a project. And for context and transparency, my “go to” solution is the dashboard.
Continue reading