A practical way to detect cargo-cult thinking
movingthelimit.com
movingthelimit.com
This article's definition of cargo-cult thinking seems incorrect. The definition I'm familiar with: when you lack a true understanding of some idea and end up just mimicking the superficial qualities. It's a great metaphor that comes up all the time in software engineering.
For example, seeing a successful system that uses microservices and thinking that switching your system to microservices will make it successful. If you don't understand exactly what the tradeoffs are and why those tradeoffs worked well for the successful system, you're not going to get the result you want.
Maybe the author confused "cargo-cult thinking" with just plain "cult-like thinking"?
What the author is talking about here seems to be how to recognize and avoid confirmation bias.
It may be perfectly reasonable to be unable to imagine a belief being falsified. For instance, what would it take to convince you that you remembered your own name wrong and that you've been called something different for your entire life?
Cargo culting is blindly copying something without understanding the mechanistic behavior of the thing being copied. Plenty of cargo culters end up convinced after following the recipe but the planes don’t show up.
Cognitive dissonance on the other hand is about not updating your beliefs when there’s overwhelming verifiable evidence to the contrary.
I think the two can go hand in hand. Hype cycles in tech suffer from both but I think they’re distinctly different things.
Take, for example, a software engineering opinion that I hold dearly: “Good commit titles and descriptions, with sufficient description of why a change was made and notes on any non-obvious implementation decisions, are valuable and necessary.” This arises from my experiences trying to debug code in repos filled with commits titles ‘wip’ and ‘address feedback’ and ‘changes’ which inexplicably touch 5k LoC. I simply despise trying to divine what some past developer intended without any clue as to why; it is an epistemological impossibility even when sometimes the past developer is me. More over I am convinced this is necessary because I also have the experience of doing all the work to understand some spaghetti—using old issue tickets and git blame to slowly build a mental model of the codebase—finding the bug, changing it, and having the whole system violently reject my fix because what appears to the naive observer to be a bug is, in fact, intended behavior the system depends on.
What would convince me otherwise that spending time on writing good commits is not worth the time and effort? Either an impossible-to-execute-without-confounding-variables longitudinal study that measures developer happiness over time in code bases that do/do not emphasize commit message quality. Or I could have different experiences that lead me to not care. Like if I never had to maintain legacy code or if everywhere I ever worked had issue trackers filled with explicit technical details and motivations then maybe I wouldn’t care; but that’s not my experience so I do care.
I don’t know how you hack your way past the reality that there is not one perfect way to write maintainable software and even if there was nobody actually has time for that. So you have to chose what to prioritize and some of those priorities may become your personal cargo cult.
But my experiences are not yours. my projects are likely simpler, and I don't collaborate much. It would be dumb for me to follow your practices, and you mine.
Cargo-cult thinking can also be more successful than analytical thinking over the short term, and over the long term can be subjected to analysis and improved. Cargo is still a religion in contemporary New Guinea and Vanuatu, but now it's an abstract one like the Church of England. If you accept Cargo as symbolic, but still believe in its effectiveness, you might as well be a Methodist.
What's the correct label for when the author graciously accepts criticism of said fact but persists the error?
I don't doubt the fundamental theorem of calculus when things go wonky. In my experience, the breakdown is something like:
80% operator error;
15% moving parts;
4% hardware, especially power supplies;
1% software
As far as the confirmation bias goes, I appreciate Scott Adam's two ideas:
- Beware the headline that's too "on the nose": there may be propaganda afoot
- Beware documentaries on any topic, as the bias is baked in and convincing
Some people explicitly would not agree with that.
Unrelated to that, what would convince you that you don't even exist?
For example, if I apply your example question to my beliefs, I don't necessarily come up with any specific answer, because I'm not super well versed in philosophy. It highlights that my belief that I exist might be on shaky ground, or it just might not be testable at all, but I'm open to being convinced otherwise.
And so that's the more abstract answer, which is : if I saw an argument that seemed rational to me, I might be convinced that I don't actually exist, but I'm sticking with what I believe for now. That's all you need -- WWCYO doesn't mean that there is a valid contrary argument, but that you're open to hearing one and changing your views. If the belief is more about experience, of course, you can get more specific about your null hypothesis.
They are correct! But the reason I talk about cargo-cults is because people know what they are, and for the same reasons as Feynman in this speech: https://calteches.library.caltech.edu/51/2/CargoCult.htm
He brought up cargo cults as a way to illustrate improper scientific thinking — because the core driver of cargo-cult thinking is unfalsifiable beliefs. I appreciate the sharp reading and will be more explicit next time.
It’s not a bad article, you’re just talking about something that isn’t cargo culting