home *** CD-ROM | disk | FTP | other *** search
- Path: sparky!uunet!decwrl!waikato.ac.nz!ldo
- From: ldo@waikato.ac.nz (Lawrence D'Oliveiro, Waikato University)
- Newsgroups: comp.sys.mac.programmer
- Subject: MacBureaucracy
- Message-ID: <1992Nov23.165558.12398@waikato.ac.nz>
- Date: 23 Nov 92 16:55:58 +1300
- Organization: University of Waikato, Hamilton, New Zealand
- Lines: 70
-
- I remember a saying from somewhere, to the effect that any piece of software
- reflects the organizational structure that produced it. I guess one corollary of
- this is that arbitrary, inexplicable divisions within the organization will
- manifest themselves as arbitrary, inexplicable divisions between the functions
- of the software.
-
- This is starting to manifest itself in several places in the Mac system. One
- of the first ones to strike me was the popup menu CDEF that comes as part of
- the Comms Toolbox. Sure, a popup menu control is useful in a lot of contexts,
- not necessarily communications-related, and it's good of the CTB people to
- make it available in such a general form. But it remains a feature that you
- only get on a CTB-enabled system, as (face it) a sort of kludge on the
- existing Toolbox architecture.
-
- QuickTime has introduced a few more examples. The Image Compression Manager
- in QuickTime 1.5 adds a nice collection of window-alignment services, that
- take into account all the intricacies of pixel depth and CPU type, to ensure
- that screen drawing is as fast as possible. I wouldn't describe these routines
- as a kludge; they are well thought out, and are of very general use.
- Nevertheless, you call them through the Image Compression Manager trap, and
- they are only available if you have QuickTime installed.
-
- Another example is the Standard Compression Dialog in QuickTime 1.5. Tucked
- away among the functions it provides are some general calls for positioning
- dialogs on the screen. These support options for centering the dialog on the
- main screen, or on the best (deepest) screen. Again, useful in lots of contexts
- outside of getting compression settings from the user, but only available
- by first loading the Standard Compression Dialog.
-
- In all these cases, it seems obvious what happened: the authors of these
- pieces of system software found that they needed these functions, and that
- they hadn't already been implemented by the groups which should have been
- responsible for them. Luckily they had the good idea of making the functions
- available in a general form for others to use.
-
- While on the subject of QuickTime, it seems to me that if you implement some
- function as a "component" (i e using the Component Manager), then the idea is
- that there may be other components of the same type, that might be available
- to choose from or that might even replace the original component. There are
- clearly a couple of collections of QuickTime services that don't fit into
- this category, namely the Standard Compression Dialog and the Sequence Grabber.
-
- We-ell, you *might* want to replace the Standard Compression Dialog with
- alternatives (and perhaps delegate such utility functions as the dialog-
- positioning ones back to the original). And the Sequence Grabber supports all
- kinds of additional plug-in component types which handle various parts of the
- details of movie grabbing. But the Sequence Grabber Component *itself* doesn't
- strike me as something you might want to replace.
-
- What happened here? Perhaps these functions appeared later, and were not part
- of the original QuickTime plan. Perhaps they were seen as experimental add-ons,
- that could be tried out and removed if necessary without impacting the rest of
- the design. Or maybe they were being miserly with A-trap allocations that
- week...
-
- I'll freely admit it: all the specific concerns I've raised so far can be seen
- as trivial, nit-picking ones. But I can't help wondering: as the OS gets even
- more complex, this could very well be a foretaste of worse things to come. I
- *hope* Apple will never let things get to the stage where the Mac system becomes
- seriously complex and unwieldy, because of lack of coordination and duplication
- of effort between different groups; I hope that, even as I speak, work is
- under way to keep these sorts of occurrences to a minimum in future.
-
- I just hope it's not too late...
-
- Lawrence D'Oliveiro fone: +64-7-856-2889
- Computer Services Dept fax: +64-7-838-4066
- University of Waikato electric mail: ldo@waikato.ac.nz
- Hamilton, New Zealand 37^ 47' 26" S, 175^ 19' 7" E, GMT+13:00
- It's 30 milliseconds to timeout. Do you know where your ACK packets are?
-