Issue #9 - Critical Thinking
Critical thinking skills is essential to your success as a software developer.
Welcome!
Welcome to Developing Skills - Skills for Developers looking to develop their careers.
Tip of The Week: Develop Your Critical Thinking Skills
Developing your critical thinking skills is essential to your success as a software developer.
It is the ability to make clear, reasoned judgements based on interpreting, understanding, applying and synthesising evidence gathered from observation, reading and experimentation.
So how do you go about developing your critical thinking skills?
Here’s 13 things you can do:
Be curious - about the world around you. Ask questions, and explore different perspectives.
Understand biases - be aware of your own biases and prejudices. Recognising them helps you approach problems more objectively and make balanced judgments.
Gather Information - gather relevant information. Evaluate the sources' credibility and validity to understand the accuracy and trustworthiness of the information.
Analyse the information you’ve gathered. Break it down into smaller components, identify patterns, and assess the evidence supporting any claims or arguments.
Evaluate arguments - assess the logical validity and the evidence supporting arguments presented to you. Look for logical fallacies or weak reasoning.
Consider different perspectives - don't limit yourself to a single point of view. Consider different perspectives and opinions on a subject to gain a broad understanding.
Use Socratic questioning techniques - to explore ideas, challenge assumptions, and stimulate critical thinking. Ask "why," "how," and "what if" questions.
Reflect - regularly reflect on your thought processes and decisions. Identify any flaws in your reasoning and think about how you could approach things differently next time.
Learn from others - engage in discussions and debates with others who have diverse viewpoints. Listen actively and be open to learning from their perspectives.
Improve your problem-solving skills - enhancing your problem-solving abilities, as it will also sharpen your critical thinking skills.
Read and engage with challenging material - read books, articles, and essays that challenge your thinking and expose you to new ideas and concepts.
Practice making decisions based on critical thinking - Evaluate the pros and cons, potential consequences, and alternatives before making a choice.
Stay inquisitive and adaptable - critical thinking is an ongoing process. Stay curious, adapt to new information, and be willing to revise your conclusions based on the evidence. As we like to say: “Strong opinions, weakly held”.
Want to Level Up Your Coding Skills?
I believe the best way to do this is to build real-world applications. For that reason I write a weekly newsletter sharing Coding Challenges.
The coding challenges are all designed to walk you through the process of creating an application and to be less than 8 hours work.
Each challenge has you focus on building real-world software rather than toy applications or algorithms and data structures.
You can tackle the challenges in the programming language of your choice. You can even tackle them in several different languages if you prefer.
You can see the challenges and subscribe on the Coding Challenges SubStack.
Critical thinking distinguish good engineers from the average. Common mistakes avg engineers make:
- Taking problem statement & solution proposals as-is.
- Not "challenging" the status quo. (challenge in a good way not complain)
- Not asking enough 'whys'