Once again, Bruce Johnson returned to the ETC
        conference for his presentation of Programming in Clarion's ABC. 
        
        Bruce has expanded his previous presentation at ETC 2000 to cover
        significantly more information. For example, attendees of this session
        received a 137 page book, written by Bruce Johnson, that details all the
        information discussed. The book for this year's session is approximately
        three times bigger than before. 
        
        Bruce opened with a discussion of some basic ABC terminology and
        outlined some goals of using ABC, the primary goal being: writing
        reusable, bug free code. 
        
        The information presented this year was simply overwhelming. The topics
        that Bruce covered included: Windows, Forms, Browses, Views, Reports,
        Processes, Files, Relations, Errors, Popups, INI files, and Edit In
        Place. Each topical discussion focused on the ABC Classes involved and
        how they relate to each other. 
        
        Bruce explained the relationships between "Generic" and "Specific" code
        and helped grasp the concept of "Virtual Methods", or "Pancakes" as he
        calls them. If your confused by this, don't be alarmed, I was too. Bruce
        was basically implying that the term "Virtual" is too vague, and should
        have been called something more meaningful. 
        
        Bruce also discussed Interfaces. He explained what they are and how to
        use them. In each of his discussions, Bruce pointed out major embed
        points and when we should use them. Along the way, He provided many
        useful tips and tricks. He also presented some little know facts,
        including:
        
          - How the Update method of the FileManager Class can cause a
            performance hit
- How deferring the opening of files until accessed can provide a
            massive speed improvement
- Why embedding code into the Insert() method of the FileManager
            Class should also be embedded into the TryInsert method as well
- How to view error log history and/or save it to disk
- How to get a list box to behave like a spreadsheet
- What the C55util function library is and how to use it
        As an added bonus, Bruce will be providing several resources to the
        participants, via the web. This will include some examples, as well as
        custom zError and zINIClass classes. These classes overcome some of the
        limitations of their respective ABC classes. 
        
        All in all, too much information was discussed than can be included in
        this report. At times, even Bruce skimped on the details, but would
        direct us to read the book, because the information is discussed there.
        
        
        There was an additional cost of $50 to attend this session. Even if you
        were unable to attend, it is my opinion that the book alone is worth the
        money spent. The book is laid out quite nicely. The first section is
        intended to be an introductory tutorial, while sections two and three
        cover more advanced topics. Compared to the cost of many computer books
        these days, the cost to attend this session was a bargain. If you have
        the opportunity in 2004, you should definitely plan on attending this
        session. 
        
        © 2002, Online Publications, Inc. Reproduced with permission.