On Stack Exchange sites, I used to see questions and think “Oh! I know the answer. It’ll only take a few minutes to answer”. Invariably, I discovered that I didn’t have all the knowledge to provide a complete answer. While typing, I’d realise that there were gaps in my knowledge (e.g., is what I’m writing true for BSDs as well as Linux OSs?) or there’d be edge cases that I hadn’t previously considered (differences between program versions, how software behaves in different locales, etc.). A good, comprehensive answer ended up taking around half an hour but I found the effort was worth it: writing Stack Overflow answers was a great way to learn.
Speaking of “forcing functions”, I’m currently learning guitar and my goal for this year is to learn a song in full and record myself to objectively see how well I’m actually playing.