Self Paced Lessons
Volume Number: 7
Issue Number: 9
Column Tag: Tools of the Trade
Self-Paced Mac Programming
By Joe Pillera, MacTutor Contributing Editor, Environmental
Re search, Institute of Michigan
Introduction
One of the caveats of Macintosh has always been that it’s a nontrivial machine to
program - largely in part because the Mac is more sophisticated than most other
popular computer platforms.
But this has finally changed for the better: Apple’s Developer University has
just recently released a self-paced course on CD ROM - spanning over 500 megabytes
on disk - called Macintosh Programming Fundamentals (MPF henceforth). This
product uses Macromind Director to teach Mac programming using sound, graphics and
animation. And the result is impressive.
Selecting a course from the menu
Refer to Figure 1: MPF uses Hypercard as a front end, to make navigation
throughout different parts of the course easy and intuitive. As can be seen from the
illustration, MPF covers the following ROM managers in detail, in order to allow you to
construct a completely functional draw program (called Target) when you complete the
course:
Control Manager Print Manager
Event Manager Quick Draw
File Manager Resource Manager
Memory Manager Standard File Package
Menu Manager Window Manager
Clicking on “Building an Event Loop” in Figure 1 will immediately bring up the
screen as shown in Figure 2. Every subtopic consists of three major parts: the lesson,
self-test questions, and lab exercises.
Because Macromind Director is used throughout, each “frame” on the lesson is
completely animated and narrated, as is the excerpt from the Managing Memory module
in Figure 3.
Making the grade
One of the nicest parts of this course is its self-testing ability. If you answer a
self-test question incorrectly, the button “Review Lesson” flashes at the bottom of
your screen. Clicking it activates a hypertext-type of link to the exact lesson frame
that explained the concept. Refer to Figure 4: the top half of the illustration represents
the self-test question; the bottom half is the screen that appears when you click
“Review Lesson.” In this case, a narrator’s voice came out of my Mac telling me
PrCloseDoc() is the function I should use when a previous call to PrOpenDoc() has been
made. An animated diagram was then drawn on my screen to reinforce the concept.
Animated homework
As if providing lab exercises at the end of each lesson wasn’t enough, Apple did
the ultimate: they provided a Show Me facility - an animated and narrated cheat sheet,
if you will. So if you get stuck in a lab problem, just click Show Me to bail you out.
Show Me is so thorough, it simulates exactly how a professional Mac
programmer would solve the problem - all the way from double clicking on the THINK C
application to cutting and pasting source code to solve the problem. Even the THINK C
compile process is simulated - to give you the feeling an instructor is doing all the
work right at your keyboard. Someone really put a lot of effort into this feature.
Right on the bullseye
When you’re all done with the course, you’ll have a fully-functional draw
program called Target. No - it doesn’t blow away Aldus Freehand™, but it does provide
you with source code that handles everything from printing to scrolling of graphical
items in windows.
However, the power-programmer in me did surface at the end, so here’s my
wish list for future versions of the MPF Target application: tear-off menus (like in
MacPaint), multiple page specifications for a window (like in MacDraw), color, and
more support for MultiFinder and forthcoming System 7 features.
Conclusion
Apple has really struck gold with MPF. Combining detailed illustrations with
animation and sound, it’s as close as you’ll ever get to sitting in a classroom - and a lot
more convenient.
Joe Pillera is a research scientist at the Environmental Research Institute of
Michigan (ERIM) in Ann Arbor, Michigan. The opinions expressed here are solely those
of Joe Pillera, and not of ERIM or its affiliates. The author can be reached
electronically via the GEnie service by sending mail to JPILLERA. All trademarks are
registered to their respective holders.