Programming for the Newton: The Easy Way
From the Original Pages
Click a page to enlarge · Alt-click to open the full issue
With all the harsh criticism of Apple’s Newton PDA, they must have done something right in order for it to have achieved its moderate success to date. And that thing may be its high-level, object-oriented development environment, built around the NewtonScript programming language.
While many developers have complained about the lack of access to C-level tools and libraries, a good many commercial, corporate, and university programmers have shipped a wide range of useful applications. In fact, we saw more shareware applications in the first two months for the Newton than we saw in the first two years of PenPoint.
While the Newton Toolkit (NTK) provides a high-level, graphical interface for creating Newton applications on the Macintosh, the intricacies of prototype-based inheritance, and the data soup storage model may prove troublesome to developers versed in more “conventional” development environments.
A new book, written by Julie McKeehan and Neil Rhodes, comes to the rescue. Entitled Programming for the Newton, the book/diskette combination presents a readable, yet comprehensive overview of creating an application using the NTK. The book is geared towards people with all ranges of programming experience. In fact, there is early mention that if the Newton is your first programming environment, you’ll have even less to unlearn!
While the Newton’s programming structure is different from the more conventional C++ model, it’s hard to imagine not being helped by a firm understanding of object-oriented programming in any environment. In fact, a novice programmers may get hung by the middle of the book.
Creating a Newton App
Programming for the Newton spends the first hundred pages describing how to position the layout for the book’s example application, WaiterHelper. In the process, the book describes many of the important concepts related to views and templates, the major building blocks of a Newton application.
The book makes very good use of graphics and illustrations, often making complex layout hierarchies clear and straightforward to visualize. In addition, the early parts of the book describes several important user interface design considerations, drawing upon some shipping applications to illustrate a point.
Programming for the Newton continues by describing proto and parent inheritance, along with the difference between system and user created prototypes. The book also explains how to save space using prototypes and reusing code.
Further along in the book, we get clear explanations of how data is stored in frames, soups, and stores, NewtonScript programming, and how to debug an application using the Inspector.
Demo NTK Included
Perhaps the most compelling aspect of Programming for the Newton is the inclusion of a nearly full-featured demo version of the Newton Toolkit. The licensing agreement states that this version is not intended for commercial development and distribution.
However, the book and demo NTK together form a very inexpensive way to see if Newton application development is for you. We were able to re-create in-house Newton applications originally created using a licensed copy of the NTK.
Summary
The book serves its purpose well as a general introduction to Newton programming. While certain early parts of the book occasionally appeared to get ahead of itself, it’s not clear whether another ordering would have worked better.
In general, the book moves along quickly and smoothly, with few theoretical distractions to get in the way. While this book won’t make you an expert Newton developer, it will get you on your feet without overwhelming you.
Book information:
Programming for the Newton
Julie McKeehan and Neil Rhodes
Soft cover, 393 pages, diskette
AP Professional, 1994, $29.95
ISBN 0-12-484800-1
Transcribed from Pen-Based Computing, Volume 4, Number 5 — June 1994. Page 7.