(Webmaster's Note: The Online Manual is now called the Programmer's Technical Archive, and is online at http://www.basis.com/support/pta.html.)
During the summer months of 1993, a lively discussion took place in the BASIS Forum on CompuServe about how difficult it is or programmers and MIS directors to keep up with all the advances in Business Basic programming concepts and techniques. Many long-time programmers expressed interest in learning more about the BASIS Extended Utility Set Toolkit, string templates, the TAOS programming language, and in just sharing unusual programming tricks and techniques. As most of the messages are posted by very busy developers, VARs, and MIS people needing help or responding to requests for help, the prospect of formalizing the popular desire for a BBx FAQ (frequently asked questions) seemed faint.
Nonetheless, more than a dozen programmers decided to create it, and they laid the foundation of what has become known as the Online Manual, a library of ASCII text files available for download from the BASIS Forum's TRAINING ROOM (Library 14). Led by the enthusiastic Ron Kinney of Kinney Stamp & Engraving Co., Inc., initial discussions focused on a common theme for the examples that would be included in the forthcoming white papers. Many of the volunteers felt the code examples provided in the manuals for the various Business Basic languages and tools lacked relevance to real world problems.
It did not take long for the project members to agree on a wholesale distribution module as the common ground. This is because most business applications include modules similar to the order entry systems of the wholesale distribution industry; and the project's aim was to provide advice and examples for experienced and novice programmers alike. The wholesale distribution format seemed to fit into the broadest spectrum of shared experiences among project members and commentators alike.
With the theme decided upon, several extensive file layouts were quickly agreed upon and in August 1993 the first files were uploaded to the TRAINING ROOM library. The file layouts were entered into a TAOS data dictionary and the files uploaded to the library, along with some guidelines for uploads, an introductory file, and a list of the active project members. With one notable exception, nearly all subsequent contributions to the Online Manual have used the project database (or derivations of it) in their examples.
One of the first white papers to be contributed was an essay on making Business Basic code portable across languages and operating systems. The essay discusses concepts used in maintaining code in different Business Basic implementations, and in different versions of those languages. Because the project programmers work mainly in BBx, a natural emphasis on BBx developed even in this first paper.
Other papers to follow as part of the Online Manual included a sample coding standard for the project itself. The standard is simple and is designed to show how companies can write up their own, more fully developed coding standards. An accompanying paper discusses coding standards and coding styles, raising several not-so-easily answerable questions about the choices which confront the writers of coding standards.
But sharing code with other programmers publicly is problematic. Many companies protect their source code to maintain competitive advantages, while every programmer makes mistakes on occasion and is loathe to display them for all to see. So by the start of 1994 the project seemed to lack a strong set of examples for people who were unfamiliar with the more advanced programming techniques.
To help fulfill this need, in March 1994 Michael Martinez, now a BASIS employee, obtained permission from his employer, Class Reunions of Georgia, Inc., to upload part of their coding standard along with comments and sample code. The Class Reunion system was not considered to be a mainstream application, but because it was written partly in TAOS and partly in BBxPROGRESSION/4, it seemed ideal for demonstrating how BASIS tools were being used in the field. The commentary provided by Michael was candid about what he felt were deficiencies as well as strengths of the coding standard. He also provided an overview of the company's function and data processing needs to give a clear context to the examples.
Still dissatisfied with the example set by the CRG Coding Standard, Michael uploaded another set of files almost two months later, showing improvements made in several of the routines and enhancements made to the standard. The discussion was able to make references to the previous upload as a means of demonstrating how coding standards evolve, even in so short a time.
After the Class Reunions coding standard upload, the project appeared to languish for some time as the contributors were busy, but over the course of the summer several programmers worked on what has proven to be the most popular document in the entire project to date. For various reasons, the BASIS Utilities Manual had not kept up with changes made to the EUS Toolkit programs, and though many people were trying to use it, they often expressed frustration at the differences between the documentation and the software.
So what has since come to be known as "the EUS Document" was prepared with the intention of explaining and demonstrating the uses of several of the powerful utilities. An emphasis was placed on configuring the environment for the EUS Toolkit - specifically the Input Subsystem and the Data Dictionary. An extensive discussion on the use of string templates was also included. The paper also contains much information about how to adapt the EUS Toolkit to existing, non-EUS aware applications, a task considered challenging by many busy programmers.
The EUS Document was considered to be so successful that, after hiring Michael Martinez in late 1994, BASIS decided to incorporate portions of the document in the Third Edition of the Utilities Manual, which was extensively reviewed and revised by several BASIS programmers. The EUS Document itself was updated with information about the EUS Toolkit's menuing and online help utilities. One of the most successful papers was contributed by Debbie Loehr, a BASIS employee. Her exhaustive discussion on programming function and edit keys through BBx has been praised as much as any other document in the project, and a revision was uploaded in 1995.
The Online Manual has grown to include more than a dozen white papers covering topics from migrating procedural code to graphical environments, to developing applications with the use of ASCII source files and the BBx external compiler; to loading the BASIS Data Dictionary from "legacy" dictionaries; to an exhaustive tutorial entitled "An Introduction to TAOS Programming." This tutorial actually grew out of another paper, called simply "TAOS Tips", which was reviewed by beta testers during the TAOS 1.3 beta process.
David Ainsworth, a private consultant, suggested the "TAOS Tips" paper might be too advanced for people new to TAOS programming, and that a more comprehensive introduction should be written. The result was the introductory paper, which includes a sample order entry system, a technique for generating hundreds of uniform file maintenance procedures literally in the space of minutes, and a sign-on screen, menu, and report procedure. More than a dozen programmers (including Andy Forget, the primary author of the TAOS language) contributed advice, tips, and commentary to both TAOS papers. Although work on the project again slowed down in the middle of this year, the project files were revised and reposted to CompuServe by Michael Martinez and Teresa Dominguez, the BASIS Forum's Primary Sysop. The papers now contain cross-references to each other; have been indexed in a single file available for download; and conform to a standard format. Some of the papers were also updated with new information or additional tips.
If all the Online Manual papers were printed out in a clearly legible font, they would produce more than 200 pages of single-spaced text. Although many programming languages are supported by third-party documentation usually costing from USD 20.00 - 40.00, the Online Manual is available for the cost of downloading the compressed (PKZIP or UNIX compress) ASCII files from CompuServe. The Online Manual papers are written in a comfortable, informal English style.