Software ideas: Difference between revisions

From OLPC
Jump to navigation Jump to search
m (→‎Porting Existing Software: - corrected heading level.)
(Added section - Software for scheduling activities.)
Line 174: Line 174:
== Updates ==
== Updates ==
* An update/software manager to handle updates and new software that come out after the laptop is given to the child
* An update/software manager to handle updates and new software that come out after the laptop is given to the child

==Software for scheduling activities==
Teachers sometimes find it hard to supervise mixed-ability groups, since each child learns at a different rate. There is a commercial program called [http://www.supermemo.com/ Supermemo] (an abbreviation of Super-Memorization), which demonstrates a technique that might be used to schedule the learning-activities for each child. It has an enthusiastic user community.

Here is the [http://www.supermemo.com/english/princip.htm theory behind it].

Supermemo is basically a drill-and-test program, using question-answer pairs for learning foreign-language vocabulary (such as English/French – Q: House/A: Maison), grammar points or any other body of knowledge, such as historical facts, mathematical terminology, whole topic-paragraphs, key-facts, etc. The material can include text, hyperlinks, multi-media diagrams/photos/videos/etc.

Its main feature is that it uses feedback from the learner to schedule the learning. Users are shown a question, think what the answer is, reveal the answer, then mark themselves on how well they knew the answer (from 1 = I knew it without hesitation, 2 = I new it with some hesitation, down to 5 = I’ve never seen it before). It keeps your level of information-retention in a feedback-loop to optimize the re-test interval (1 day/week/month/3 months/etc), achieve the maximum amount of learning/revision in the minimum time and keep your knowledge fresh. Children almost always succeed in learning the material.

The optimum use of time is when people are only re-tested on a question-answer pair just before it was about to fade from their memory. Too-frequent revision wastes time and waiting too long means forgetting an item completely and learning it again as if they had never seen it before.

Children can use off-the-shelf sets of questions and answers, sets produced by the teacher, enter their own questions one at a time, [http://www.supermemo.com/help/file.htm import/export a set to/from a text-file] and share sets via the internet . Children start with a small set of questions. As facts become well-learned and scheduled less often, more questions can be added to the set to keep the learning/practice time at 20 minutes per day or whatever. The system avoids last-minute test-revision. Teachers and children can use reports to monitor progress.

Drill-and-test may sound like the exact opposite of constructionism, but the same mechanism could be used to schedule repetitions of each child’s constructionist-activities until they are well-understood and then keep them fresh in their minds.

There are MS Windows, Palm Pilot and operating-system-independent [http://www.supermemo.net.pl/english.net Online] versions of Supermemo.

It isn’t available for Linux at present, due to some porting problems. This is the [http://wiki.supermemo.org/index.php?title=SuperMemo_for_Linux status of previous attempts to produce a Linux version], and a list of similar programs.

If anyone can solve the problems of porting it to Linux/Sugar or find/write a program with a similar feedback technique, it could be quite useful, for both scheduling activities and learning vocabulary or key-facts.

If software isn’t available, the method could be used with pencil-and-paper/text-file records of activities.

If you want to try it, some [http://www.supermemo.com/english/which.htm older versions of Supermemo] are free, such as the MS Windows 98 version.

--[[User:Ricardo|Ricardo]] 04:08, 9 August 2007 (EDT)



== See also: ==
== See also: ==

Revision as of 08:08, 9 August 2007

Projects and proposals    +/-
Content ideas Content projects
Hardware ideas Hardware projects
Software ideas Software projects

This page is a brainstorming space for ideas which may eventually become Software projects. Keep in mind that the projects here are merely proposals or ideas. If you would like to add a new project idea, try to be reasonably thorough in your description.

When brainstorming, try to let your mind run free. When reading and looking for a project to start, keep in mind that we are looking for projects that encourage Playful Learning instead of Edutainment.


This section discusses whole application-classes that might be useful to have available on the OLPC laptops. That is, these are "requirements"-focussed ideas for what type of thing we want to provide. For many of the application classes there are existing PyGTK-based applications available that could be ported to Sugar (Sugarised).

Also, think about frameworks rather than just individual applications. Don't build MySpace. Instead, build a toolkit that could be used to build MySpace-like applications.

If you want to work on one of these ideas, add a section to the Software projects page describing your project (or just add your name below with contact information so that other interested people can contact you to organise into a project, or create a link to a Wiki page with more description about what you figure needs to be done):

Mathematics

  • Simple Calculations
  • Data Analysis and Visualization (as opposed to statistics)
  • Fractran interpretor in C from ADA graph language
  • Basic Calculators (e.g. GCalculator)
  • Spreadsheet software
    • Financial tools
    • Budgeting
    • Loan calculators
    • Accounting software
  • Higher mathematics
  • Financial Literacy
    • Cash vs. Credit
    • Banking
    • Interest and Borrowing
    • Basic Accounting
    • International Monies

Language

Science

    • Starfield explorers
    • Chemical simulators
    • Physics simulators (Newtonian)
    • Biological simulators (population simulators)
    • Genealogy software (e.g. Gramps)
    • Dynamic system simulators (e.g. ecological simulators, economic simulators)
    • Geography (mapping) software, coordinates, maps, data-overlays, GIS operations
    • Data collection tools
    • Unit conversion tools (e.g. GConvert)
    • Time-lapse photography tool

Physical Education and Training

Art and Expression

    • Vector graphic creation (illustration)
    • Raster graphic creation (painting, sketching)
    • Collage operations (eToys?)
    • Programmatic creation (Logo or the like)
    • Video creation
      • Animation
      • Stop-motion
    • Art History Studies
    • Performance broadcast (school plays and the like)

Music

    • Voice/Ear training (e.g. Solfege)
    • Score display and creation (TamTam?)
    • Instrument tuning (e.g. guitar)
    • Viral OLPC Startup Sounds - edit short jingles and share them them with network neighbours. They could also "mutate" with each copy

Communications

    • VoIP phone
    • Conferencing system, virtual classroom, shared presentations
    • Email client (gmail-for-children?)
    • Voice-mail (voice email and standard voicemail)
    • Web-page editor (wikidpad?)
    • Televised video (streaming video viewer)

Educational

    • Role-playing systems
    • Mind-mapping systems (outliners, free-form note-taking tools, e.g. Labyrinth, Gjots, )
    • A learning management system and collaborative work environment, for school servers. Moodle or similar.
    • A groupware for project development and management, for school servers. Egrouware or similar
    • A repository system for multimedia content in school servers
    • A wiki engine for school servers
    • Drill and test software (Yes, even on a constructivist machine - follow the link for discussion)
    • Software for supporting teachers' use of rubrics

Games (see also Games)

  • Game framework: Multi-player, multi-team game architecture, so kids can make up their own games.
  • Game console emulators (needs content)
  • Strategy Games
    • Turn-based
      • Go, Reversi
      • Chess (e.g. PyChess)
      • Checkers/Chinese Checkers
      • Oware
    • Real-time Strategy
    • Simulation Games
      • SimCities
      • Pioneer / Oregon Trail
      • SimBusiness - (Lemonade Tycoon, Theme Park Tycoon, etc.)
  • eToys Games
  • Puzzle Games
    • Crosswords
    • Jigsaw Puzzles
    • Word Searches
    • Word Jumbles
    • Hangman
    • Sodoku (e.g. Python Sodoku)
  • Card Games
  • Tournament framework: Allow kids to easily set up and manage a tournament

Play (like games, without winners and losers)

  • Peek-a-boom
  • ESP
  • There is a literature of this kind of social team-building play. For instance, adapt ideas from No Contest by Alfie Kohn.

Technology

    • Microcontroller programmers/compilers (e.g. for irrigation systems, art installations and general automation)
    • CAD/CAM applications (e.g. PythonCAD)
    • BuddyBrowser - a safe, fun hybrid web browser/search engine/protal made especially for kids 4-10 allowing kids to surf all of their favorite kid-appropriate sites, without accidentally running in to inapporporiate material. Download at www.buddybrowser.com
    • Source-code editor with transparent native-language display.

PIM

    • Clock
    • Contacts
    • Scheduling
    • To-do lists
    • Personal Wiki (eg TiddlyWiki)
    • juwo (please see http://juwo.com. I shall need help porting it to Linux)

Teaching Software

eXe - an XHTML-Editor for creating E-Learnings. (You do not need any programming knowledge, an pretty easy tool: http://exelearning.org/)

Scratch - I think the OLPC team should consider the idea of including a version of Scratch in the OLPC machines. Created by the MIT, it's free, and it's an excellent and graphical way to create animations and games, to learn logic and how to program machines (specially for kids !), with no need of complicated instruction code : you make all by mouse clicks, and with a pretty interface. Try it, and you'll like it !

Indeed. The Scratch folks are porting it to OLPC. I've just now created a stub Scratch page. Good thought. :) MitchellNCharity 17:02, 4 August 2007 (EDT)

System Software

Cultural

    • Recipe-managing (allowing kids and parents to create and share recipes with friends and world. eg Gourmet Recipe Manager)

Social and collaborative

  • multi-person simulations of markets, agriculture, government.
  • Yahoo Answers
  • IM, chat, Skype
  • Multi-person simulations of physics, biology, population,
  • Wiki-like group drawing tools
  • wiki-like group music tools.

Porting Existing Software

This section explores existing applications that could be ported to the laptop in order to provide the functionality for the children. The List of PyGTK Applications is a good place to start. If you are porting an application, you'll want to contact the author and add an entry to the Software projects page describing the porting effort (and providing contact information for it).

Mathematics

  • Calc for more basic tasks, BC for more difficult ones, and SC or a GUI based spreadsheet, perhaps.
  • LaTeX, this is free and powerful typesetting system creating beautiful documents
  • Mathematica for children, for modeling and calculating

Updates

  • An update/software manager to handle updates and new software that come out after the laptop is given to the child

Software for scheduling activities

Teachers sometimes find it hard to supervise mixed-ability groups, since each child learns at a different rate. There is a commercial program called Supermemo (an abbreviation of Super-Memorization), which demonstrates a technique that might be used to schedule the learning-activities for each child. It has an enthusiastic user community.

Here is the theory behind it.

Supermemo is basically a drill-and-test program, using question-answer pairs for learning foreign-language vocabulary (such as English/French – Q: House/A: Maison), grammar points or any other body of knowledge, such as historical facts, mathematical terminology, whole topic-paragraphs, key-facts, etc. The material can include text, hyperlinks, multi-media diagrams/photos/videos/etc.

Its main feature is that it uses feedback from the learner to schedule the learning. Users are shown a question, think what the answer is, reveal the answer, then mark themselves on how well they knew the answer (from 1 = I knew it without hesitation, 2 = I new it with some hesitation, down to 5 = I’ve never seen it before). It keeps your level of information-retention in a feedback-loop to optimize the re-test interval (1 day/week/month/3 months/etc), achieve the maximum amount of learning/revision in the minimum time and keep your knowledge fresh. Children almost always succeed in learning the material.

The optimum use of time is when people are only re-tested on a question-answer pair just before it was about to fade from their memory. Too-frequent revision wastes time and waiting too long means forgetting an item completely and learning it again as if they had never seen it before.

Children can use off-the-shelf sets of questions and answers, sets produced by the teacher, enter their own questions one at a time, import/export a set to/from a text-file and share sets via the internet . Children start with a small set of questions. As facts become well-learned and scheduled less often, more questions can be added to the set to keep the learning/practice time at 20 minutes per day or whatever. The system avoids last-minute test-revision. Teachers and children can use reports to monitor progress.

Drill-and-test may sound like the exact opposite of constructionism, but the same mechanism could be used to schedule repetitions of each child’s constructionist-activities until they are well-understood and then keep them fresh in their minds.

There are MS Windows, Palm Pilot and operating-system-independent Online versions of Supermemo.

It isn’t available for Linux at present, due to some porting problems. This is the status of previous attempts to produce a Linux version, and a list of similar programs.

If anyone can solve the problems of porting it to Linux/Sugar or find/write a program with a similar feedback technique, it could be quite useful, for both scheduling activities and learning vocabulary or key-facts.

If software isn’t available, the method could be used with pencil-and-paper/text-file records of activities.

If you want to try it, some older versions of Supermemo are free, such as the MS Windows 98 version.

--Ricardo 04:08, 9 August 2007 (EDT)


See also:

The "software ideas" category below contains many pages not yet indexed here.