I was reading Ben Franklin's biography(the one by Walter Issacson), and it describes his method for learning to write: he would take excellent essays, jot down the basic ideas, then try to reconstruct them some time later and compare his version to the actual essay. It occurred to me that this could fairly easily be applied to programming. Has this kind of technique ever been studied?

(Side question: does anyone know of a library of excellent programs to learn from?)


I have thought it strange that we teach students to write programs before we teach them to read them.

A short time ago I read about some research about this. It stated that the problem is finding good programming works that is of a standard similar to the standard of great literary works. They may exist, but no one has compiled a collection.

They would have to be at least:

  • Free Software / Open Source.
  • Well written.
  • “Reading age” appropriate. (That is programming reading age)

I will try to remember where I read it, and report back.

Could be one of these: - Mind-storms — Seymour Papert (page < 116 (I am up to page 116) ) - Hacking The Curriculum — Ian Living Stone & Shahneila Saeed (page <= 72) - Hello Word magazine issue 3 - Somewhere else.

Sorry I can't find it. It is most likely in the 1st, then the 2nd etc. If I find it then I will update.


There is quite a lot of research on retrieval-based learning and its efficacy. For a very powerful illustration in a single study, there is a beautiful blog post by Jeffrey Karpicke, which has two groups of students studying a text, one by creating concept maps, and the other by reading and then attempting to re-write from memory.

When tested a week later, students were given two types of questions: simple recall and questions that required creating new connections between the ideas presented and outside ideas. In both cases, the retrieval-based group of students far outperformed the concept-map group.

Results of Karpicke & Blunt 2011

Karpike also pulled together a document summarizing research about retrieval-based learning across the field. On page 2 of the document, he gives a graph of the number of studies about retrieval learning over time.

enter image description here

What is important about this graph for our purposes is that it shows that this is a relatively new area of study. As far as I can tell, there are not yet, as of this time, studies about retrieval learning specifically within the realm of CS. However, there are few reasons to doubt that the strong results found in other fields would ultimately apply here as well, as the kind of mental modelling needed to attempt this sort of retrieval combines both big-picture and detailed understandings.


Your Answer

By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

Not the answer you're looking for? Browse other questions tagged or ask your own question.