Seems to me that a good system to teach everything needs to have three main functions. The existing solutions I know about only have one or two.
First, a software platform that allows you to do all the things you might want to do: show text, show pictures, show videos, download files, interactive visualizations, tests (of various kinds: multiple choice, enter a number, arrange things into pairs or groups...).
Here, the design problem is that the more universal the platform is, the more complicated it is to let a non-tech user use its capabilities. For an experienced programmer you just need to say “upload the HTML code and other related files here”, and the programmer will then be able to write text, show pictures, show videos, and include some JavaScript code for animation and testing. (Basically: SCORM, mostly known as Moodle.)
The obvious problem is that most teachers are not coders. So they would benefit from having some wizard that allows them to choose from some predefined templates, and then e.g. if they choose a template “read some text”, they would be given an option to write the text directly in a web editor, or upload an existing Word document. But ideally, you would need to provide some real-world support (which is expensive and does not scale), for example I imagine that many good teachers would have a problem with recording a video, editing it, and uploading the file.
Second, it is not enough to create a platform, because then you have a chicken-and-egg problem: the students won’t come because there is nothing to learn, and the teachers won’t come because there are no students. So in addition to building the platform, you would also need to provide a nontrivial amount of some initial content. There is a risk that if the initial content sucks, people will conclude that your platform sucks. On the other hand, if your initial content is good, people will first come to learn, then some teachers will recommend the content to their students, and only then some teachers will be like “oh, I can also make my own tests? and my own lessons?”
Third, when people start creating things, on one hand this is what you want, on the other hand, most people are stupid and they produce shit. So the average quality will dramatically drop. But if you set some minimum quality threshold, it may discourage users. Some people produce shit first, and gradually they get better. So what you need instead is some recommendation system, where the platform can handle a lot of shit without that shit being visible and making the average experience worse.
For example, anyone can create their own lesson, but by default the only way to access the lesson is via its URL. So the authors can send links to their lessons by e-mail or by social networks. At some moment, the lessons may get verified, which means that someone independent will confirm that the lesson is more good than bad. (It does not violate the terms of service, and it says true things.) Then verified lessons could then be found by entering the keywords on the platform’s main page. Also, users could create their own lists of lessons (their own, or other people’s lessons) and share those lists via their URL. For example, a math teacher would not need to create their own lessons for everything, but could instead look at the existing materials, choose the best ones, and send a list of those to their students. Finally, the best lessons would be picked by staff and recommended as the platform’s official curriculum—that is what everyone would see by default on the main page.
Seems to me that a good system to teach everything needs to have three main functions. The existing solutions I know about only have one or two.
First, a software platform that allows you to do all the things you might want to do: show text, show pictures, show videos, download files, interactive visualizations, tests (of various kinds: multiple choice, enter a number, arrange things into pairs or groups...).
Here, the design problem is that the more universal the platform is, the more complicated it is to let a non-tech user use its capabilities. For an experienced programmer you just need to say “upload the HTML code and other related files here”, and the programmer will then be able to write text, show pictures, show videos, and include some JavaScript code for animation and testing. (Basically: SCORM, mostly known as Moodle.)
The obvious problem is that most teachers are not coders. So they would benefit from having some wizard that allows them to choose from some predefined templates, and then e.g. if they choose a template “read some text”, they would be given an option to write the text directly in a web editor, or upload an existing Word document. But ideally, you would need to provide some real-world support (which is expensive and does not scale), for example I imagine that many good teachers would have a problem with recording a video, editing it, and uploading the file.
Second, it is not enough to create a platform, because then you have a chicken-and-egg problem: the students won’t come because there is nothing to learn, and the teachers won’t come because there are no students. So in addition to building the platform, you would also need to provide a nontrivial amount of some initial content. There is a risk that if the initial content sucks, people will conclude that your platform sucks. On the other hand, if your initial content is good, people will first come to learn, then some teachers will recommend the content to their students, and only then some teachers will be like “oh, I can also make my own tests? and my own lessons?”
Third, when people start creating things, on one hand this is what you want, on the other hand, most people are stupid and they produce shit. So the average quality will dramatically drop. But if you set some minimum quality threshold, it may discourage users. Some people produce shit first, and gradually they get better. So what you need instead is some recommendation system, where the platform can handle a lot of shit without that shit being visible and making the average experience worse.
For example, anyone can create their own lesson, but by default the only way to access the lesson is via its URL. So the authors can send links to their lessons by e-mail or by social networks. At some moment, the lessons may get verified, which means that someone independent will confirm that the lesson is more good than bad. (It does not violate the terms of service, and it says true things.) Then verified lessons could then be found by entering the keywords on the platform’s main page. Also, users could create their own lists of lessons (their own, or other people’s lessons) and share those lists via their URL. For example, a math teacher would not need to create their own lessons for everything, but could instead look at the existing materials, choose the best ones, and send a list of those to their students. Finally, the best lessons would be picked by staff and recommended as the platform’s official curriculum—that is what everyone would see by default on the main page.