This the fourth installation of my series with tips that I feed myself everyday, through my screensavers. In this post I’m going waay back in time and we get to meet an unsung hero in the IT world, to tap into his wisdom.
Here are all the posts in my series:
- Kindness is better
- Complex == Bad. Simple == Good
- What would Jesus do?
- (DO(SOMETHING(SMALL(USEFUL(NOW()))))) - This post
- Turn up the good
Meet Mr Bob Bemer
Unless you are very old or nerdy, or like me - nerdy AND old - you probably haven’t heard about Bob Bemer. I got to hear about him from the saying that this post is about, but he was quite an remarkable man.
He did a lot of innovation in the early years of computer science and two of the coolest things (my opinion) was to develop, COBOL with Grace Hopper, and also he invented ASCII (ah well it was a committee but he was the brains, as I understand it). Then in his retirement he developed some commonly used practices to handle the Y2K problem. Quite amazing.
I ran into the phrase that mr Bemer used as his motto by accident and instantly fell in love with it. I’ve even written about it before, after speaking with Woody Zuill.
Here it is:
Wonderfully geeky and still holds some pretty interesting ideas.
This looks like a LISP dialect to me. Oh how confused I was by LISP in University. But let’s unpack it.
You can think about each word as a function, and the thing within the parenthesis as the argument to that function. Like this
That means that we see a long list of function calls here, and hence the order is important. I think he meant it like this:
DO something. It doesn’t really have to be the most important or grandest of things, but by just doing we will learn and that will inform us further. In the words of Woody Zuill:
It is in doing the work that we discover the work we need to do
This section, argument, function-call goes together with the first one. We need to do something. It still doesn’t say anything about value, importance or size.
I kind of see a very experimental, scientific mindset shining through here.
I find it utterly fascinating that SMALL comes before USEFUL. But it aligns nicely with not only mr Bemer’s earlier advice but also agile thinking in general.
DO-ing SOMETHING just like that might actually be devastating… if you are doing big things. Doing the “wrong” thing for months upon end is much much worse than doing the “wrong” thing for a day, or a couple of hours.
Just about all places I’ve coached agile at would have solved most of their problems by doing them in smaller chunks. Bob Bemer realized this back in the 50-ies…
Now, that we are doing somethings that are small - let’s see if we they are useful. The other things are more important, as the function-call-chain is written.
But what does useful mean? I remember early in my agile life that I was obsessed with the definition of done, and horrified that we didn’t have the same view of what that meant. But I rarely took the thought to completion.
Useful means that it is both something that is needed and that can be used (if you stretch the idea a bit). So it’s solving a need for a real user. It’s not ready to be deployed, it’s not tested, it’s not
it works on my machine (<= all examples I’ve used as definition of done).
The only reasonable definition of done (for software) is:
Used by users in production
But that says nothing about the value it creates - hence
useful is important.
I like Mike Burrows definition:
Someone’s need was met
that encapsulates both
Mr Bemer ask us to not sit around waiting for the optimal time, when all the stars are aligned and all the planning is done. No - DO it NOW, is his challenge to us.
This is not saying to rush it but ties back to the first thought of DO. Keep doing things and you will figure much of it out while you are doing it. By doing things NOW this thinking will be even more prominent.
All of this reasoning comes from me. The motto comes from Bob Bemer. Maybe he meant something else altogether, but I’ve found it both inspiring and thought-provoking.
Here’s the picture that I’m using for this screensaver.