kcw | journal | 2001 << Previous Page | Next Page >>

At this point I've looked through all the Mac OS X applications and utilities installed, though not the BSD utilities or other programs only available through Terminal. It's time to look at the Developer Tools CD that comes with Mac OS X. Ah, it reminds me of the heady days when HyperCard was included with System software. That was one of the reasons that I chose to buy a Mac instead of an Amiga, which didn't include a programming environment. For some reason, I keep thinking that a computer should come with a programming environment, even just a BASIC interpreter will do. Sigh, I guess that's more of a techie desire than a computer user need. Still, I do miss the days when you could buy a computer and program on it without buying anything else. And those days may be back again, though with the current sophistication and complexity of developing programs, maybe it's too much to ask of a beginner to start using the development tools provided with Mac OS X.

The Tools CD has four files: a readme that basically says "run the pkg program, follow the instructions, reboot the computer," a CodeWarrior on Mac OS X PDF that I can't open with Preview, a CarbonLib SDK folder, and Developer.pkg. On starting the install program you need to enter an Admin password before continuing. Then you read the licensing, which I skip. After that you choose a destination volume and we see that the installation requires 613 MB of space. You can only do a basic installation, which takes about 15 minutes. The last thing you see is the Install Software "Optimizing System Performance." One of the tidbits I read is that the base Mac OS X was compiled with a bad optimizer, hence why it's really slow. The Tools CD replaces some files with correctly optimized versions, so there's a speed increase. I guess we'll soon see. Restart.

Well, that didn't seem to have done much. Maybe a little faster, but then again maybe my mind is being too hopeful. In any case, there is now a new /Developer folder with several subfolders -- Applications, Documentation, Examples, Headers, Java, Makefiles, PBBundles, ProjectBuilder Extras, ProjectTypes, and Tools. As usual with any development environment, there's a lot of stuff, a lot of little utilities that are used to do one or two things, a lot of files with weird names, quite a mountain to look through. I can only hope that the help is adequate. I can't imagine a new user, some teenager with their parents' computer, installing the tools and being able to immediate crank out a program. Not without spending a few intense days getting familiar with everything.

Let's look through the Applications folder, which contains 22 applications. The first program is DebugNub Controller, which displays a small window where you can enter a port id and press a start button to "enable debugging." Ok, something to do with the debugger, nothing I need to know. There is a FileMerge application that is used to compare files and merge the differences, something that's very useful in my line of work, where there are other developers that change files and sometimes you need to know what changes they made compared to your changes. icns Browser lets you see the contents of icon files. Interestingly enough, it gives me a File Open dialog box that has the ability to burrow into an application folder, something that you can't do with normal applications. But it's not very useful to me. IconComposer lets you create icon files.

Now we come to Interface Builder. As soon as it launches it shows you the Release Notes (quite copius and ominous, indicating a complex application), a palette of interface elements, and a window where you can choose a starting template. After creating an empty window, you can drag different interface elements and arrange your gui. Edit each objects visual properties (label, color, size) and some event properties (what happens when a button is pushed, for example), and that's it. Later on you have to edit the object classes and add the real code, but if you've never worked with a gui builder you know how developer intensive it is to create a gui. Just getting the look and feel right is slow and painstaking and a waste of a developer's time when they could be writing code and adding functionality. This is a cool tool.

(continued)

Copyright (c) 2001 Kevin C. Wong
Page Created: August 19, 2004
Page Last Updated: August 19, 2004