Year: 2019
-

Team Scars
You know those signs in every shared kitchen? “Please rinse your dishes and put them in the dishwasher”, “please don’t leave food in the fridge over the weekend”, &c? They happen because people were piling dishes in the sink and letting food rot. Something had to be done, and the…
-

Changing the Company
I’ve written a bit about mishandled change attempts — everyone loves a little schadenfreude, and failure is easier to spot than success. This does not mean I think it’s wrong to change: you can’t keep selling buggy whips or spellcheckers when the market for them disappears. Let’s set aside the…
-

Multi-tenancy in platforms
If you’ve built a monolithic enterprise product, it is not sensible to convert it to multi-tenancy. You can sell a managed service provider (MSP), but you’re not going to get to software as a service (SaaS). Often no one wants to discuss reasoning at all, because the need to convert…
-

Why is open source content rare?
Open source community incentives are biased to prefer developers over content creators. Open source communities are particularly prone to this failure mode. After all, the developers in the community are all doing their work for valid reasons, so why wouldn’t content creators join them? Hot take: the incentives are different. Open source…
-

Supporting Ancient Software
With another round of fixes to Windows XP, the time is ripe for bloviating about supporting ancient stuff. Every software vendor has to decide what to do about supporting what they used to ship, as well as the broader ecosystem around them. Operating systems, databases, service providers. Maximize use of…
-

Land and Expand Packaging Decisions
Subsets of packaged content are needed in different system classes. If you’re pursuing a land-and-expand model, then you need to have a way to expand. One way is to ship a static monolith with features turned off. Another is to ship dynamic add-ons to your base product. Teams make these…
-

What does your product disallow?
Product design sometimes opens an interesting can of worms: things that may be possible to do, but which the designer didn’t intend. Do you hide these paths or not? Will your user ultimately be frustrated, or satisfied? The answer depends on whether your product’s design accurately sets and meets expectations…
-

Entities and Attributes
Quadrant models are useful organizing tools. Let’s use one to look at the problem of managing the attributes of entities in systems visibility. I’m not expecting to solve the problem, just usefully describe the playing field. Horizontal axis:* persistent entities with changing attributes* ephemeral entities with static attributes Vertical axis:*…
-

How to manage a Proof of Concept
POCs as a concept are a response to customers getting oversold. As a vendor we’d rather skip the whole thing and trust our sales team to scope properly. As a customer we’d rather not spend time testing instead of doing. Sometimes they have to be done though, and it’s best…
