Anything That Continues Is Working

Arguing that DRM doesn’t work is, it turns out, missing the point. DRM is working really well in the video and book space.

https://web.archive.org/web/20140906214521/https://plus.google.com/+IanHickson/posts/iPmatxBYuj2

Things that continue are working. They might not be working for their intended purposes, or the purposes you suppose they’re for. But make no mistake, they’re working in some way. And further they’re working in a sustaining way.

Avoid focusing on how you (incorrectly) think things are not working. Focus instead on how they evidently are working. What is the driving force behind their continued success?

This reminds me a bit of the rule: assume they’re doing it on purpose. Maybe it’s a corollary rule. When something bad or seemingly inadvertent happens, maybe back up a step and assume that was the intended outcome all along. After all it’s the means we all end up having to live with, not the intent. Whatever the intent behind something is irrelevant, it’s only the means that we all have to live with afterward.

Email Strategy: Delete

I’ve been using an email strategy for quite some time now. I make folders for every topic, many with sub topics, and put all the email I receive into them. All the mail I send is also in those same categorized folders. MS Outlook has a handy option that lets you keep reply emails in the custom folder it was in from.

The downside of this process is that I’d spend a lot of time filing emails. And since I never really deleted anything meaningful, I ended up with a full mailbox after just a year or two. Long story short, I was driving myself a little crazy.

Now I’m beginning a new policy. I’m deleting all my email. Of course I have to action some of it, transfer it to my to do list, or input it into a project management solution, or a notes or documentation story, etc. But once that’s done I delete the email. This is inbox zero taken to the next level!

We’ll see how it goes.

Starting at Goodwill

Once Humana’s vaccine mandate was announced, I had to immediately start searching for a new job. And here I am! Today is day two of my onboarding at Goodwill Industries of Kentucky. Everybody is so warm and friendly. It’s less like working at a corporate, and more like being at a very big church!

Complexity

I think my friends who were raised by television in to nineteen eighties may be more likely to listen to a video than they are to me actually talking to them.

https://www.youtube.com/watch?v=VhD6JQ3whxc

On Saturdays some childhood friends of mine meet to play games online. We aren’t in person. That’s partly due to the lockdown, and partly due to the fact that many of us are now or will soon be living far away. So a lot falls on a single person to coordinate, learn the rules of a game, teach the rules of the game to those of us who don’t know them, referee the game while we play, and follow up later on any rules we might have had a question or confusion about. It’s a lot of work as expressed in the quote and video above.

The chief source of this misery is complexity.

The game of chess is a familiar analogue to the games we play. It is the oldest and most consistently played board game in the history of humanity. You can find endless resources online that teach chess. The rules can be printed on a single piece of paper. I found a really nice .pdf document that had excellent headings, diagrams of the rules, and some useful strategies and tactics. It came to five pages.

Back when we were younger my favorite game like chess was De Bellis Antiquitatis. Many elements appear in both games. There are opposing players, a board area, armies on either side made up of smaller elements, which take turns attacking each other, and leaving the game area when they are defeated, etc. The rules we used back then have been revised, but I still have an old .pdf which weighs in at twenty three pages.

Decades later and one of the many games we play online on Saturdays is called Warmaster. All the same ideas and elements appear. We’re nothing if not fascinating with little historical or fantasy battles between Greek psiloi and Elf archers. The original publisher has longed since stopped supporting the game. Now a thriving online community exists where you can find the rules, army lists, and lots of support. The rules come to one hundred and fourteen pages.

If we were all able to play together, in person, we’d likely play a more modern, published, supported, mainstream game. Something like Warhammer 40K would be my preference. This game has been continuously revised for decades and the rules have been honed to near perfection. At least they’re perfect now, until the next revision comes out in a few years. The latest rule book I have is from the previous revision, and it comes in at two hundred and eighty pages. With a modern published game like this though, the basic rules are just the start. Each army has its own separate rule book you must also buy. These army books add about one hundred pages or so, per player. That’s five hundred pages.

The progression looks something like this… 5… 23… 114… 500.

You don’t need to know anything at all about table top wargaming to see why organizing people to play these games would be increasingly frustrating and time consuming.

Incremental Systems and Habits

I highly recommend Scott Adams’ book How to Fail at Almost Everything and Still Win Big. Here I’ll quote his blog, talking about a chapter in the book.

For example, losing ten pounds is a goal (that most people can’t maintain), whereas learning to eat right is a system that substitutes knowledge for willpower.

https://www.scottadamssays.com/2013/11/18/goals-vs-systems/

I’ve taken this idea to heart. I have never been very good at setting goals. I actually enjoy creating systems. With respect to computer science, it’s my job. I think it’s just how my brain is wired. Systems and processes and their inputs, outputs, and constraints, just make a lot of sense to me.

One thing I’d like to add to Scott’s excellent coverage of the topic is to think incrementally. A system doesn’t have to be grandiose to begin with. Start small and then iterate after a few successful months. For example you could start off by just…

  • Get out of bed in the morning.

For many people getting up and out of bed in the morning is no small feat. Maybe you are tired, or hung over, or dread your day, etc. So a system where you just get up every morning is a great place to start. Then…

  • Set an alarm and get up when it goes off.

An alarm doesn’t have to go off at five am. If you struggle to make it to lunch, then set your alarm at eleven am. Getting up when your alarm goes off is a system, getting up at a certain time is a goal.

  • Do some exercises every morning.

