[Inspired by Dennett’s Intuition Pumps]
My current approach and where I’d like to be works 1:1 or in a small group, much more difficult to do in a lecture-style setting.
When I’m trying to teach a new concept – programming, algorithm, mathematics – I try to give students a bit of structure and context and get them to develop the solution. The amount of structure and context varies from student to student, and its not easy getting it right. Done well, students reach that aha! moment on their own. I’ve been doing this unconsciously for quite a while, but its probably time to do this with more structure (hah!).
One more aspect I would like to add is having students reflect on failed approaches. This may also require reducing the context and allowing them to try out a variety of approaches. A lot of learning can happen in this analysis. The downside is that it needs time and it needs willingness to expend the effort.