© 1994-2016, Frank Stearns
Site Revision 2016-03beta
Frank Stearns Associates Makers of IXgen for FrameMaker FSA  1 435 275 8981 franks@fsatools.com
Early Products

FSA Oldies

Dog and Cat years to Human years: approximately 6 to 1

Software years to Human years: try 25 to 1

Nothing changes faster than software, and that's true for FSA products as well (though we are pleased with the longevity and stability of IXgen). Many of us have stories to tell about using 029 keypunch machines to make a FORTRAN deck (the good old days), many more of us have never seen a punch card. (Lucky kids!) Sometimes, though, it's fun to look back at "recent" products. That's why this page is here. Our first three major products for FrameMaker are described below. We can see how far FrameMaker has come these past few years (or past 350 years, human equivalent). FM2A-PEK, Released 1993, retired 2000 (equivalent human age: 175) Long before HTML and PDF became dominate, and before graphical monitors became the norm, there was a strong demand for "nice looking" ASCII output from FrameMaker. FM2A (FrameMaker-to-ASCII) did this very well, and provided a great deal of user-control over how various graphical attributes would be rendered in an ASCII text stream. Bullets, numbered or defined lists, headings, spacings, and so on could all be controlled. FM2A also offered a pagination section, and automatic "proportionalizing" of a number of text stream aspects, including tabs and tables. In fact, just under half the code in FM2A dealt with the intricacies of tables, and FrameMaker tables looked pretty good in FM2A-generated ASCII. The PEK (Programmable Export Kit) was added to provide even more output flexibility to FM2A. Specifically, PEK converted "flat" FrameMaker output to more structured output, such as that required by other formatting systems such as Nroff/Troff, Scribe, LaTeX, and early HTML. For example, a FrameMaker bullet list merely consists of bullet tags, whereas structured systems require an open and close command for a list environment. PEK could synthesize these structure elements. PEK was a chameleon, and simply by switching configuration files could be reprogrammed to output basic commands for most structured systems. A few die-hard users still use FM2A-PEK, but the product is no longer supported nor are any new versions planned. TableGen, Released 1991, retired 1993 (equivalent human age: 50) TableGen generated tables for FrameMaker 2.1. That's right, back in those days, that wonderful FrameMaker table editor we enjoy today didn't exist. The target table format for TableGen was the famous "Table 4" template designed by Craig Yappert at Frame. The engineers thought this was crazy. They laughed at Craig (and us): "you can't do those kind of things with negative leading and spacing values!" And true, TABLE 4 items could get squirrely during repeated adjustments. But it worked, and we based a table generator around that concept. An historical "thanks" to Craig for coming up with those table templates for 2.1. But this was clunky. A would-be table-making person wrote an ascii file using a mark-up language that looked like Latex. (The syntax was accessible in a configuration file. TableGen let you generate files using Latex, Scribe, or even TBL syntax.) Now, of course, things like tables are done with slick GUI-based editors. But wait a moment! What goes around comes around. With a few modifications to the syntax configuration file, TableGen could generate FrameMaker tables from today's HTML. We find this humorously ironic, to say the least. Anyway, TableGen inhaled the ASCII table definition file and shot out a MIF file with a bunch of Aframes and text columns glued together using weird leading and spacing values. These in turn made up an appropriately sized and massaged table based on the TABLE 4 template, with all the content you'd specified. You'd open the MIF file generated by TableGen then copy and paste the table(s) into the main document. Whew. As awkward as this process seems today, at one time this was about the only reasonable way to create FrameMaker tables with multi-line cells. HyperGen, Released 1993, retired 1995 (equivalent human age: 50) HyperGen was the first hypertext linker for Frame 2.1 or Frame 3.0. (Automatic linking didn't come to FrameMaker until version 4.) HyperGen linked TOCs, LOFs, LOTs, IX files, and cross- references. While developing HyperGen was a technical path filled with pot holes, broken glass, and a lot moans and groans from us, users really liked HyperGen. One feature still not offered today in the internal FrameMaker linking is the ability to link user-defined strings. However, this can now be done using the "Markers from Keywords" function of IXgen. HyperGen plowed through all the files in a book. With larger document sets, this could take a while. Couple this with the "steam powered" work stations of the day and a 1000 page book could take the better part of an afternoon and evening to be fully linked. (This was while running on a Sun 350; Sparc 1s cut that time down to an hour or so. Today's systems could do this in a few seconds.) One of the key design aspects of most FSA tools is providing the user a way to modify product operation. This was true with TableGen's definable syntax; the tradition was carried over to HyperGen in the form of pre- and post-processing hooks. Users could then add in their own processing scripts. One of our clients, for example, wrote an awk script that integrated navigation buttons onto the master pages when HyperGen ran. The buttons were "fresh"; no conditional text had to be jiggled. We'll be updating this page in the years to come. Wonder what we'll say about today's leading edge tools then?