Projects/Wikislice
See also the Wikislice and DITA pages, and the WikiBrowse project
Project Page: OLPC/DITA/Wikipedia/Wikislice project
Team mission
To deliver a proof of concept that demonstrates how to create custom curriculum materials from Wikipedia for OLPC. Our objectives include:
- use DITA to pull content from Wikipedia in the DITA format
- deliver Wikipedia resources in an interchange-friendly and semantically-rich set of DITA-specialized topics that can be used as classroom materials
- integrate DITA topics using a DITA map derived from a wiki slice
Join us!
We're looking for volunteers! Specifically, we're recruiting XO teachers to help us identify design requirements and provide feedback on our approach and prototypes. Because this project is designed primarily for the XO teacher, we have a major dependency on XO teacher insights to ensure the success of this effort. In addition, we're looking for members of the OLPC development community to collaborate with us. So... interested in a humanitarian project that also includes cutting-edge technology and complex content management? Join us! Please comment to this page and provide your email address if interested -- Alyson Riley, our team's project manager, will contact you to discuss your interests and opportunities, as well as your participation level and available time commitment.
Team members
Members of our team include:
- Alyson Riley
- Andy Stanford-Clark
- Anne Gentle
- James Thomas
- Laura Cowen
- Lynda Chiotti
- Michael Boses
- Michael Priestley
- Salim Ismail
- SJ (Samuel) Klein
- Scott Abel
Team meetings
Team meeting details are as follows:
- Regular meeting day: 2nd and 4th Thursday of the month
- Regular meeting time: Thursdays, 08:00PDT/10:00CDT/11:00EDT/16:00BST
- Conference call number: 877.421.0003 (US), 770.615.1374 (UK)
- Conference call passcode: 499831 (followed by the # sign)
See below for meeting minutes; the most recent team meeting appears first.
Team meeting, 18 Sept 2008
Invitees: Alyson, Anne, Andy, James, Laura, Lynda, Michael P, Michael B, SJ, Salim, Scott
Agenda:
- After August hiatus, time to regroup:
- Update on Extreme Blue project
- find coders/sponsors for web implementation
- create prototype per Michael's outline
- engage with related teams - per SJ
- get end user participation/involvement
- Team membership updates
Discussion:
- Report from Extreme Blue: The students' last day is this week. They're working on a video or e-meeting demonstration of the project results. Laura is working with legal on the intentions to open source the project.
Currently it pulls down content from Mediawiki (the engine that Wikipedia runs on) and maps all the content to DITA reference topics. It tracks the version of each sentence so that it can trace back to changes. Doesn't yet get updates from Wikipedia after the content is pulled down. Basically the content is stored in a "library" which contains multiple nested DITA maps. Next meeting we will get to see a demo of the project. There is an opportunity to create a web service (single button press on a web page) to start all the slicing. Michael and Anne took action items to find an interested developer who would like to create this web service.
- Report on related teams: The WikiBrowse project takes Wikipedia pages with a high number of interest in the pages and creates an offline version of Wikipedia that can be carried around on the XO. This project fits nicely with our aims and offers an offline scenario.
The BookSprint project was a documentation project co-managed by OLPC, SugarLabs([1]), and FLOSS Manuals ([2]). While there is not a DITA tie in (FLOSS Manuals uses TWiki and XHTML but it is structured), the content from the BookSprint is available in the new Help (activity).
- Report on end-user participation/involvement: Anne still has contacts who are willing to help with a teacher survey or testing. After the demo, we can demo the results to groups like the teacher end-users.
- Since the wiki page was getting a little large, I moved all other meeting notes to a /TeamMeetingNotes page.
Team deliverables
Please use this place to store team work items and outputs.
Audience/Actor descriptions
See also descriptions and discussions in Apr 16 meeting minutes.
- content consumer; teachers, students
- content creator; teachers, students, parents, subject experts, enthusiasts, global educators
- content maintainer
- content packager; Someone familiar with existing tools
Assumptions
Placeholder -- place for us to store our assumptions.
Use cases
This section contains work-in-progress use case information.
Use case input
Use case 1: End to end, creation to updates, main success scenario
- a person who is a wiki editor creates the wikislice,
- teacher downloads it as ditamap plus dita documents (1 document per page/wiki article, multiple topics per document) and customizes it (potentially targeting individual topics, other topics from other wiki/source) and sends feedback to wiki editor
- student reads it and comments and does an assignment
- teacher grades the assignment and sends more feedback/changes to wiki editor
- wiki editor makes changes
- teacher is notified and makes the decision to update three of the content resources but leave the others, and repackages for student
Tools needed:
Tool to select or extract of articles from Wikipedia into DITA. Note: on the Wikislices page, there is a need for curation that involves finding/listing selections: they say "something like an apt-get service for collections that have been named [and made] (optional: bundle-on-demand, if the bundling takes time; or if a named bundle invokes "get latest version" rather than "get specific revision")."
Tool to organize Wikipedia articles (DITA map editor) on the XO laptop
Tool to edit Wikipedia articles from a wikislice selection for inclusion in Wikipedia on the XO laptop
Use case 2: Reading a wikislice on the XO
- Wikislice available on the Internet or school server,
- Student or teacher selects relevant wikislice by using the Browse Activity
Use case 3: Creating a wikislice, deploying to XO for offline or online reading
Use case 4: Refreshing a wikislice, deploying to XO
Use case 5: Updates, deploying to XO and sending updates to Wikipedia
Outline for web-centric use case
If we do the Wikipedia->DITA transform as a webservice which can be accessed directly from a web browser which contains a DITA editor, we might end up with a simplified workflow that goes something like:
- pick a wiki slice page, and copy its url
- paste the url into the DITA builder window
- a process on the server converts the wikislice into a DITA map, including pulling in headings from within each page (so the minitoc for each page is accessible from within the dita map)
- the teacher edits the map, including editing the minitoc branches, until they have an outline they're satisfied with.
- they click "store local" and it gives them a place to store the map (they could also choose to store on a public site like Curriki for sharing)
- they can click "merge" to combine two maps, potentially from different sources
- they can click "build package" to create a PDF or HTML
If it's all logic running on the server, then the only thing they store locally is the edited DITA map, and the output. The DITA content is an intermediate step only.
The map could still store time stamps for each page, so the next time a teacher goes to the site they could click "check for refresh" and it would tell them whether there's new content in the pages they're using - then click "refresh package" and it would rebuild if they wanted to.
Next step up would be to allow editing of the individual topics as well. But even the level of editing the TOC (down to the heading level within each page), plus generating some content-type-specific summaries etc., should create some interesting cases, and with absolutely minimal overhead on the teacher's machine.
It would also be easier to demo and share, since anyone with a net connection could use it.
Useful Links and Related Ideas
- Wikislice project page on Wikipedia: [Wikipedia WikiProject_Wikislice http://en.wikipedia.org/wiki/Wikipedia:WikiProject_Wikislice]
- 2007 Schools Wikipedia: [Schools-Wikipedia.org http://schools-wikipedia.org/wp/index/subject.htm]
- Semantic MediaWiki extension to MediaWiki: [Semantic MediaWiki http://semantic-mediawiki.org/wiki/Help:Introduction_to_Semantic_MediaWiki]
Adam Hyde, founder of FLOSS Manuals just sent this page link to me:
[Wikimedia Labs Wiki to Print http://en.labs.wikimedia.org/wiki/Wiki_to_print]
We might want to investigate for the Wikislicing project, and see if we can get DITA on the list with DocBook.
Contacting XO Teachers
Note from Anne: Many apologies for the copy/paste from email threads, but I needed to get this shared in a way that conveys the threaded nature of the connections made here...
From Yama Ploskonka <yama@netoso.com>, http://wiki.laptop.org/go/Profiles/yamaplos
The big *maybe* is that no one, in any official, Boston-based OLPC deployment, local or foreign, has reported anything at all that I have heard about XO use connected to the curriculum. (Note from Anne: I need to be careful of the term curriculum vs. content. There are widely different meanings for each.)
The closest thing is a cooperative History-related text written by Uruguayan kids (in pen?), and then copied into an XO. http://www.ceibal.edu.uy/portal/wiki/index.php/Artigas
By the way, it is indicated there that their primary source was a 1964 book, from which they quoted.
- Yes*, in non-sanctioned experimental events, with usually an outsider volunteer bringing a few XOs for a few days, XOs have been used in conjunction with formal curricula. One recent example:
http://www.olpcnews.com/countries/greece/using_xos_in_greece.html For obvious reasons, these being ephemeral, it is hard to get feedback that could be re-fed.
- No*, in the sense that *in my opinion*, while Wikislicing is something that is going around the community, so far I believe OLPC-Boston is not interested in connecting XO use with school curriculum. They are about exploring, creating, etc.
Complicated? yes. Hopeless? no. It is possible the lack of reports has more to do with teachers simply using the things, and not reporting.
I will put the question for the Sur list. (Yama's Spanish OLPC list, http://lists.laptop.org/listinfo/olpc-sur)
Adam and Bjorn are connected with the Ethiopia deployment Bjorn Everts <Bjorn.Everts at eduvision.ch>, Adam Abate <aabate at apposit.com>,
Bryan with Nepal http://wiki.laptop.org/go/Profiles/berrybw, Bryan Berry <bryan.berry at gmail.com>
Edward just cares about things Education in general, and often is aware of things I have not seen, and able to help you in this better.
>> Guys, route (Anne's request) as you see fit, this is something that I believe makes a lot >> of sense in your deployments and might be of immediate use to y'all while it >> might be a steep curve for Uruguay and Peru to get to use it (they still >> have to solve the server issue).
From Edward Cherlin Wikibooks has a book on education written by students.
I have thought about using Wikipedia in subject matter and language classes, where an entire class would be assigned to research and write a page on a new topic or to translate and adapt an existing page. Then the class could collaborate on a version combining the best contributions from each student, and post the result. It would be necessary to have a progression, starting with simpler tasks such as checking references, fixing spelling and grammar, researching disputed points, adding references where they are lacking, and so on, before creating whole pages. And before that, some sandbox exercises on Wiki formatting.
The resulting curriculum and detailed information, including student feedback on what works and what doesn't, could then be edited and published as a Constructionist demonstration and guide.
There is a project coming together but not announced that could use a Wikislice on environment and ecology in Spanish, with detail for the area in question. I will be talking to GIS specalists about bringing together maps and related data. We would like to get the students in the region to gather data, take pictures, and so on, and add their observations to the data set. We will have professional guidance and assistance on all aspects of the program, including curriculum development. We would like to publish the specific results for this region, and the plan for doing it in any region.
I would like to do a similar project in the Arahuay region, bringing in specialists to work with the community on a plan for sustainable development. I am assured that much is already known that would help the local farmers and others, and that solving some of the remaining problems there will benefit many other regions, possibly the whole world.
Useful Background Information
Paraphrased from an email from SJ Klein, November 20, 2007:
"We need to implement concrete use cases, using DITA with an editor and publishing pipeline. Say, use the DITA open toolkit, a specific editor, and one of the wikiproject:wikislice slices, and trying to keep up with changes to the slices.
My default for the 'final format' of the edited work would be an html collection, one html file per article, that preserves internal links to other articles in the slice, and leaves out broken links (or converts them into external links to wikipedia).
Identify added value that can come from having this structure to the data, other than identifying red/blue links.
Then it would help to contrast using DITA as an interchange with some of the simplest options: - using no metadata at all and having a named URL that always contains the latest version of a wikislice - using a static set of metadata that get updated when things change, along with a version number that is incremented."
Michael and SJ discussed a few core use cases: maintaining and updating a stream that many people may be contributing to; and maintaining the latest version of a package that many people may be committing to, and which has some sort of 'latest' version.
Some distinctions to be made follow. It would be interesting to see specific implementations of the following notions in DITA format. 0) distinguish map updates from content updates
1) distinguish streams from patch updates to a static object that 'improves' over time
2) provide for pre- and post-filters; a pre-filter might be by keyword; a post-filter might be a transparent redirect for links that don't exist locally; keys that are resolved locally or externally.
3) other dimensions for feeds/streams:
- read-only v. read-write interaction with both streams and packages. Think of the latter as "two-way streams" and "distributed patch updates for packages" - linear v. distributed orderings (a single time-ordering, or a distributed patch-ordering) - whether there are constraints that need to be applied when things are edited for read-write collections. michael : "export v feed"? perhaps the wrong term.