Designs don't have "superpowers"

Time for another rant about a word seeing increased use in technical discussions (and elsewhere): superpower. It just doesn’t mean what people imply it means.

more ...

"Opinionated" design as design rationale

I see increasing use of the phrase “opinionated design”, frequent enough to risk it becoming a vogue word in our field. What makes a design “opinionated”? If someone declares a design to be “opinionated”, what might that tell you about it? How would a designer justify that claim?

more ...

The external interfaces to Kubernetes ingress

Defining a Kubernetes ingress seems simple enough: Define a YAML file and you’re good. But that only defines the interface from services inside the cluster to whatever external agent is connecting external client requests to cluster services. It says nothing about the interface from that external agent to the Kubernetes control and data planes. If you are building a cloud provider, how do you connect your external load balancer to Kubernetes clusters inside your cloud? If you are configuring an entire on-prem cluster from scratch, how do you set up access to the Internet?

more ...

Three rings of abstraction in Kubernetes

A common analogy for Kubernetes presents it as “the operating system for microservices”, identifying Kubernetes as a kind of operating system. I don’t think this analogy is wrong but I do think it’s underinformative, leaving the key question unanswered: What abstractions does this “operating system” provide? I suggest that unlike the more focused set of abstractions provided by the classic Unix model, the abstractions of Kubernetes can be grouped into three concentric rings. This highlights the different kinds of benefits Kubernetes affords and clarifies the decisions an organization must make when adopting Kubernetes.

more ...

A manager cannot be a mentor—but should still give advice

Mentoring. Everyone thinks it’s a great idea and many claim to do it. Yet both formal studies and my personal observations suggest that such relationships are rarely sustained and often not retrospectively valued by the junior participants. To sustain effective mentoring many elements must be in place but I believe that an essential requirement is this: The mentor cannot have authority over their protege. The mentor’s suggestions must be suggestions, not orders. Without that basis, the whole relationship falters. Teaching and supervising are distinct roles from mentoring, however much they share elements with it. The advisory nature of mentoring affects every aspect of the relationship.

more ...