“Everyone in this country should learn to program a computer because it teaches you to think.” — Steve Jobs
I didn't really understand what Steve Jobs actually meant by his above statement until I started to learn computer programming myself.
Also, what Steve failed to mention was how blinking hard it is to "think" like a developer (in my experience anyway) in the first place!
Why "thinking" like a developer is challenging.
In my opinion, thinking like a computer programmer can be challenging because it requires a different way of approaching problem-solving. Unlike many traditional forms of problem-solving, programming involves breaking down a problem into smaller, more manageable parts and then using code to find a solution. In principle, this sounds reasonable BUT it requires a great deal of logical thinking and attention to detail, which can be difficult for those who are new to the field.
🚨News flash! I found this super challenging! Still do!
Additionally, programming languages can be incredibly specific and syntax-driven (structure of statements, words), meaning that a small error in your syntax (Grrr!) can lead to a complete failure of the program. This can be especially frustrating for beginners who are just starting to understand the basics of coding!
🚨Another News Flash! Even experienced coders suffer from bugs and errors regularly!
Mindset change and patience.
Furthermore, computer programming requires a level of abstraction (in other words, dealing with ideas), where the programmer must think about the logic and functionality of a program, without getting bogged down in the specifics of how it will be implemented. Again, this can be a major challenge for those who are used to more concrete forms of problem-solving. I found this the hardest part of all and still do - it'll take me years more experience to get more fluid with this, but that's fine.
Lastly, programming often requires a high level of patience and persistence (focus, damn it 😅!). Debugging and testing code can be a time-consuming and repetitive process, which again requires you to "think" like a developer.
To round my thoughts up, while "thinking" like a computer programmer can be challenging for beginners and those more experienced, it is a critical skill that develops with time and practice. There is no other way around it. With patience and persistence, eventually you'll start to "think" like a programmer, after all, if I can start doing it, you can.
Are you "thinking" like a developer? How long did it take you to develop this skill?
Thank you for reading. Please feel free to connect with me on LinkedIn, would love to chat.
Good luck.