Helping Geeks Produce for Over 40 Years.

My mission is to help people learn how to embrace change and harvest its value. That’s why I started the Camerata: a community of like-minded teams and individuals pushing forward the industry of software development. Click the button and discover the benefits of becoming a member today!

Latest News

Featured Video: The Lump of Coding Fallacy

Newcomers often think Test Driven Development will slow them down, but here, GeePaw explains how the "Lump of Coding Fallacy" leads them to that mistaken understanding.

GeePaw's Camerata

GeePaw's Camerata is live! A community dedicated to makers making. Access to the Slack, one-on-one time with GeePaw, store discounts, early access to educational videos, and more!

Town Halls

Starting at the end of March 2020, GeePaw will be hosting remote Town Halls via Zoom. These will be small gatherings capped at 25 participants and last about 90 minutes. Click the image to see the upcoming Town Halls.

Recommended Reading

Thanks to respondent feedback, I have been curating a list of all the reading that I mention in my blogs and elsewhere. I will update it as frequently as I can manage.

Recent Posts

Kontentment And Human Arcs

Aight. I been away from programming for a couple of months, but there was a reason I started talking the other day about the kontentment project: I’m wanting mucho change in it. For a talk I’m giving, I want the ability to draw human arcs, with the same ease with which I can draw human lines. So I set out today to get that in. Human straight lines start with a line segment AB. Pick two random locations on that line, so we got 4 points. Now jiggle all four points a little — that’s official terminology — and make

Read More »

Frames in the Software Trade: An Example

We’ve talked about frames adding up to worldviews adding up to cultures, but it all feels pretty vague in its possible importance. We need some informal sense of how this works in practice. In the immortal words of Brian Marick, “an example would be handy right about now.” Continuous Integration (CI) is the practice of frequently cycling code through the source vault. People practicing CI do this several times a day. In “git” terms, they both pull/merge/push, depending on language & task, once every 15-90 minutes. There are several reasons for me to choose CI as my example. First, though

Read More »

The Kontentment Project

I am in a mood of 1) wanting to geek out a little, and 2) wanting to concretize some key ideas from change-harvesting for my fellow geeks. To do that, I need to give you a sketch of the kontentment project, a desktop app I wrote and use in making videos. The source for kontentment is here: Kontentment – GeePawHill on GitHub I don’t particularly recommend you download it or try to run it. You won’t need to for these conversations. (Tho by all means, if you do bother doing that, and you have issues or questions or want to

Read More »

The Cost of Changing Microtests

The “How I Work (Test-Driving Mix)” drew some questions and comment. How I Work (Test-Driving Mix) Here’s one: a respondent says, “If I write a lot of small tests and I change how a feature works, I have to change or throw out all those microtests, which is a lot of work.” (The respondent proposed an answer for this problem, and it’s not a bad one, but raises some other questions we might get to later.) The one-liner response: “For me, it’s *significantly* less work to do that than to work in any other way I’ve tried to date.” I’m

Read More »

How I Work (Test-Driving Mix)

A while back, I wrote a muse about how I work focused just on the coding I do. Today I want to talk about how I test during that process. How I Work – Just Programming Mix | The same caveat applies as before: This is not intended as prescription. I am happy, believe me, to tell you what to do. But that’s not what this is. This is just what I do.  Meta: I don’t separate testing from coding as activities. When I work, I am constantly bouncing back and forth between changing production code and changing test

Read More »