Coaching

MCE #2: Mindful, Collaborative, Experimental

My mindfulness works in large part by way of changing my identity, my sense of "who I am". Before I even inch into this, I just gotta remind you that you’re reading the words of someone who is an obnoxious wise-cracking irreligious unspiritual foul-mouthed dirty-minded unmystical hardcore computer geek. It’s important to say, because after all, we’re about to talk about stuff that is easily associated with an archetype I very much don’t resemble. My own encounters with that archetype …

MCE #2: Mindful, Collaborative, Experimental Go to Post »

MCE #1: Mindful, Collaborative, Experimental

The majority of the time, my successful collaborations begin deep within me, and so do my unsuccessful ones. (Part of the reason I’ve been so quiet these days since first talking about collaboration has been finding a way into my take. What is the most important story? How can I tell it? What advice, if any, does it yield? Consider this WIP, but I think I’m ready to take a swing at it.) I am first and foremost a professional …

MCE #1: Mindful, Collaborative, Experimental Go to Post »

UDispatch #5: What is TSD?

So. What is TSD? It’s a small library whose purpose is to make it easy to collect, render, compare, diff, and test tree-shaped data. Once we get past basic programming, it is very common to have to create orchestras of objects that form conceptual trees. Note, these aren’t literal trees. Hmmm. Better talk about that. Consider my mp3 collection. A Recording has a number of fields. They include primitives, psuedo-primitives (like String and Date), and references to other objects, like …

UDispatch #5: What is TSD? Go to Post »

Agility, Feminism, and Collaboration

So. Hanna Thomas wrote an excellent article a few days back, here. When Lean-Agile methodologies are brought up in progressive spaces, they’re often met with a suspicious side-eye. After all, as Audre Lorde said, ‘the master’s tools will never dismantle the… The article was briefly suppressed, but it was restored pretty quickly, and there it is. I told Hanna I’d have something to say about it, and this is that. 🙂 The article has a lot in it. I actually …

Agility, Feminism, and Collaboration Go to Post »

Old White Guys and Agility

I’d like to take a second to address a trope I see here and there about the founding of the agile community. It’s the stuff about "old white men". Non-trigger warning: relax. This isn’t a rant. BTW, I hate using the word "agile" for our movement, & usually use circumlocutions to avoid it. I believe that, as we grew, through at least some fault of our own, our peaceful and positive vision has become a horrifying stick to hit people …

Old White Guys and Agility Go to Post »

TDD Pro-Tip: Make The Tacit Explicit

Refactoring Pro-Tip: When I make tacit relationships explicit I nearly always improve my code. Once I move past syntactical refactorings into semantics, this is often my first set of moves. So what does this mean, "tacit" vs "explicit", in code? Maybe the easiest way to come at it is with a very dumb example. The simplest tacit relationship I can think of is modeling a one-to-one relationship using two lists. The first list is composed of tokens. The second list …

TDD Pro-Tip: Make The Tacit Explicit Go to Post »

UDispatch #4: Stand-In Plugins

The next amazing layer, now that we’ll have plugin architectures worked out, is to use plugins as stand-ins — very lightweight simulators — of the upstream behavior. A "stand-in" is a plugin that pretends to be an upstream service expressly for the purpose of developing a particualr downstream or set of downstreams that operate against it. Now, the mind can’t help to go to the word "simulator", I even used it myself up above. But I’m going to use "stand-in" …

UDispatch #4: Stand-In Plugins Go to Post »

UDispatch #3: Custom Traffic Display

Generic traffic display is part of the second layer of UDispatch’s intended functionality. And that’s okay. But custom traffic display is even better. The first layer gives us the handy bulk reverse proxy, and the second one gives us generic traffic display. And both of these help a little. But there’s two more layers of function here, and today we talk about third one: custom traffic plugins. In the early days of implementing upstream-centric architectures, two strong tendencies stand out: …

UDispatch #3: Custom Traffic Display Go to Post »

Thick Culture Begins With Temporality

Thick culture begins with developing a sense of temporality: past, present, and future. I believe that if we persist without this sense, the geek trades will never be other than the dystopia we experience today. (This conversation is a hard one. Expect a rambler of a muse, here.) Start with plain ol’ professional programming. If you’re like most geeks, your current team is working on a project with lifetime measured in years, has been in production for a while, and …

Thick Culture Begins With Temporality Go to Post »

Upstream Uptime #4: Content-Level Versioning and Diagnostics

Half of the point of upstream-centric architectures is simultaneous change, and that means the content needs versioning & diagnostics, not just our transport. The biggest single difference between a modern upstream-centric architecture and our database apps: the database app doesn’t change without our control. We choose how/when we upgrade. In effect, the database, even though it’s an upstream, feels like and can be treated like just another part of the language syntax. Whether our code works, or doesn’t, and how …

Upstream Uptime #4: Content-Level Versioning and Diagnostics Go to Post »

Scroll to Top