We’re on the same team

A big organization, like Windows, needs to be aligned and work together to produce a great cohesive product. This means teams talking to each other about dependencies, interfaces, and timelines. That communication is crucial to tying together seamless customer experiences, reducing friction, and delivering value smoothly and efficiently. Unfortunately, humans are lazy, selfish, and suck…


When the customer is wrong

 The saying goes, “Rule #1: The customer is always right.” But what about the customers who appear to be idiots or ignoramuses? What if the customer is wrong? The extended cliché goes, “Rule #2: If the customer is wrong, see rule #1.” Now that’s really stupid. Customers are often wrong and make nonsensical requests about…


Productivity mechanics

 Let’s say you run a great team that already has trust, fails and recovers quickly and safely, and sets clear goals, priorities, and limits. (If you don’t, internalize Is it safe? and I can manage.) How do you take a team like that and make it even more productive? You could search the internet and…


Moving forward

 My youngest child left for college more than a year ago, leaving my wife and me with an empty nest. We knew someday we’d need to move for health, family, or financial reasons, but our old house is wonderful. It’s comfortable and familiar, full of fond memories and accumulated belongings, and near to friends and…


Making lemonade

 A week or so after I started as the new dev manager for an existing group, the person who was clearly my most knowledgeable and respected lead informed me that he was leaving Microsoft to move back home. A few days earlier, I had seen this person resolve a crisis that no one else expected…


Diamond dependencies

 How can you tell if you’re a smart engineer? What separates people who go through the motions from those who really get it? Second-order effects. Anyone taking an introductory software class can learn what changing a line of code does to a function, but engineers who really understand programming will see the cascading impact of…


Get real

 Could you be replaced? Could your product get hacked? Could an essential service fail? Could a key co-worker leave? Could a critical dependency arrive too late? People often measure themselves, their peers, and their heroes by how they respond to crises. That’s nice, but it’s dumb. Some people freeze, run, or hide during crises—they’re pathetic…


Better for everyone

 This month’s column is about accessibility. I’m not making patronizing arguments for it. I’m not saying, “We’ll all need it someday.” I’m not rehashing heartwarming stories of inspiring people who prevail over life’s challenges. I’m not reminding you of your legal obligations. If that’s why you’re following software and hardware accessibility guidelines, then you’ve missed…


Love your customers and partners

 Horrible teams dislike their customers. They think their customers are stupid, lazy, and ignorant. To horrible teams, customers are infuriating imbeciles who completely miss the point of the product, but must be dealt with anyway. In contrast, tragic teams tolerate their customers. They think their customers are misguided, lazy, and imperfect. To tragic teams, customers…


Staying small

 The One Microsoft strategy tells us we are one company. We have one operating system, one app API, one marketplace, one cross-platform set of apps, one search, one cloud solution, and one toolset. The days of duplication and reinvention are over. Good riddance. What’s a huge team left to do? Get small and stay small….