Who am I?

I’m an Agilist, a former software engineer, a gamer, an improviser, a podcaster emeritus, and a wine lover. Learn more.

Currently Consuming
  • The Lean Startup: How Today's Entrepreneurs Use Continuous Innovation to Create Radically Successful Businesses
    The Lean Startup: How Today's Entrepreneurs Use Continuous Innovation to Create Radically Successful Businesses
    by Eric Ries
  • The Talent Code: Greatness Isn't Born. It's Grown. Here's How.
    The Talent Code: Greatness Isn't Born. It's Grown. Here's How.
    by Daniel Coyle
  • Alexander Hamilton
    Alexander Hamilton
    by Ron Chernow

Paul Tevis

Entries in things that resonate with me (36)


The Future of Business (I Hope)

One of the few podcasts I still listen to is the HBR Ideacast, a weekly, twenty-minute show — usually an interview — put out by the editors of the Harvard Business Review. “Business” is a pretty broad topic, so not every episode grabs my interest. The last three, however, have resonated powerfully with me.

In the first, Michael Beer talks about the kind of business that I want to work for, ones that put priority on their social impact, and do well financially as a result. In the second, Nancy Koehn discusses how our understanding of capitalism is shifting and that businesses are discovering that just as important as what they do is how they do it. In the third, Heidi Grant Halvorson breaks some misconceptions about and shares research-based techniques for achieving success.

The first pair is obviously linked, with their focus on the social footprint of today’s enterprises. I found a subtle connection between the first and third, as well. When Heidi talks about how we get our best results when we emphasize getting better rather than doing well, I heard echoes of Michael’s thesis that the sorts of companies he and his co-authors profiled performed well financially precisely because they didn’t make it their sole objective. It put me in mind of Peter Drucker’s writings about the nature of businesses, that they did not exist solely to deliver shareholder value, but that they necessarily existed to serve some purpose and that profits were a byproduct of that activity. Nancy’s comments on the emerging notion of “shareholder capitalism” give me hope that those ideas might actually take hold.


Fitness: Rest day

Lessons from the Workroom

So I’ve mentioned that I’ve started watching Project Runway. Something happened on the episode that aired last night that really resonated with me. Here’s Carolyn Kellogg’s writeup that captures the relevant details:

Hot on the heels of creating hippie-ish outfits for a band, this week comes another challenge that sends the exasperated contestants straight back to the ’70s: They must create an outfit inspired by the “sophisticated ’70s” for sponsor Piperlime.com. The twist: At the last minute they’ll have to also create a second accompanying garment.

Contestants who’ve watched the show — all of them — are ready for this kind of “twist.” They’re also ready to create something for the mass market using a limited amount of dollars: $100 for the first outfit, $50 for the second. What they’re not used to is dropping that $100 somewhere in Mood, and not getting it back.

That’s Anya. She stands in Mood crying. This has never happened before, a contestant losing Mood money. Her mascara smears.

Tim Gunn tells her she can make her outfit with the muslin from the workroom and she can ask the other contestants for help. Only Anthony Ryan has yet to be rung up, and he gives her his change: $11.50. That’s all she can spend.

OK, maybe it wasn’t such a good idea for Anya to carry her envelope of money tucked into her dress above her breast, but it was the most interesting thing to happen all episode. The season is shaping up to be just plain dull, so Anya’s freak-out provided much-needed drama. Yet an Anya freak-out doesn’t last long: She cries, she worries, and then she gets to work.

I’d already decided that Anya is my favorite person on the show. She’s definitely got design chops. It’s obvious she has a great eye for composition and geometry, her use of prints is great, and she tends to make choice that push the envelope yet don’t make you wonder what planet she’s from. She’s a solid competitor, even if I think she won’t win the whole thing. But it’s her approach to the endeavor that’s really won me over. She seems able to honestly appraise her own work, something that some of the other people on the show don’t seem able to do at all. She’s one of the few people on the show who is willing to admit — in front of the judges — when she’s made mistakes. She doesn’t get involved in the drama that invariably breaks out between the contestants. And when things go wrong, as they did in a huge way this week, she knuckles down and does the work.

That’s the way I want other people to describe me.


Fitness: Rest day
Sun, Moon, and Stars: 380 words, 347 seven-day average, 287 average, 52721 total, 279 to go for the week; 6-day streak

Virtue in the Kitchen

My love for cast-iron cookware goes beyond the purely practical and into the philosophical.

A few years ago my friends Ted and Christina got me a large cast-iron skillet. I started out using it for stir-fries, because most home cooktops don’t produce heat to really get a wok hot enough for great stir-frying and the heat-retaining properties of cast-iron help compensate for that. As I got comfortable with it, it became my default cooking vessel, because it did a great job with just about everything. That’s the practical part.

