A couple of days ago, I started solving problems posted on Rosalind Project - a project that teaches bioinformatics by asking you to solve a series of coding challenges. It was a simple problem. It boiled down to modifying the Fibonacci algorithm to allow to set how many pairs of rabbits are there in a litter.
It was a simple problem but I was stuck on it. I tried to recall the algorithm from memory and modify it this way. It did not work and I was making myself wrong. "Over 10 years of software engineering experience and you can't solve this? Idiot". I was frustrated.
Eventually, I've found a solution. I've had to become a beginner. I've had to forget what I know and start from basics. Read the problem, sketch some simple cases, and write the code. Don't be fancy.
This experience reminded me that learning is sometimes not only about acquiring new skills but letting go what I already know so I can discover something new.