The posts about a roadmap got me thinking about the plan for the complete project to develop a free, open source Braille transcription package. This is the first time I have put it all down on "paper". Below is the plan for those who would like to read it as part of the message. It is also attached for those who would like to work with it as a file. It needs refinement and expansion. Of particuular interest for those who are interested mainly in liblouis is the subgoal of arranging the items on the liblouis TODO list in order of descending priority. The plan covers liblouis, liblouisutdml and BrailleBlaster, since they are all part of the main project. ------------------- GOALS AND SUBGOALS The main goal is to produce a braille and tactile graphics software package that is free, cross-platform and at least as good as the best commercial software. It will have special features for handling science, technology, engineering and mathematics (STEM)., and will also handle literary Braille without extra baggage. There are three subgoals, liblouis, liblouisutdml and BrailleBlaster. Each of these has its own sub-subgoals, which are arranged in order of priority. Current milestones are set for each, and when one of these is met a new release is distributed. 1. liblouis This is the base of the project. Its goal is to translate as many languages in as many braille codes as possible. It has special features for math and computer Braille. It also has facilities to build wrappers for translators that support other languages but do not conform to the liblouis API. Back-translation is supported whenever possible. 2. liblouisutdml This uses liblouis for all translating. it does interpretation of xml, html and text files; formatting and also provides the xml markup for the Universal Tactile Document Markup Language (UTEML). Combined with liblouis it will be a complete Braille and tactile graphics engine which can be run either from the command line or from a graphical interface. It has various conversion modules for dividing a book into volumes and formatting them according to various standards, producing pef, producing brf and replacing the text in xml documents with its Braille translation. The ability to run in non-UTDML mode will be retained. 3. BrailleBlaster This is based on liblouisutdml and liblouis. Its overall purpose is to make the power of these libraries available in a graphical user interface. it will be friendly to people with normal vision, partial vision and total blindness. It will have special features for transcribers. Drivers for many embossers and the ability to produce files for braille displays will be included. it is written in Java using the SWT (standard Windows Toolkit) package, which is also used in Eclipse, so that it will be cross-platform. PRIORITIZATION Each of the subgoals has various sub-subgoals, which are arranged in order of priority. Fixing bugs in important features always has highest priority. However, if a lower-priority task becomes doable before a higher-priority task it will be done. 0. Entire project Get UTDML in liblouisutdml functioning properly. This is needed for BrailleBlaster. 1. liblouis Arrange the items in the liblouis TODO list in order of descending priority. 2. liblouisutdml Fix bugs in the current UTD functions. Implement enhancements required by Norwegian Bible project. Update documentation. Integrate the new features from Bert Frees into utd. 3. BrailleBlaster Synchronize Braille and print when using utd. Develop algorithms for transmitting changes made by the user to the xml file. MILESTONES 1. liblouis Implementation of highest-pririty items. 2. liblouisutdml Current utd functions meet specificationns. 2. BrailleBlaster Perfection of a Windows Installer. -- John J. Boyer; President, Chief Software Developer Abilitiessoft, Inc. http://www.abilitiessoft.com Madison, Wisconsin USA Developing software for people with disabilities
GOALS AND SUBGOALS The main goal is to produce a braille and tactile graphics software package that is free, cross-platform and at least as good as the best commercial software. It will have special features for handling science, technology, engineering and mathematics (STEM)., and will also handle literary Braille without extra baggage. There are three subgoals, liblouis, liblouisutdml and BrailleBlaster. Each of these has its own sub-subgoals, which are arranged in order of priority. Current milestones are set for each, and when one of these is met a new release is distributed. 1. liblouis This is the base of the project. Its goal is to translate as many languages in as many braille codes as possible. It has special features for math and computer Braille. It also has facilities to build wrappers for translators that support other languages but do not conform to the liblouis API. Back-translation is supported whenever possible. 2. liblouisutdml This uses liblouis for all translating. it does interpretation of xml, html and text files; formatting and also provides the xml markup for the Universal Tactile Document Markup Language (UTEML). Combined with liblouis it will be a complete Braille and tactile graphics engine which can be run either from the command line or from a graphical interface. It has various conversion modules for dividing a book into volumes and formatting them according to various standards, producing pef, producing brf and replacing the text in xml documents with its Braille translation. The ability to run in non-UTDML mode will be retained. 3. BrailleBlaster This is based on liblouisutdml and liblouis. Its overall purpose is to make the power of these libraries available in a graphical user interface. it will be friendly to people with normal vision, partial vision and total blindness. It will have special features for transcribers. Drivers for many embossers and the ability to produce files for braille displays will be included. it is written in Java using the SWT (standard Windows Toolkit) package, which is also used in Eclipse, so that it will be cross-platform. PRIORITIZATION Each of the subgoals has various sub-subgoals, which are arranged in order of priority. Fixing bugs in important features always has highest priority. However, if a lower-priority task becomes doable before a higher-priority task it will be done. 0. Entire project Get UTDML in liblouisutdml functioning properly. This is needed for BrailleBlaster. 1. liblouis Arrange the items in the liblouis TODO list in order of descending priority. 2. liblouisutdml Fix bugs in the current UTD functions. Implement enhancements required by Norwegian Bible project. Update documentation. Integrate the new features from Bert Frees into utd. 3. BrailleBlaster Synchronize Braille and print when using utd. Develop algorithms for transmitting changes made by the user to the xml file. MILESTONES 1. liblouis Implementation of highest-pririty items. 2. liblouisutdml Current utd functions meet specificationns. 2. BrailleBlaster Perfection of a Windows Installer.