The philosophical part has to do with how cast-iron cookware changes over time. As you use it, it seasons. It becomes more non-stick, easier to work with, and better at giving things you cook in it a tasty finish without burning them. Unlike my chef’s knife, which gets duller as it is used, my frying pan gets better with use.

In the Classical period, the Greek philosophers talked about arete — usually translated as virtue — as a measure of how fitted to its purpose a thing was. Aristotle used the notion of arete as the basis of his system of moral philosophy. The idea that my skillet improves its virtue with use resonates with me. And, of course, I want to see myself as less like the knife and more like the frying pan.

Now if you’ll excuse me, I need to go apply some virtue to some steaks.


Fitness: Ran 5 miles
Sun, Moon, and Stars: 503 words, 353 seven-day average, 286 average, 52341 total, 659 to go for the week; 5-day streak


I had what I can only assume was a brilliant idea for a blog post during my lunchtime run today. I’ll have to assume that because I’ve completely forgotten what it was.

I think it had something to do with being in the groove, because that’s where I am with a lot of things right now. I rode out the most recent period of stressful “oh no, the sky is falling, what do we do” meetings and conversations, and now we’re in the “we know what to do, let’s execute” phase of the cycle, which I find much more manageable. Realizing that those events really are part of a cycle helps me get through them, so next time I hope I’m smart enough to remember that at the beginning of the unpleasant part.

I’m also in a groove with writing. The blog has been rolling along, and the novel is gaining steam. I stumbled a bit with my “two hundred and fifty words a day” goal around the beginning of July, but today marks thirteen straight days of putting down words.

A lot of my other projects have similar momentum, and I remembering how key those long streaks are. Back in the first few months of year, I was good about paying attention to them and not breaking them. (I’m sure you can find blog posts to a effect with no great difficulty.) Every so often I remember how great the groove is and what I can do to stay in it. Right now is one of those times, so I’m going to do everything I can to make it last as long as possible.

Fitness: Ran 3.5 miles
Sun, Moon, and Stars: 383 words, 329 seven-day average, 266 average, 31369 total, 1131 to go for the week; 13 straight days of writing


Quick, Often, and Clean

Karl M asks:

More refactoring please! What techniques do you find yourself using? What do you love about it? Aesthetics? Patterns? ‘Craftsmanship’?

The phrase that’s stuck with me over the years is “ratcheting in the gains.” I first encountered it in a programming context sometime around 2002. I don’t remember where anymore, but it was probably in one of the XP books. I’ve carried that idea with me and used it as an ideal for years.

You see, the biggest problem I’ve seen on software projects I’ve worked on is moving in the wrong direction. When schedules slip, it’s not because we haven’t been moving forward fast enough, it’s because we’ve actually been moving backward. Developers break existing code without realizing it all the time. Unless, of course, they have a ratchet.

In the physical world, a ratchet is “a mechanical device that allows movement in only one direction.” In software, it’s something that makes sure that your changes are not breaking existing functionality. Having a comprehensive regression testing suite is the answer most developers have to this problem. That is necessary but not sufficient.

Refactoring and other agile software techniques recognize that in order to act as a ratchet, regression testing has to happen at the same frequency as coding. The cycle time of your test feedback needs to be roughly equal to — if not less than — the amount of time it take to make a code change. Running the tests, seeing them clean, and committing the code to version code is what setting a ratchet point is in software. Until you’ve done all three, you can still move backwards.1 After that, you’ve always got a known good point.

Another critical piece in ratcheting in the gains is setting those ratchet points as often as possible. I’ve seen material that indicates Agile developers commit code to version control ten times more often than non-Agile developers, not because they work ten times as fast, but because they see how to split the work into slices ten times as thin. I’ve seen my coding undergo exactly this transformation over the last year as I’ve started to use refactoring and TDD more effectively. Last week I did in six steps what I used to do in a single shot, because I’ve seen the value of being able to revert at any point. It’s like setting chocks while climbing: The closer together you set them, the less far you can fall.

The third critical ingredient that turns a regression test suite into a ratchet is the attitude that the tests always have to run clean. There’s no such thing as a “known failure.” If a test fails, you stop the line and fix it. If your tests are comprehensive, fast, and run often but you let them fail, you’re letting yourself move backwards.

Having that ratchet, climbing with those anchor points, is probably the thing I love most about refactoring. I can make changes to code much more quickly than I could before. Some people think that it’s odd that one of the XP values is courage, but my experiences over the last year have shown me why. In order to respond to changes — to truly be Agile — we have to have the courage to make quick changes to our code. It’s not foolish bravery, because we’ve taken the right precautions. We’ve made sure that we can’t go backwards, only forwards.



fn1. There really is a fourth step, which is seeing everything run clean in the production environment. Getting these three in place is still quite an accomplishment for a lot of teams and developers.