Join my daily Newsletter

Subscribe to get my latest content by email.

    I respect your privacy. Unsubscribe at any time.

    preloader

    Predictable processes

    • Monday, Mar 30, 2020
    blog-image

    [Reading time: 1 minute 17 seconds]

    One of the things that never ceases to amuse me is that the same principles you should use to raise little kids apply just as much to grownups.

    Consistency is one of these principles.

    Every parenting book tells you to be consistent with your kids (and holy cow is it hard). Why?

    Because consistency breeds trust. Comfort. Structure. Reliance. All manner of good things.

    And this is why people rightly crave reliable processes.

    In many cases, not having a thing is actually better then having this thing, but it being unreliable.

    A CI pipeline that almost works is terrible. You’ll have to babysit it, perhaps unclog it, hover over it while it (hopefully) does its thing. It’s not continuous at all, doesn’t relieve you of mental load.

    All it is, is in your way.

    Similarly, if you can’t depend on your development process in some other way, it will be a bad source of distractions and impediments:

    • it creates extra work
    • what’s worse, it creates unplanned work, which confounds the rest of your efforts
    • it creates extra mental load

    Especially that unplanned aspect makes any unreliability surprisingly much worse – its effects ripple all through the development process, throwing things off track.

    And this is why predictability is so important, to the point that many people prefer a bad, predictable process to a potentially good, but unpredictable one.