I'm really struggling with understanding certain coding concepts and patterns. No matter how I study them, I end up either memorizing without truly grasping the concept, relying on overly simplified metaphors, or getting stuck at specific steps when trying to break things down. What's the best method to study and really comprehend these challenging topics?
4 Answers
Think about how much time you actually spend building projects. Not everyone is suited for self-study, and that’s okay! Be honest with yourself about your strengths and what you might need to progress. If you're struggling too much on your own, consider seeking out a structured learning environment, like a course or a mentor.
One important thing to remember is that learning takes time. Often, your brain needs to go through the struggle to really form an understanding. It's not just about finding a good metaphor or simplifying it too much. Also, different learning strategies work for different concepts, so you might need to try a variety of approaches based on what you're working on. Don't rush the process; allow yourself to sit with the material until it clicks.
Difficult concepts are often meant to solve complex problems. If you're not running into those problems, trying to learn those concepts may confuse you more than help. Instead of memorizing, focus on building projects where you'll naturally encounter problems that require those solutions. Be patient; the right concepts will come to you as you expand your knowledge through building.
Complex coding concepts usually arise in response to complex problems. If you haven't faced those problems yet, the solutions might not make much sense. The best way to learn is by building real projects and encountering those challenges firsthand. This way, when you learn a complex solution, it will directly relate to the issues you've tackled, making it much easier to grasp.

Thanks for the advice! I've been trying to learn for about three months now, and I've finished the basics of Python and Java. I read that getting into Pygame is the next step, but every time I sit down to code, I feel overwhelmed. I end up just memorizing steps instead of understanding them. It’s like trying to climb a wall! What do you suggest for tackling this feeling?