Menu

Project_Summary

Jamie Lynch

Project Summary

Some History

Revisaid, a contraction of Revision Aid, is open-source software that aims to make revision much easier than it currently is. The project is written in wxPython and vanilla Python, and is released under the terms of the GNU public license .

It was originally designed to help its sole user remember amino acid structures via a series of bash scripts, but has since evolved to the point where it can be used to revise pretty much anything. There is, however, an emphasis on remembering visual structures, so your revision may be better suited if you have a lot of images to hand.

Project Status

Active and Alpha, subject to a lot of change. The software is likely to enter beta phase anywhere between March-June, when the architecture becomes a bit more maintainable. Most of the project's stated features are already implemented, they're just a bit buggy.

Versioning

This project uses a "X.Milestone.Minor.Micro" versioning system.

Micro: Very small bug fixes (a few lines of code that would otherwise break the program).
Minor: The addition of one or two new features, or small changes in program architecture. Backwards compatibility with saves from old versions.
Milestone/Major: Drastic changes in architecture, many new functionalities, and no guarantee of backwards compatibility for saves.
X: Whenever the developers feel like the program has undergone another iteration. It's mostly a morale thing.

N.B. Each milestone version will come with a new set of documentation.

Future Features

The following functionalities are either planned for development or currently being implemented.

Short Term (weeks-months)
  • Release on Mac OS
  • Release as binary packages for all operating systems (unsure about licensing, may take a while)
  • "Oracle" program that runs test data and produces debug reports.
  • Create proper GPL prompt first time run
  • Module to create "Release Standard" saves
  • Use of probability in quizzes
  • Actual use of probability
  • Change config.py to a .cfg file
  • Dynamic menubar, allowing modification & binding through config files
Long Term (months-years)
  • Scripting language, to allow the creation of facts, quizzes, and topics with greater ease than a GUI
  • Track statistics over time, showing improvements in certain topics
  • Add 'MCQ' ability to quizzes, various other options rather than typing in what you've already done.
  • Allow custom revision plans to be written by the user, that detail quizzes/topics.
  • Drag & Drop image interface
  • More developers!!!
  • Plugin API
History

Features that have been completed are displayed here.

  • Enable quizzes
  • Enable full quiz functionality
  • Release on Windows XP-7
  • Language pack support
  • Allow program to be successfully started from locations other than its folder
  • Save facts/topics/quizzes to XML
  • Import facts/topics/quizzes to XML
  • Docstrings for all non-trivial functions and classes
  • Allow emailing of bug reports, feedback, and bad translations.
  • Full PEP8 adherence
  • Docstrings for every module, class, and function. Automatically generated documentation (pydoc) which will be hosted separately for each release.
  • Language packs for several different languages.
Hiatus

Features whose development has either been planned or attempted, then back-pedalled due to greater priorities or a poor estimation of the work involved. There is potential for these features to be revived at some point.

  • Create, save & import namespaces
Pipe Dreams

The following are functions that would be nice, but are not currently under active development. In fact, some may be better suited to development as plugins, in order to keep the program nice and lean.

Feel free to mail suggestions to revisaid@gmail.com - if it sounds cool, it's in.

  • GPL license prompt, along with proper installer/packaging
  • Release on Raspberry Pi/Android. (The base engine should run on either of them, but a GUI hasn't been made yet. Watch this space.)
  • Achievement system!
  • AI, which selects topics that need more revision than others according to collected statistics
  • Support for music recognition (playing a snippet of music & then answering questions)
  • Support for video recognition
  • Daemon scheduler; allowing the user to set a time when they want to revise, and the program popping up at that time.
  • Multiple user support. An arbitrary number of people should be able to submit their programs as slaves to a master program, which sets them quizzes.

Related

Wiki: Home

Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.