For Computer Science Majors Only
( Warning: this uses technical language that may not be suitable for all viewers. )

The author has been a professor of computer science at Kean University in New Jersey for the past thirty-four years.  It has been his observation that as electronic publications have evolved over the years, the vast bulk fit into two categories.  Many represent nothing more than "computerized page flipping," the standard form of sequential pages, perhaps linked to images and even audio and video, but still designed to be presented in a linear format.  Others, particularly those that are beginning to appear on the internet, grow every which way.  Pages are linked and cross-linked on a whim with very little thought given to structural design.  One obvious exception to this lack of design has been the migration of automated instruction (computer aided instruction, or CAI) to modern computer platforms.  It is too bad that over the past third of a century the improved understanding of how humans learn has not kept pace with the knowledge of how computers "learn", much less with the improvements in computer technology itself.

It is the author's contention that computerized publications can be enhanced by applying standard design techniques based on theoretical data structures and object-oriented programming.  To test this theory and to gain some experience in managing a moderate sized project as well as to develop some of the software tools needed to do both, he decided to create this publication.  He chose Boy Scout Postcards because he likes Boy Scout Postcards.  Any other venue would have done as well.

The primary data structure for browsing through a set of cards is a doubly-linked circular list with a dummy head node, each page serving as a node in the list.  The navigational efficacy of this in viewing the cards should be obvious.  Equally important from the development standpoint, the algorithms for insertion and deletion in such lists are well known, and it becomes an easy manner to place additional nodes (pages, cards) into an existing category, or to move a node from one list to another.  Thus project management is facilitated.  Occasionally a node becomes a very short circular list instead of a single page.  This permits a viewer to look at one or more details on the front or back of a card and continue browsing through the list without being forced to go back to the main card first.

The dummy head nodes serve two purposes.  They generally contain an index of express links to every node (but not every page) in their list.  Thus someone looking for a specific card (as compared to browsing) does not have to go through every card in a list to find it.  In addition the dummy head nodes serve as nodes in a hierarchical structure, providing, in essence, a tree of doubly-linked circular lists.  The author suspects that anyone who can access a CD-ROM is sufficiently familiar with hierarchical directory structures to be able to navigate with little or no instruction.  Time will tell.  Each page contains across the top a series of back-links to every node in the hierarchy on a path from the root to the page itself.

Additionally, there are cross-links that contain relationships between two nodes in the hierarchy that are not otherwise joined by a direct path.  For example, a card published by the Scout Gum Company "is-a" example of a "Signaling" card and belongs in two lists - sometimes with different information included that is appropriate to the specific list.  The cross-links permit navigation back and forth between such lists.

The astute student of computer science will recognize some other data structures - such as priority queues, once again chosen because the well-known algorithms made life easier for the author.  In the best academic traditions - they will be left to the reader to discover.