There’s this feeling you get when working on an interesting bug. You just can’t stop until you’ve figured out what’s wrong. That’s also what solving a good math exercise feels.

It’s not always the case. If you’re working on a bug - or a math exercise - that is way beyond your skills, you’re in for a great deal of frustration. You don’t know what to do and you don’t even know how to find out what to do.

I’m working through a set of exercises in abstract algebra and it has been frustrating. This got me thinking. In the spring, I enjoyed working on topology and I used to like algebra. This course shouldn’t be harder than the ones I’ve seen before. What’s wrong?

Some of the exercises required big leaps of understanding. They were too hard for me. I tried to do them for a while, then went to look at the solutions for hints. There were some steps that I wouldn’t had thought of in any reasonable time!

This broke my trust in my own skills in doing these exercises. Now every time I encounter a hard exercise, I’m wondering whether I can actually solve it or if it again requires some clever trick I wouldn’t think of. Then it’s way too easy to give up and I never get the satisfaction of a solved problem.

To avoid this, exercises should grow in difficulty as you progress, but not too fast. This way they build trust in your skills. Here’s an induction axiom that an ideal exercise set should fulfill:

If you solved exercises 1 to n, you can solve exercise n+1.

Note: The said exercises and the material were meant to be used on a lecture course, but I’m self-studying. Attending the lectures would likely make the exercises work much better. The reason I picked this material is that I’m going to take an exam based on it. Oh well.