Perhaps I have seen it before, but I just came across the “rubber duck debugging” method. It reminded me of a talk I gave at the 2013 BioC conference, in which I introduced the “marmot reproducible researching” method. That is, when you write code chunks in a knitr document, you need to explain to the marmot what you are doing in the code with the corresponding prose/narratives.

I don’t remember whether I borrowed the ideas from the rubber duck debugging method (chances are I did). Anyway, code is often only one part of our work, but we (especially software developers) tend to think code is more essential or important or difficult to write than narratives/documentation. That is not true. Code is more for computers, and documentation is for humans. It is actually often more difficult to deal with humans than computers.
Donate
As a freelancer (currently working as a contractor) and a dad of three kids, I truly appreciate your donation to support my writing and open-source software development! Your contribution helps me cope with financial uncertainty better, so I can spend more time on producing high-quality content and software. You can make a donation through methods below.
When sending money, please be sure to add a note “gift” or “donation” if possible, so it won’t be treated as my taxable income but a genuine gift. Needless to say, donation is completely voluntary and I appreciate any amount you can give.
Please feel free to email me if you prefer a different way to give. Thank you very much!
I’ll give back a significant portion of the donations to the open-source community and charities. For the record, I received about $30,000 in total (before tax) in 2024-25, and gave back about $15,000 (after tax).