On Wednesday’s I cover a random topic related to development and today I’m going to discuss **how to study** and comprehend complex topics.

When I was younger I used to struggle learning a new or difficult subject, and through the years and about a decade of university and grad school have helped me put together a strategy for how to study and understand complex topics. Typically I apply this learning system to subjects such as algorithms and software engineering, however it can be applied to any topic.

While there are a near infinite set of study straggles out there, I like this approach because it utilizes a divide and conquer strategy, focusing on breaking a complex topic into easy to understand components, and putting the pieces back together at the end to see how they all work together.

## System for How to Study

Let’s take a case study example: Understanding how logarithms work. Logarithms are used throughout the fields of mathematics and computer science, however unless you use them regularly it’s easy to get rusty on them.

1. The first task that I will do is take a piece of paper and write Logarithm in the center and circle it.

2. Next I’ll go to a comprehensive post on the topic, such as one on Wikipedia. In reading the first sentence I come across a few terms that are a bit fuzzy:

Inverse operation

Exponentiation

I will stop reading the logarithm article and go and read those two articles until I feel comfortable with what they represent. After I feel good about those two items I write them as their own circles that connect to the Logarithm circle. I will also add any examples that will help me understand what the terms mean if necessary.

3. Next I’ll go back to the original Logarithm post and keep going through the article repeating this process until the entire page is filled with a mind map that explains each component that makes up logarithms and how they work together. This may include base case examples, such as:

64 = 2^6 is the same as log 2 (64) = 6

If this seems like a dead simple approach to study… it is. The goal of studying is to learn a topic, and one of the easiest ways to understand a complex subject is to break it into easy to comprehend components.

For example, if you’re trying to understand an advanced algorithm in computer science from scratch you may feel a little intimidated. However if you break the algorithm down into small enough components you’ll see that it’s essentially a process of steps made up of connecting simple modules such as loops, manipulating variables, and using conditionals.

A problem is only hard when you try to think of it as a whole, however any concept can be understood if you simplify it down to easy to comprehend pieces. Obviously the more complex the topic, the longer it will take to deconstruct, however I am a firm believer that anyone can understand any topic assuming they dedicate themselves and put the work in.

I hope that you can leverage this mind mapping process to understand complex topics and that it will help you learn **how to study properly** and truly learn.

Wow! Awesome advice, Jordan. When I studied ochem in college I knew that I needed to break down concepts into chunks. I just didn’t know how. But this builds a solid framework on attacking it in that way. This will really help me understand more advanced topics in programming. Great post. Thank you!

Ryan,

Thanks so much for the kind words, the system has worked well for me for quite a while and I’m glad you found it helpful!

THANK YOUUUUU! Midterm on Wed. 😱

I’m glad that you found it helpful! Good luck on the midterm.

Hi All im noob here. Good post! Thx! Thx!