From the Inside Out: The PenPoint Programming Workshop
From the Original Pages
Click a page to enlarge · Alt-click to open the full issue
Editor’s Note: Gregory Lazarev is president of Applied Logic Programming, Inc., 262 Tomkenn Road, Wynnewood, PA 19096. He recently traveled to California to attend GO’s PenPoint Workshop and he shares in this article his experiences and impressions of the workshop.
The PenPoint Programming Workshop is part of GO’s Master Developer Program for PenPoint software developers. The workshop, which runs monthly in Foster City (near San Francisco), is designed to teach the fundamentals of writing pen-based applications for the PenPoint operating system. At around $2000, however, the workshop is a sizeable investment, particularly for a small software development shop. I recently attended the workshop and can report the following details and impressions of it.
A Strong C Background
The PenPoint Programming Workshop is a four-day seminar presenting all major aspects of the PenPoint operating system. Not just anyone can attend the workshop. GO requires that all attendees have a strong background in C programming and a strong familiarity with object-oriented programming. (The PenPoint operating system, which is written in C, is based on an object-oriented architecture.) Familiarity with a pure object-oriented environment like Smalltalk is preferable to knowledge of hybrid environments like C++.
The goal of the workshop is to introduce PenPoint programming so that developers can deal with the multi-volume technical documentation and development tools that make up the Software Developer’s Kit (SDK). From my perspective, this objective was fully achieved.
Topics covered in the seminar include: Object-Oriented Programming; PenPoint Class Manager; PenPoint Application Framework; PenPoint Kernel; File System; Window System and Graphics; Input and Recognition System; User Interface (UI) Toolkit, Layout and Controls; UI Toolkit, Components; Advanced PenPoint Class manager; PenPoint Connectivity; and Application Installation.
The first day of the seminar is critical. It deals with the object and class foundation for supporting the object-oriented paradigm across the system (PenPoint Class Manager) and with the application’s architecture and life cycle (PenPoint Application Framework). Learning these subsystems provides a basis for understanding the other PenPoint subsystems.
Steep Learning Curve
The power of PenPoint is not free. As with any pure object-oriented system, the learning curve is steep. Besides in-depth knowledge of C and object-oriented principles, familiarity with the elaborate class hierarchy and its methods is required — and this takes time. Also, implementation dependent aspects such as the predefined framework for writing applications and the quite unusual (for C programmers, at least) style of object-oriented-programming-in-C with heavy use of nested types and macros should be learned and mastered.
Seven hands-on lab sessions are an integral part of the workshop. The approach — to take one application (clsCounter, for example) and gradually enhance it by incorporating the new lecture materials — has multiple benefits. It not only illustrates the use of specific PenPoint subsystems, but it encourages perhaps the most important lesson in OOP — software development by refinement.
The course itself is taught by GO personnel and PenPoint developers. All instructors support an atmosphere that encourages a lot of questions from participants. Most questions are answered immediately, some are redirected to the appropriate technical specialists. The topics of presentation and their order closely follow the two-volume “Architectural Reference,” the major source of the technical documentation. Many subjects covered in lectures were illustrated by the code examples. The value of these examples becomes particularly clear later, in the process of development.
More Tools Needed
My only disappointment with the workshop (or rather with the present state of PenPoint software) is the lack of a real software development environment, like that of the Smalltalk environment. GO is familiar with this problem and plans to address it with enhanced tools in the future.
Overall Success
There are several other ingredients that made this seminar a success: excellent accommodations, extended lab hours (until 10:00 pm), and, most of all, chances to talk with the GO staff over lunches and other informal occasions. GO seems to be genuinely interested in success of their developer programs. Furthermore, developers who attend the workshop are allowed after the conference up to 20 follow-up phone calls with GO technical staff members.
One last point: In addition to the PenPoint Programming Workshop, I recommend you also attend the one-day PenPoint Technical Seminar (it usually runs a day before the workshop). This is a manager-oriented seminar (which costs an extra $99) that includes marketing and technical overviews of PenPoint and complements the technically-oriented workshop quite well.
Just What We Need: More Conventions
The Interface Group has announced plans to hold a series of five regional “mini-Comdexes” in North America starting in 1992. The following are the dates and locations:
- PC/West, San Francisco, March 17-19, 1992.
- PC/Canada, Toronto, August 12-14, 1992.
- PC/East, New York, October 27-29, 1992.
- PC/South, Dallas, February 9-11, 1993.
- PC/Midwest, Chicago, April 27-29, 1993.
The conventions will include seminars and conferences just like Comdex, PC/Expo, and so forth. We have to wonder, how does anyone in this industry ever get any work done? Contact the Interface Group at 617-449-6000
Transcribed from Pen-Based Computing, Volume 1, Number 5 — November 1991. Pages 13, 14.