different levels of reasoning in programming (almost certainly present in other domains too) THREAD
-
Show this thread
-
1. pre-reasoning, flailing, magical thinking, cargo-cult programming no mental model of how things work or what steps are relevant. no ability to detect correct outcomes.
1 reply 0 retweets 11 likesShow this thread -
2. process oriented reasoning "If I can complete each step in the how-to guide I have successfully completed the task." mental model is of conformity to established procedures. limited ability to detect correct outcomes besides confirming that procedure completed without error.
1 reply 0 retweets 11 likesShow this thread -
3. outcome oriented reasoning "does it work? ok good, we're done then." mental model is functional but not systematic. can detect correct outcomes within narrow constraints of correct. cannot improvise or generalize to better states of correctness.
1 reply 0 retweets 12 likesShow this thread -
4. systematic reasoning "what are we trying to accomplish here? does our system do that efficiently?" can reason about interactions between procedural steps. can abstract outcomes and reason about system-states instead of specific functional states. limited ability to improvise
1 reply 0 retweets 13 likesShow this thread -
5. meta-systemic "fluid" reasoning "what kinds of systems are best suited to this problem class?" can reason counter-factually (what do we NOT do effectively) about systems. sees outcomes as emergent of system interaction. improvisation as default stance.
2 replies 1 retweet 12 likesShow this thread -
6. No-system reasoning "do we even need to do this? what is the real problem?" able to reason about entire domain while also reasoning about specific problem instance. can detect misidentified problems, solving for the wrong thing. able to transcend limits of systematicity.
3 replies 0 retweets 15 likesShow this thread
interesting that each level increases your effectiveness by about an order of magnitude and increases your likelihood of getting sucked into management by about an order of magnitude
-
-
Replying to @chaosprime
classic engineering dilemma. do you make the biggest impact as a very good engineer, or as a manager of less good engineers?
0 replies 0 retweets 2 likesThanks. Twitter will use this to make your timeline better. UndoUndo
-
Loading seems to be taking a while.
Twitter may be over capacity or experiencing a momentary hiccup. Try again or visit Twitter Status for more information.