Michael Feldstein has a post on the new Repository API in Moodle, and explains that it enables easy import and export of content to/from course sites. But, he suggests, this may well be a solution to a more fundamental design failing; as he puts it:
A fundamental flaw in LMS design is that the course, rather than the student, owns course documents. While it’s great that Moodle makes it easy to export course contributions to places where students can hold onto them after the course gets archived, this mechanism relies on students making specific efforts to save their work. I would prefer to see a system in which the canonical copies of student-created course documents (or faculty-created course documents, for that matter) live in the users’ private file storage space and the course instance is granted permission to access them.
I think is exactly right, but I see two issues. First, who owns group created/edited documents? I doubt this is an unresolvable issue, but it does add a layer of complexity to the discussion.
Second, I’d want to consider a broader notion of sharing. Consider an example:
I teach a large-enrollment introductory course that is part of the University’s “Top 25″ initiative, which seeks to reorient these sorts of more typically lecture courses around principles of inquiry-based learning. We have a team of people who teach this course who worked at figuring out new course modules that we could share among instructors. But the sharing happens (or not, as it were) through a wiki, and the kind of content we have up is not available in a fully ready-made form such that each of us can simply take it and go in our individual courses. Sharing just takes too much work as it is.
I’d like my LMS to make it really easy to share teaching resources among faculty; ideally not only within just a particular LMS instance at a single university, but across universities. Why can’t I, for example, create a course module and make it public? Why shouldn’t I be able to easily borrow work from colleagues at other institutions? And by easily, I don’t mean having to force them to export some damned package, email it to me, and then make me import it. I mean single-click sharing. What if, for example, I could search for particular concepts in my area of geography, and get a list of modules from both my colleagues here, but also other colleagues elsewhere, and simply click to use it in and/or adapt it to my course?
So that’s a use case: I really want to contribute to and borrow from my colleagues’ work in ways that go far beyond what’s now possible. What does it take to make that possible? Am not exactly sure, but think it’s likely to require rich metadata and structured content authoring. Sakai 3 will, for example, have a template system that allows for wizard-like creation of new content. I could imagine using those templates to layer RDFa metadata into the content itself, and then somehow collecting that metadata and exposing it through some sort of API (SPARQL?).