NXApp, Spring 1994 (Volume 1, Issue 2). Copyright ©1994 by NeXT Computer, Inc. All Rights Reserved.
appDidInit:
THE FORGOTTEN ART OF TOOL-MAKING
| Even at this late date, many programming projects are still operated like machine shops so far as tools are concerned. Each master mechanic has his own personal set, collected over a lifetime and carefully locked and guarded-the visible evidences of personal skills. Just so, the programmer keeps little editors, sorts, binary dumps, disk space utilities, etc., stashed away in his file.
Such an approach, however, is foolish for a programming project.... It is obviously much more efficient to have common development and maintenance of the general-purpose programming tools. (Frederick P. Brooks, Jr., The Mythical Man-Month [Reading, MA: Addison-Wesley, 1975, ISBN 0-201-0065-2], 128.) |
When those words were written, programming was a distinctly different activity than
it is today. Yet, they could easily have been written last week. Developers create new tools for themselves every day. Sometimes they make them available to others, but often they keep them private. Maybe a tool isn't polished" enough for public consumption. Or maybe it seems too single-purpose to be worth sharing. For whatever reason, the advantages the tool offers aren't extended to other programmers.
This loss seems greater in NEXTSTEP, because part of this environment's advantage is that you can extend its development tools and the tools others build. This means creating palettes, building reusable classes, taking advantage of ObjectWareTM. If you are to fully realize the productivity gains NEXTSTEP offers and win a competitive edge, you must push your development tools to the limit.
Are you customizing your development environment? If not, now's the time to start. Plan tool-building into project schedules to ensure you get all the benefits of NEXTSTEP.
- Cynthia Closkey, Editor
__________________________________________________________________________________
| Next Article | NeXTanswer #1644 Shrinkwrap Corner |
| Previous article | NeXTanswer #1642 | Improving NeXT's Developer Documentation |
| Table of contents | http://www.next.com/HotNews/Journal/NXapp/Spring1994/ContentsSpring1994.html |