Macworld San Francisco 1999
Volume Number: 15
Issue Number: 3
Column Tag: Conference Report
Macworld San Francisco, 1999
by Michael Rutman, VPN Guru
Expo Developer Tools Roundup
The entire computer industry depends on developer tools. Without developer tools,
there's no software, and without software, it doesn't matter as much what color your
iMac is :-). The tools market is also a reliable indicator of where the industry is
headed. When interest in developer tools is high, more programmers and developers
are trying to build the next great application. Some will succeed, some won't, but it's a
safe bet that there will be more software available down the line than when interest in
developer tools is lower. So, while most people at MACWORLD San Francisco were
focused on Apple's new candy-colored computers, I took a lot of notes about what's new
in developer tools. Read on for the details.
Best New Tool
DCon is a logging utility that every developer should take a look at. Logging utilities
don't sound exciting, but DCon might just be the exception. Normally, when a
programmer is tracking down a bug, he has to drop into the debugger and trace through
his code, checking variables as he goes. If the bug is sporadic, this can be simply
painful. On other platforms, programmers can printf() to the command line, and
finally on the Macintosh, so can we. Macintosh programming includes development at
interrupt time, and writing extensions that need logging before a window can be
brought up, but DCon works in those situations - it's thread safe and interrupt safe.
Installing DCon is trivial; just drag an extension into your system folder. To use DCon
in your application, make sure the library to your project, add the DCon.h header, and
use the calls dopen and dprintf for logging. Adding DCon to one of my active projects
took less than 5 minutes. <http://www.cache-computing.com>.
The Compilers
Metrowerks introduced CodeWarrior Professional for Java and CodeWarrior Academic
for Java, products that became generally available from Metrowerks and its resellers
shortly after Macworld. The products are Java-only versions of Metrowerks'
CodeWarrior integrated development tools that support development for C, C++, Java
and Pascal. Metrowerks announced that the academic version of the Macintosh-hosted
Java tools will be included on the Apple Developer Connection (ADC) Student Program
CD. Students visiting Metrowerks' booth were excited about the availability of an
academic version of CodeWarrior for Java. Later this spring a new release of these
tools will include easy-to-use rapid application development (RAD) tools for building
graphical user interfaces. The RAD tools will include drag-and-drop editing, live
component configuration, and source code generation.
Many new programmers rallied around the demo of me Metrowerks CodeWarrior
Discover Programming for the Macintosh, a product for those who have little or even
no programming experience. CodeWarrior Discover Programming contains the same
Integrated Development Environment (IDE) found in CodeWarrior Professional, and
includes online books, online tutorials, and megabytes of sample code to help get you
started. <http://www.Metrowerks.com>.
REAL Software demonstrated the current release of REALbasic as well as previewing an
upcoming version 2 release (scheduled for March). While version 2 contains a long
list of enhancements, the two most important features (both of which were
demonstrated at The Macworld Expo) are the Windows compiler and database
connectivity. You'll soon be able to create a Windows executable version of your
REALbasic app by doing nothing more than selecting Windows as the target at compile
time. REAL Software also demonstrated the database features of version 2 which
include a single-user, relational database engine and and connectivity to other database
engines such as Oracle, 4th Dimension and any ODBC compliant database engines.
<http://www.realsoftware.com>.
More New Tools
Uni Software Plus debuted their new VOODOO server. Uni is the manufacturer of the
standalone VOODOO version control system and they've leveraged off of that product to
create an easy to use client-server architecture for large development projects. The
VOODOO Server uses VOODOO clients (including a CodeWarrior VCS plug-in) to offer
reliable and robust version control functionality without a lot of the bureaucratic
overhead that usually accompanies version control. Using a server should make for
more stable databases, and better performance with multiple users.
<http://www.unisoft.co.at>.
Whether you're a one man team or part of huge development group, bug tracking
software is essential to a long term project. I've been using a Seapine's TestTrack for
over a year, but after playing around with BugLink 1.1 at the show, I bought a copy of
BugLink. Normally, once I settle into a program, I don't change systems easily. But,
despite being happy with TestTrack, I feel that the effort of learning a new system is
well worth the advantages BugLink offers. Some of the features in BugLink make me
think that there is a full database behind it. Bug report lists are done as queries, and
they are easy to set up. The tracking software is very fast, and completely non-modal.
That means, you can have two windows up at once, so you can compare bugs. I was also
pleased to see I could have multiple lists of bugs with different criteria, and have bugs
matching different criteria in each window. BugLink, as well as being multi-platform,
gives the user the feel of a good, quality Macintosh product.
<http://www.pandawave.com>.
Resorcerer 2.2 has been out for a while, but not everybody has upgraded. You can
download a free upgrade for the 2.0 product, and it's worth getting for the Appearance
Manager support alone. Resorcerer, of course, is the commercial alternative to
Apple's free resource editor ResEdit. Recently, ResEdit has fallen behind on Apple's
technologies, and today, there are resources that can only be edited with Resorcerer.
This is making it a must have product (even if the high price does put it out of range of
students and hobbyists). <http://www.mathemaesthetics.com>.
Another tool I find indispensable is the code editor BBEdit (by Bare Bones Software).
BBEdit, for years, has been the only reasonable way to search and compare files on the
Macintosh. A year ago, Metrowerks was an acceptable editor, but BBEdit was required
to do anything beyond one file at a time. Today, even though the Metrowerks' IDE has
seen a lot of advanced, BBEdit is still one of the best tools for editing code.
<http://www.barebones.com>.
Networking Tools
More and more, Macintosh developers need ways to connect to other computers. In
addition to networking Macintoshes together, developers need to access other
platforms. Fortunately, there are new tools for both these needs.
For developers of networking tools, the must have product is AG Group's EtherPeek.
The price is out of range for all but the serious network developer. EtherPeek snoops
network traffic, which means it grabs every packet on the network and displays them.
Filtering incoming packets is easy, though I would like the ability to filter packets
already received. In addition to basic snooping, EtherPeek has decoders for standard
packet types, and adding decoders is easy. EtherPeek also lets developers send packets.
<http://www.aggroup.com>.
There are three solutions for communicating between Macintoshes and Windows
machines. DAVE allows Macintoshes to mount any Windows volume
<http://www.thursby.com>. COPSTalk lets Windows machines mount any AppleShare
for FileShare volumes <http://www.copstalk.com>. NetWare lets Macintoshes mount
IPX volumes. <http://www.prosoft.com>. Each of these products has been revved for
The Macworld Expo, so if you need this kind of connectivity, please check out their web
sites.
For connecting to the Internet, Sustainable Softworks http://www.sustworks.com has
an Internet router running on a Macintosh that is quite impressive. While there are
other routers that run on the Macintosh, IPNetRouter is amazing in how far they have
gone. One of the drawbacks to the growth of the Internet is stinginess with IP numbers.
Many ISP's now charge for anyone using more than one IP address. With IPNetRouter,
you can have multiple machines masquerading as the one running the router software.
I have seen other solutions, and this one seems the most complete to me. In addition,
there is IPNetMonitor which has a lot of diagnosis tools for the Internet.
Tools for the Rest of Us
Not everyone wants to program in C or Java. Many projects are better suited for other
environments, and there were a few at the show. The three that caught my eye were
4D, ReportMill, and AgentSheets.
4D is an established product, but one I haven't explored before. This year, I sat down
and ACI US showed me just how useful and productive 4D V6 is. 4D V6 is a rapid
application development (RAD) tool and also a relational database management system
(RDBMS). Products such as FileMaker are useful for some purposes, but to get real
power, you need a true RDBMS environment and development suite. Unfortunately,
most relational database products are mind-numbingly complex - 4D V6 shows that
there is no need for complexity.
ReportMill is a WebObjects program for creating dynamic reports on the web.
ReportMill leverages off of WebObjects to create pdf files on the fly. An example they
were showing involved a user selecting topics from a catalog, then receiving a catalog
custom-made for their use. Unlike other similar solutions, this catalog is a pdf file.
HTML formatted results are nice, but pdf's give a whole new level of control over what
the output looks like, and how it prints. Nothing is worse than a page looking great on
one browser, but not another. <http://www.reportmill.com>.
AgentSheets is a nice modeling environment, but I believe it is much more powerful
than they are advertising it to be. Basically, every element on the screen is a
programmable agent. One of the examples demonstrated was a small city with roads,
cars, stoplights, and a train. Each element on the screen has a simple program for
movement. The language used is graphical, and easy to understand. Furthermore, once
everything is done, it can be converted to a Java applet and uploaded to a web site. Not
only does it provide a good learning environment for new coders, its power makes this
a useful tool for professionals with the need for model. <http://www.agentsheets.com>.
As every developer knows, sometimes we crash, sometimes we crash a lot. And, as
every developer realizes, crashing does bad things to a Macintosh. There are all kinds
of repair utilities, but I've only seen one that seems to check everything, and that's
TechTool Pro 2. TechTools does things right. They ship on a bootable disk, which should
not even be worth mentioning, but too many disks I would expect to be bootable are not.
TechTools has 3 modes, simple, standard, and expert. The simple mode is simple
enough, just select a volume, and click "Check". It will then run through a
comprehensive test. The Expert mode is very nice, and easy to navigate. There are a
LOT of tests, but the manual is very well written and gives extra information for the
curious. Normally, I feel that if I need a manual, the software is poorly written, but
this is not the case here. The product is easy to use without the manual, but the manual
is an enjoyable read while your computer is being fixed. Fortunately for me, but
unfortunately for the review, none of my disks needed fixing, so I can't vouch for how
well it fixes things, but as TechTools has been around for a while, I am confident that it
is a quality product. The other tests, such as hardware, connection, and system tests,
were simple to run, and the results were quite interesting. There are 31 categories of
tests, making this the most complete solution I've seen so far.
Another new release was AppMaker 11. AppMaker is a framework and tool for rapid
development. It's a mature environment, and constant updating, has made this a good
place to start any new projects. The latest release includes better support for the
Appearance Manager, CodeWarrior, and more flexible panels lists. Bowers
Development previewed a tool for importing PowerPlant objects into MFC. For anyone
who has ever tried this manually, this is a major bonus.
<http://members.aol.com/bowersdev/>.
There are two major installers for the Macintosh, MindVision's VISE, and Aladdin's
InstallerMaker. For years, InstallerMaker has leveraged off Alladin's StuffIt engine to
be the dominant installer for Macintosh applications. Aladdin did not have a new
release for this Macworld, but expects to have a new version out sometime in March or
April. <http://www.aladdinsys.com>.
The new release of MindVision's VISE now features web support, including the ability
to update over the Internet only downloading the parts needed. Another new feature I
like is the updated configuration tools. VISE has added more functionality to their
already existing packages (subprojects inside of a main installation package) making
it more powerful and flexible. <http://www.mindvision.com>.
But Wait, Isn't There More?
These are the products I saw at the show. Macworld is a huge show and there were
certainly some tools I missed, but I hope this gives you an idea of what's new tools are
now (or soon to be) available for the Macintosh developer. See you at the next show!
______________________________
Michael Rutman now works at Network TeleSystems as a Macintosh Developer. In
the past, he has been an independent contractor working on a variety of projects, and
chairman of MacHack. To contact Michael Rutman send mail to
moose@manicmoose.com.