Have you heard about Harry Potter and Methods of Rationality? (HPMOR for short) It is Fanfic of Harry Potter written by Eliezer Yudkowsky. It is quite fun. I’ve started reading it for funny moments, but I stayed for entirely different reasons
You see Yudkowski is Rationalist and he spent a considerable chunk of his time promoting rationalism. It is easy to see that it was also Eliezer goal with this fan-fic. To put it simply this book is unique cause it will teach you how to think. And it does a fantastic job at it. To a level that I am using some of technics described in this book during my testing.
I am Confused
Not so long ago I had situation test are passing on one environment but not on the other. was the same branch was deployed. I checked it was the same branch.
But the test was failing test that shouldn’t be an environmental issue. They were failing. Then I remembered mantra from HPMOR
„Your strength as a rationalist is your ability to be more confused by fiction than by reality…
Draco was confused.
Therefore, something he believed was fiction.
Granger should not have been able to do all that.
Therefore, she probably hadn’t.
I promise not to help General Granger in any way that the two of you don’t know about.
With sudden horrified realization, Draco swept papers out of the way, hunting through the mess on his desk, until he found it.
And there it was.
Right in the list of people and equipment assigned to each of the three armies.” source: link
Draco, in the end, didn’t figure out. But I’ve used this mantra a few times already when I was stuck to rethink what I know this week I had a perfect example to show this mental tool:
Here is my reasoning.
„I notice I am confused.
Tests fail in one environment, not in the other.
And most of them are not affected by environment. there for one of my belief is wrong.”
„Why I think they should be affected by environment?”
„Cause one of those tests fails on a static value which I changed in the code.”
„Am I sure my change is part of this branch?”
„Yes if it didn’t test would fail on BOTH enc.”
„Then environment can’t be the same”
„What can be different?”
„Since it is static value maybe branches are different.”
„Ok let’s recheck again.”
„Yup branch deployed is different than the branch on the other environment.”
The actual issue was human mistake two similar names until put side by side the looked to us all us the same.
It may be a silly example, but it still cost me few hours before I realised it is not the same branch.
Are you intrested in most post about science and rationalism in testing? I have category dedicated to it here.
You can also check my post on experimaentation here.