Programming

Real Programming S01E02: Look, Ma! A Test!

This entry is part 2 of 10 in the series Real Programming

Real Programming S01E02: Look, Ma! A Test Last time we did a rapid-fire model/view split, just so we could test. Now we gotta test this bad boy a little! If you want to follow along in the code, the project is https://github.com/geepawhill/yz Hey, it’s GeePaw and I still have Wally, and Molly’s off camera, and we’re back with Real Programming: the show that still doesn’t have a slogan, but that’s OK. We’ll keep going. Anyway, when last we left you, […]

Real Programming S01E02: Look, Ma! A Test! See Full Post

The Correlation Principle

The correlation principle says that our productivity is tightly correlated with the internal quality of software. The two go up together, and they go down together, and you can’t trade away the one to get more of the other. Let’s talk it over. I remind us that geekery isn’t the main story right now, though you and I can use it as comfort food. Keep working on changing the world. We can do this. In fact, we’re the only thing

The Correlation Principle See Full Post

Real Programming S01E01: Getting Started | Video

This entry is part 1 of 10 in the series Real Programming

(Video: https://vimeo.com/448155181) Real Programming S01E01: Getting Started Hi Folks! In this first episode we lay the groundwork for a simple desktop Yahtzee application. If you want to follow along in the code, the project is https://github.com/geepawhill/yz Transcript Hey, folks. It’s GeePaw sitting out here on my deck, where I do most of my work in the summer months. And today is the first episode of my new series called real programming, the show where we don’t have a cool slogan

Real Programming S01E01: Getting Started | Video See Full Post

Pathing: A Style of Laying Out Work

I do "pathing" when I project my work into the future: laying out a sequence of work steps, where each step ends with the code in a shippable state. More than design, and more than planning, pathing is a kind of work-style, and it brings me several benefits. Here in the US, citizens are out in the streets on a quest for equity, and the truth is that geekery just isn’t the main story. If you’re out there working for

Pathing: A Style of Laying Out Work See Full Post

Embrace Change: Modern Geekery Practices

"Embrace change" is the modern geekery catchphrase for our most basic idea: We change software, therefore we want everything around us to support that: code, technique, tools, controls, tracking, planning, infrastructure, and above all, culture. Before we start, remember, geekery’s not the main story right now. The real embrace of change is happening out there on the streets. I fully support my friends & family out there in their quest for equity. Stay safe, stay strong, stay kind, stay angry.

Embrace Change: Modern Geekery Practices See Full Post

TDD Tests Are First-Class Code

My standards for TDD microtests are the same standards I have for shipping code, and I follow them in microtests for the same reason I follow them in shipping code: they make me faster. This geekery muse is comfort food, for me and maybe for you, but I want to keep stressing: I fully endorse and support my sibs out there on the street protesting this violent police uprising. Stay safe, stay strong, stay kind, stay angry. Black lives matter.

TDD Tests Are First-Class Code See Full Post

Microtest TDD is Gray-Box

Microtest TDD is a gray-box testing approach, neither entirely inside nor outside the code it tests. Let’s talk that over. Before we dive in: Black lives matter. Stay safe, stay strong, stay kind, stay angry. Let’s not just embrace change, let’s initiate it. Any step you take helps, provided only that it’s doable, it’s not definitely backwards, and it’s not the last step. In the ’70’s, an important movement developed in testing theory, called "black box" testing. The idea is

Microtest TDD is Gray-Box See Full Post

Understanding Incremental Switchover

The incremental switchover approach is my default response to any transformation problem I can’t resolve in an hour. It’s the secret to successful brownfield development, but it’s not widely understood & used. Let’s take some time to understand it. As is my wont, I will again say that geekery isn’t really the most important story right now. I, and I hope you, understand this. Stay safe. Stay strong. Stay kind. Stay angry. Work on equity, when you can, how you

Understanding Incremental Switchover See Full Post

The RAT: Rework Avoidance Theory

Rework Avoidance Theory, or RAT, is likely slowing your team down more than rework ever would. Let’s talk a little about that today. I am writing these geekery muses in a time of great turmoil, but for the most part they’re not addressing that crisis. They are momentary respite, for me, and hopefully for you. They’re not the main story. Stay safe. Stay strong. Stay angry. Stay kind. Black lives matter. Rework Avoidance Theory is a cluster of related ideas

The RAT: Rework Avoidance Theory See Full Post

Turning Implicit into Explicit

Turning implicit understanding into explicit code is a great productivity & quality step. Let’s talk about some whys and hows for that idea. As we forge into the topic, please do remember, this is just comfort food, not the main story. I proudly support my friends & family who are working for change in the world, and encourage them to keep at it. Stay safe. Stay strong. Stay kind. Stay angry. Black lives matter. An implicit understanding is anything a

Turning Implicit into Explicit See Full Post

Scroll to Top