Change

TSD #2: Short Session, Long Notes

TSD Development: First short TDD session pushed. I said I’d start yesterday, but instead I played a computer game most of the day. https://github.com/GeePawHill/tsd This was short and sweet, so there’s just three simple points of interest, one noticed infrastructure problem, then I’ll move on to the next part. POI #1: This was textbook TDD, as most toy problems are. Think of a test, write a test, fail a test, pass a test, design it all. No shockers or embarrassing …

TSD #2: Short Session, Long Notes Go to Post »

TSD #1: Early Thoughts, Tests, Code

TSD Development: The first thing to do is make a thing that accepts key-value pair assignments to make a tree. Since kotlin readily supports map-like assignments, the first minor-leage case looks like this: output["key"] = "value" That resembles a map, by design, but it isn’t one. Later cases will elaborate this, but the secret sauce is two-fold, consisting of a sequencing concept and a nesting concept. Sequencing: the order in which keys are assigned values is preserved. Think in terms …

TSD #1: Early Thoughts, Tests, Code Go to Post »

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 »

Scroll to Top