This advice is starting to get a little specific. I’m not advocating the exact system here, just the iterative way it’s built up. My personal system includes some light exercise each morning. I do about twenty minutes of hindu squats, hindu push ups, toe touches, and back bridge. Nothing outrageous and nothing that requires any equipment other than a floor.

  • Write something every morning.

I started off writing in a journal every morning after exercising. I did this for about six months before realizing it wasn’t exactly working out for me. It was fine but nothing really life changing. So I started blogging every morning instead of writing in a journal. The point is less what or how you’re writing exactly. The idea is to write, to get ideas out of your brain and into the world, to edit your thoughts a bit.

  • Get up an hour earlier.

If you made it this far your mornings might be a bit jumbled and setting your alarm clock back an hour might help. I get up at six in the morning. That’s an hour before I really have to. Loosing an hour of sleep earns other benefits. It’s quiet early in the morning. I enjoy the sounds of trains and birds and other things I’d normally miss.

I hope this paints a picture of how an incremental strategy to your life systems can help you reach a goal easier than just having a goal by itself does. This idea works just as well in a business or technical context. Begin small, increment, replace less helpful systems with more beneficial ones. You don’t have to get it all at first, or all right at first.

Document Reality

Resistance pushes back against documenting through our fear of showing off our dismal status quo.

Document fearlessly. If there is a secret on ramp other than the “required” in box, then document it. If there’s three ways of challenging the “final” status, document those. If there is no process to track the work, and customers have to email periodically to check if their request is still actually getting any attention, then document that.

The only way you can change a bad process is to first document the bad process. Only then will you see the weakest links where improvement can be made.

You probably have ten ways to improve your process. If the process isn’t yet documented, then there’s probably ten more you’ll realize through the process of documenting. And only then will you have enough information to decide which of these now twenty weak points to improve first.

Maybe you are ashamed of your bad process. It’s fine to feel nervous about airing your process’ dirty laundry. We live in a fallen world and should be skeptical of everything humanity has wrought. Not wanting to look bad is completely normal and reasonable. Avoiding looking bad is not our highest priority though. Hope for a better future should certainly supersede our fear of looking bad. Wanting to improve the lives of our coworkers and customers should supersede our fear of looking bad. Just selfishly wanting back the sanity we are wasting by wringing our hands about a bad process should supersede our fear of looking bad.

If you are afraid others will see your backwards process and mock you, here is a great judo move. Just ask to see their better process’ documentation. They will become very quiet very quickly. If their process is so great, then it must be documented, or else how did it become so good. There’s no way for us to benefit from their wisdom in a timely fashion without something to read. Maybe they are smarter than us, but if there’s no way for us to benefit from their superior wisdom, then it’s of no use to us.

Begin by documenting what you’re doing now, today, as it is, warts and all.

The List

The list is a “simple machine” that people use in all sorts of ways. When you start thinking of three or more items, I encourage you to start writing down a list. This way you’re less likely to forget any of them. You’re giving yourself the chance to time shift, by separating the mental effort of making the list with the doing part. Time shifting is a super power that only Humans have evolved. You might as well make use of it!

A lot of opportunities open up, once you have a list. You can think about your list in order of priority. You could line them up by their dependency on each other. You can shorten the list to just the fewest you need. A list can become a to do list if you mark off items as you accomplish them. You can treat a list like a queue if you add new items to the bottom of the list and work them starting from the top. A successful list can be re-used as a recipe for repeating the same work.

In a programming context having a list can simplify a lot of algorithms. It can also speed things up in long running data interactions. Rather than complete an entire task at once for all the items, you can instead begin by just making a list of the items that need to be processed. Now you can batch them into smaller chunks. You can process the batches, perhaps even one at a time, with less processing power than it’d take to do the entire bulk of them at once. You can monitor the progress by counting the number of completed items. You can spread out the processing over time, so resource allocation doesn’t spike quite so high. You can interleave batches of one job with batches of another job, so neither job finishes as fast as it would on its own, but both finish in a more predictable and smooth amount of time. You can pause and pick back up if you need to stop processing.

The benefits of getting the work into a list before you begin are worth considering.

Simple Machines

Back in middle school I remember being intrigued by the science lessons about “simple machines”.

A simple machine is a mechanical device that changes the direction or magnitude of a force. In general, they can be defined as the simplest mechanisms that use mechanical advantage (also called leverage) to multiply force. Usually the term refers to the six classical simple machines that were defined by Renaissance scientists:

https://en.wikipedia.org/wiki/Simple_machine

Much later I read an article by Joel Spolskey who argued for an analogue in the world of software. He made the point that the pillars of the software world, things like Excel and PowerPoint and Word, were software reproductions of analogue paper methods. Excel is a paper ledger, PowerPoint is a deck of film slides, and Word is typed paper.

I see this dynamic in programming too. Writing code follows a similar pattern to writing prose. The initial process of spilling your guts is similarly fast and prone to poor quality. Then debugging and refactoring are like bringing in an editor or proofreader. Formal testing and user acceptance testing feel like letting someone read a final draft of your work.

It’s been famously said that we stand on the shoulders of giants. Those shoulders aren’t only a previous generation of mentors. We also utilize human adaptions and affordances that are built in to our physiology. And proven techniques for analog mental work translate into digital work as well.

Design a site like this with WordPress.com
Get started