"Get AI to force you to think, ask lots of questions, and test you."
It was based on this advice from Oxford University.[1]
I've been wondering how the same ideas could be tailored to programming specifically, which is more "active" than the conceptual learning these prompts focus on.
Some of the suggested prompts:
> Act as a Socratic tutor and help me understand X. Ask me questions to guide my understanding.
> Give me a multi-level explanation of X. First at the level of a child, then a high school student, and then an academic explanation.
> Can you explain X using everyday analogies and provide some real life examples?
> Create a set of practice questions about X, ranging from basic to advanced.
Ask AI to summarize a text in bullet points, but only after you've summarized it yourself. Otherwise you fail to develop that skill (or you start to lose it).
---
Notice that most of these increase the amount of work the student has to do! And they increase the energy level from passive (reading) to active (coming up with answers to questions).
I've been wondering how the same principles could be integrated into an AI-assisted programming workflow. i.e. advice similar to the above, but specifically tailored for programming, which isn't just about conceptual understanding but also an "activity".
Maybe before having AI generate the code for you, the AI could ask you for what you think it should be, and give you feedback on that?
That sounds good, but I think in practice the current setup (magical code autocomplete, and now complete auto-programmers) is way too convenient/frictionless, so I'm not sure how a "human-in-the-loop" approach could compete for the average person, who isn't unusually serious about developing or maintaining their own cognitive abilities.
Any ideas?
---
[0] Oxford Researchers Discovered How to Use AI To Learn Like A Genius
https://www.youtube.com/watch?v=TPLPpz6dD3A
[1] Use of generative AI tools to support learning - Oxford University
https://www.ox.ac.uk/students/academic/guidance/skills/ai-st...