Anyway, I got very excited about a very similar set of ideas. I'm not much for programming (yet) though. But go for it!
Here is an idea for dealing with prerequisite knowledge:
Let's say I want to learn about quicksort. For quicksort, let's say I need to know about arrays and recursion. For recursion, I need to know about functions.
If I search for quicksort, the program should analyze my user profile to see which prerequisites I need. Then it should generate a page with all the prerequisites and quicksort.
Now let's say I'm reading about recursion. At the end of the page it should ask me a few questions about recursion, for which I will type in the answers. Getting the questions correct should be a very good indication that I understand the section. If I get them wrong, the program should try to give me a hint. If this has not been implemented for a particular section, I should just get a generic extended explanation. Either way, I should have another question to answer.
Thinking about this is making me become mildly excited about my idea again. Maybe I will beef up my programming skillz and attempt an implementation.
Anyway, I emailed the author of <a href="http://eloquentjavascript.net/">Eloquent Javascript</a>, and here's what he had to say about computer-assisted learning:
>There is a lot of great
stuff that can be done with 'hyper-text', but it is tricky. My initial
plans for Eloquent JavaScript were way more extravagant, but going
away from the old style of text turns out to be rather hard -- that
form has been evolving for three thousand years, and is much enriched
by the fact that we are all used to it and know its conventions. When
a text is no longer continuous, you can not refer back, which somehow
makes it a lot less personal -- I liked that fact that, in writing
chapter 4, I could keep talking about stuff mentioned in chapter 2. A
radically 'active' text is bound to be either a disconnedted cloud of
snippets, or some carefully crafted non-linear experience that would
take years to get right.
>With a bit of thought it may be possible to make a framework into which volunteers add a lot of the content, though editors/quality control would likely be necessary.
I like the idea of students up or downvoting stuff based on how clear it is. Even a diagram or a one-sentence description could have up and down votes associated with it.
Anyway, I got very excited about a very similar set of ideas. I'm not much for programming (yet) though. But go for it!
Here is an idea for dealing with prerequisite knowledge:
Let's say I want to learn about quicksort. For quicksort, let's say I need to know about arrays and recursion. For recursion, I need to know about functions.
If I search for quicksort, the program should analyze my user profile to see which prerequisites I need. Then it should generate a page with all the prerequisites and quicksort.
Now let's say I'm reading about recursion. At the end of the page it should ask me a few questions about recursion, for which I will type in the answers. Getting the questions correct should be a very good indication that I understand the section. If I get them wrong, the program should try to give me a hint. If this has not been implemented for a particular section, I should just get a generic extended explanation. Either way, I should have another question to answer.
Thinking about this is making me become mildly excited about my idea again. Maybe I will beef up my programming skillz and attempt an implementation.
Anyway, I emailed the author of <a href="http://eloquentjavascript.net/">Eloquent Javascript</a>, and here's what he had to say about computer-assisted learning:
>There is a lot of great stuff that can be done with 'hyper-text', but it is tricky. My initial plans for Eloquent JavaScript were way more extravagant, but going away from the old style of text turns out to be rather hard -- that form has been evolving for three thousand years, and is much enriched by the fact that we are all used to it and know its conventions. When a text is no longer continuous, you can not refer back, which somehow makes it a lot less personal -- I liked that fact that, in writing chapter 4, I could keep talking about stuff mentioned in chapter 2. A radically 'active' text is bound to be either a disconnedted cloud of snippets, or some carefully crafted non-linear experience that would take years to get right.