Naming Conventions for Software Exchanges Anyone submitting software to user group software exchanges should follow a few standard conventions. Some of these conventions involve user documentation, program documentation, file names, and keyboard usage. The following paragraphs describe these conventions: 1. User Documentation: Every program should have built-in documentation that tells the user the purpose of the program and the procedures to follow to use the program. This documentation could be in the form of Help screens or detailed comments imbedded into the display formats. Help screens should be optional so the experienced user is not hindered by the documentation display. If user documentation cannot be imbedded into the program, then a documentation file should be included with the program. This file should be a standard DOS file, which can be viewed with the DOS TYPE command, and have the same filename as the program and a filename extension of DOC. 2. Program Documentation: One of the purposes of the software library is to provide programs that the novice programmer can use as an educational tool. This use of the library can be enhanced if source code for those programs submitted is well documented. A remarks section should be included at the begining of the program, which contains the name of the program, the author's name, and a general description of the program. Documentation should also be included throughout the program so that the logic of the program may be more easily followed. Source code for BASIC programs should not be protected and source code for compiled programs should be included with a filename extension indicating the language used. 3. File Names: The use of file naming conventions can make manipulation of files on disks much simpler and can help inform the user of the purpose or content of the file. The filename should reflect the purpose of the file and be easily identified with related files. For example, let's assume that we have developed a database system containing a BASIC program for updating, a BASIC program for printing, a data file, a documentation file, and a batch file for invoking BASIC with the proper parameters. These files could be named DBASUPDT.BAS, DBASPRNT.BAS, DBASE.DAT, DBASE.DOC and DBASE.BAT. Using these names, we can easily identify all of the files used by the database system, and the purpose of the file. Since the first 4 characters of each of these file names are the same, they can all be copied to another disk by using filename wildcard characters (DBAS*.*) in the copy statement. The recommended file name extensions are as follows: - .DOC = Documentation or Instructions - .TXT = General ASCII text file - .BIN = Binary memory image such as created by BSAVE - .DAT = Data file - .ASM = Assembly language source - .BAS = BASIC program - .PAS = PASCAL source - .FOR = FORTRAN source - .COB = COBOL source - .BAT = Batch file - .HEX = Files in Hexadecimal - .COM = Command files executable in DOS - .EXE = Compiled programs executable in DOS Some of the above filename extensions such as .BAT are forced upon us and are included here for informational purposes. I am sure some extensions have been left out, but this is at least a common starting point. 4. Keyboard Usage: The user friendliness of all programs can be improved by using certain keys on the keyboard consistently. For example, the Escape key (Esc) should always be used to back out of or escape from the function currently being performed. Since there are far too many keys on the keyboard to discuss here, I will refer you to section 3 of the IBM Personal Computer Guide to Operations and Appendix C in the Technical Reference manual. These manuals provide keyboard usage conventions generally used by commercial software developers as well. Following these 4 sets of conventions whenever possible keeps practices uniform from one software developer to another and improves the quality and legibility of the software library. Following conventions like these may take a little extra time, but the long range benefits to the user and programmer are worth it. In addition, you should avoid using KILL or SAVE statements in your file unless they are required for execution of the programs. Many people get quite nervous with KILL statements in a file.