← Back to the notebookKindred Hands
A working note

One change, one question

Testing and defect reporting were part of my Kindred Hands work. That connects this method to something practical: a result needs to help the next development decision, rather than simply make the screen look more encouraging. My engineering approach includes checking ordinary operation, edge cases and failure conditions, and learning from unsuccessful attempts as well as successful ones.

I also had mentor and Research support while bringing the alternative setup together. A suggestion can give me a possible explanation, but the observation still has to come from the work. That’s why I want a change to answer a question. The example below is imagined, rather than a particular defect. It lets me explain the reasoning clearly: what would support a possible cause, what would weaken it and how to avoid leaving several unrelated changes mixed together.

I want the next change to answer a question. Before touching anything, I should be able to say what I expect to be different afterwards and why that difference would tell me something. That does not make the process slow for the sake of being careful. It gives the result a meaning beyond whether the screen looks more encouraging.

I followed one issue through the setup. In this case, information is visible in one place but seems absent from another. There are several possible reasons. The receiving part might not have the information. The current account might not be allowed to see it. The view might not have refreshed. Those explanations can produce a similar first impression while needing different investigations.

If I change access, change the connection and refresh everything together, I might make the information appear. I would still not know which assumption was wrong. Worse, I might leave an unnecessary access change behind because it happened to be part of the successful-looking attempt. The result would solve the immediate appearance of the problem without giving me a clear explanation of the setup.

A smaller check would try to distinguish the possibilities. Is there a way to find out whether the information reached the receiving part before changing how it is shown? Can I check the intended account behaviour before granting extra access? The exact check depends on the real tools. The reasoning is that an observation should help me choose where to look next.

I also want to keep the expected result separate from the one I hope for. I may hope the next change makes the task work. What I expect should be more precise: if this explanation is correct, this particular behaviour should change. If it does not, I have learned something about the explanation. That’s less satisfying than an instant fix, but it is not the same as having gained nothing.

There’s another reason to keep track of what I change. An unsuccessful attempt can still alter the setup. If I forget it, the next attempt begins from a different situation without me noticing. I don’t want to compare two results while silently changing the conditions between them. The notes can be short, as long as they tell me what state I was actually looking at.

This makes Suggestions easier to use sensibly. I can ask what a setting controls and what observation would support changing it. Then I have a reason to accept or reject the suggestion. An answer that sounds confident is not a substitute for that reason. It’s especially important when the explanation may assume a different version from the one I’m using.

My mentor can help with the parts of this reasoning I have not understood yet. I can show the expectation, the change and the result instead of simply listing several unsuccessful attempts. That makes it easier to discover a mistaken assumption. It also means I can explain what I learned when I return to the setup myself.

I don’t want this habit to turn into a demand that every tiny action needs a long report. Some checks are simple, and some results are obvious. The useful level of detail is the one that lets me reopen the problem without losing the reason behind the previous step. A few clear lines can do that better than pages of unlabelled output.

A useful check can even leave the visible behaviour unchanged. In this case, a possible explanation predicts that a certain observation should be present, and the check shows it is absent. The screen may look exactly as frustrating as before, but the investigation has moved. I can stop treating that explanation as established and consider what else could fit. That’s different from trying the same action again because I still want the original guess to be right.

I also want to be able to return to a known situation when comparing attempts. The actual way to do that depends on the setup, and I’m not describing a backup or restoration I performed. The general point is that the starting condition matters. If I don’t know where I began, a difference afterwards becomes harder to interpret. Keeping the comparison fair is part of understanding the result, not a separate piece of paperwork added after the interesting work.

What appeals to me is the way a confusing task becomes a sequence I can understand. I may not know the cause at the start. I can still choose a check that reduces what I don’t know. The important change is not always the one that makes something work immediately. Sometimes it is the one that lets me stop guessing and explain why I’m looking in a particular place.

Leaving this here for next time.All the notes ↗