When logical deduction becomes illogical
Imagine having Sherlock Holmes' deductive powers to simplify our everyday lives. Yet, over-reliance on deduction can prevent you from learning new things. If you've tried tonnes of courses on programming, but yet are not able to grasp it, here's the simple reason why.
When learning to code, the first thing you get introduced to is the syntax. A newcomer sees the world of software engineering through the lens of language constructs. For him, programming language is the cause and software engineering is the effect. But that's not really true.
Software engineering actually "came first" which then necessitated more effective languages to save time. Languages are actually an effect. Thus, to go from languages to software engineering, you need induction, not deduction.
The question shouldn't be "how does a for
loop lead to better software?" The question must be "what situations in software engineering lead the creation of constructs like for
loops, while
loops, module imports, etc?"