"Take nobody's word for it". That’s the motto of the Royal Society. That’s UK's national academy of sciences.
Only recently did I really understand the importance of this.
Stage 1 - Silver bullets
When I was younger I was constantly looking for silver bullets.
What is THE best language/framework/paradigm/process.
eg. Haskell/The Elm Architecture/Functional Programming/TDD/Code Reviews
Soon I realised that solutions in real life aren’t lego blocks. They won’t always match the problem.
Since then I try to distance myself from ideas. I look for the boundaries of the solution. Where a solution starts working and where it stops. Applying solutions is a continuum.
Example:
Zero automated tests -> Afraid to change anything
Automated tests everywhere -> Rigid change
Thinking on the correct testing approach per case → The Right Amount
It took me more time to realise I was still caught in a similar trap. I was relying too much on authority.
Stage 2 - Reassured By Authority
I am always on the lookout for stuff to learn. What are the best books on topic X? Who are the experts? What are they doing? I then go and study their work.
Nothing wrong with that. Learning from authority is a great start. After all, you can’t think everything for yourself. But take this too far and you end up you a sloppy thinker.
Recently this clicked for me. Wherever an idea comes from, it should be verified by myself.
Stage 3 - Verify By Myself
For ideas I care about, I have to put in the work. Only then can I understand the context where they are true. And that’s the way to approach real knowledge.
Now that’s something worth aiming for.
“Nullius in verba”