Some software is just hard to pin down. UserLand Software’s Frontier 6 defies easy classification: is it a scripting architecture, a Web server, or a hybrid database application? This week, Matt Neuburg explains what Frontier is and why version 6 is worth examining. Also this week, Jeff Hecht bemoans the sad state of fax software, and we note releases of Suitcase 8, Acrobat 4.0, StuffIt Expander and DropStuff updates, and a stock tool for Excel.
Extensis Unpacks New Suitcase 8 — After resurrecting Suitcase from Symantec’s Macintosh product graveyard (see "Extensis Rescuing Suitcase" in TidBITS-466), Extensis announced today that a new version of the venerable font control utility is now available via Extensis’s Web site. Suitcase 8 features compatibility with System 7.5.5 and higher, plus improved font selection and set management. Additional baggage in the Suitcase family include Suitcase FontAgent, which offers font file diagnosis and troubleshooting features, and Suitcase 8 XT, a QuarkXPress XTension for automatically activating fonts when opening XPress documents. Suitcase 8 costs $90 for new owners in the U.S. ($100 for the International English version), $40 for those upgrading from previous Suitcase versions, or $50 for users of other font management utilities. You can download Suitcase 8 as a free 30-day demo (3.1 MB); a serial number can be purchased at the Extensis Online Store, though Suitcase was not listed at press time. Packaged versions will begin shipping 21-Apr-99. [JLC]
Acrobat 4.0 Released with Limited Mac Support — Adobe today announced the release of Acrobat 4.0, which boasts improved collaboration and Web features using Portable Document Format (PDF) files. The new version, in addition to being able to convert any document into a PDF, also creates forms whose data can be returned via the Web. Shared files can be marked up with text-annotation tools and handwritten strokes, as well as sticky notes. As we mentioned in "Adobe Announces InDesign, Acrobat 4.0" in TidBITS-470, Acrobat 4.0 for the Macintosh doesn’t support current Windows-only features such as secure digital signatures, integration with Microsoft Office, and converting Web sites to PDF; these are expected to be available later this year. One welcome addition not mentioned in Adobe’s press materials is that Acrobat finally supports many of Adobe’s long-standing keyboard shortcuts, such as Command-spacebar to activate the Zoom tool. It’s a small touch, but worthwhile for those of us who try to cut down on trips to the mouse. Acrobat 4.0 for Windows or Macintosh costs $249 for the full product, or $99 if you’re upgrading from a previous version. Acrobat Reader 4.0, a 3.9 MB download, is available for free. [JLC]
StuffIt Expander & DropStuff 5.1.2 — Aladdin Systems has released version 5.1.2 of both its freeware StuffIt Expander and shareware DropStuff compression utilities. StuffIt Expander 5.1.2 fixes problems decoding Zip files encoded in MacBinary format and enables users to launch StuffIt Expander by double-clicking a StuffIt archive. DropStuff 5.1.2 fixes a bug in the StuffIt Engine and PowerPC-only StuffIt Engine PowerPlug that would cause StuffIt Expander to report errors processing MacBinary-encoded StuffIt 3.x or 4.x archives. StuffIt Expander is free and a 700K download; DropStuff is $30 shareware and a 1.2 MB download. [GD]
Free Stock Tool for Excel Users — Jonathan Jackel <[email protected]> wrote after reading our article on MacTicker in TidBITS-471 to let us know that he offers a free stock quote tool for Excel called Reval at his "Backtesting Page" Web site. (The site offers several software tools and online references of use to investors.) Reval works with Excel 98 for Macintosh or Excel 97 for Windows. Like the $25 MacTicker, Reval queries free online stock quote services. For users who own Excel 98 and tend to have it open anyway, this may be a good alternative to MacTicker. Unlike the online stock Web pages themselves, Reval doesn’t give other companies information about what stocks (and how much of them) you own. [MHA]
Using a modem to send and receive faxes from your computer sounds like a great idea. You won’t waste paper printing your documents in order to feed them into a fax machine. And since many faxes are as ephemeral as email, receiving them via fax modem and viewing them on screen is less resource intensive than reading faxes on paper, then recycling them. You can even send and receive faxes while travelling – few people want to lug a fax machine along on trips.
Unfortunately, the benefits of using a fax modem fall flat when you encounter the software that’s supposed to do the job. The prevalent mediocrity (or worse) of current fax software is probably a function of the marketplace: modem manufacturers feel the need to bundle software that offers fax functions, but since modems have tiny profit margins, they don’t want to spend much. The result is that the "free" bundled software is often outdated or crippled (or both) and generally worth exactly what you’ve paid for it. STF Inc. had a bright idea in offering FAXstf Pro 5 as a full-functioned alternative to the often-abysmal bundled programs, but the reality leaves much to be desired for people like me who send and receive between 30 and 70 faxed pages per week.
Ideas vs. Implementation — FAXstf Pro offers a full range of features for diverse faxing needs. Preferences allow you to select an outgoing dial prefix, such as a 9 to reach an outgoing line, or a 1010 dial-around for using a specific carrier for long distance calls. FAXstf Pro can dial a credit card number when you need to reach a remote machine on the road. The program can store multiple preference sets, valuable if you travel or work for multiple clients. You can set up many different fax cover sheets, helpful if you work on several projects or just want to express various moods.
Inevitably, however, some of FAXstf’s many features are useless to any individual user, and others are poorly documented. I had to call STF to figure out how to use a 1010 dial-around code, and the box provided isn’t large enough to show all the digits. Likewise, the credit card procedure is difficult to master, although telephone carriers share the blame for cumbersome and inconsistent procedures.
Some good ideas are not fully implemented. "Smart dialing" knows enough to drop the area code when you tell it you’re calling from within the same area code. However, it doesn’t know to turn off a 1010 long-distance dial-around setting for local calls, nor does it have an option to deal with the many metropolitan areas with new overlay area codes that require 10-digit dialling for local numbers.
For international faxing, you identify the country you’re calling from in the preferences, and pick the destination country for each fax address. (The United States appears to be the default in both cases.) By providing a scroll-down list of countries, FAXstf saves you the annoyance of looking up country codes for unfamiliar nations. Unfortunately, there’s no other way to enter country codes, and scrolling to the bottom of a long list every time you enter a phone number in the United Kingdom is a nuisance. If you fax overseas, be sure to get the version 5.0.3 updater from STF’s Web site. The initial release of the software, version 5.0, did not save country codes properly, so it defaulted to the United States (or in one case I caught, Albania), forcing you to re-specify the country each time you called.
Plays Poorly with Others — Other bugs in FAXstf Pro 5.0 also betray a rush to market, and left the software with a brittle feel. I had problems setting up the initial version, leading to a series of crashes, and had to reinstall it twice. Version 5.0.2 could not print incoming faxes of 5 pages or more, a bug fixed in version 5.0.3.
Most troubling are conflicts between FAXstf Pro and other software. Some applications are decidedly unhappy with the default placement of a Fax menu in the menu bar. Fax menus multiply in WordPerfect 3.5, but most software seems to work when the Fax menu is placed under the Apple menu. One exception is Nisus Writer 5, which dims the "Fax Front Document" command, apparently with good reason: trying to fax Nisus documents using the recommended combination of Command and Option keys froze my Power Mac.
That’s not the only deadly interaction between FAXstf Pro and other software. Install FAXstf Pro 5, and Highware’s Personal Backup 1.1.2 to 1.2.3 crashes at startup, a problem confirmed by ASD Software, American distributor of Personal Backup. (Fortunately, another commercial backup program, Retrospect Express from Dantz Development, does not conflict with FAXstf Pro.) The nastiest problem occurred when faxing from Presto PageManager 2.31.0, which came with my UMAX Astra 610S scanner. The fax went through, and the Mac seemed to run normally afterwards, but it somehow damaged the resource fork of the Mac OS 8.1 System file, so the Mac wouldn’t boot until I replaced the System file. To be fair, that old version of PageManager could be responsible. Nonetheless, STF was at best slow to acknowledge bug reports and still has not said anything about plans to fix the conflicts.
Despite these problems, conflicts between fax software and other programs are less prevalent than in the past, when almost any problem related to modem use could be traced directly to fax software. In the early days of the Internet, fax software was responsible for a vast number of the connection problems experienced by Macintosh users, in large part because fax software likes to take over the modem port while waiting patiently for a fax to arrive. Never mind that another program might want to use the modem port in the meantime. FAXstf Pro avoids that problem except with some older terminal emulators. It also seems better behaved under Mac OS 8.5.1 than under Mac OS 8.1, but that’s a subjective judgement.
Phone Home Alone — FAXstf Pro performs adequately once it’s up and running. However, getting to that stage and figuring out the conflicts wasted far too much time, and it was disturbing to have to choose between scheduled backups and outgoing fax transmission. I would have trashed FAXstf long ago if I had any reasonable alternative – and there’s the rub. There are no other options for general purpose faxing with a wide range of modems. The outdated version of Smith Micro’s MacComCenter that came with my modem is useless; it doesn’t even report if faxes go through. I didn’t try updating to the new version because it seemed more oriented toward voice mail than faxing. Global Village’s new version of its GlobalFax software works only with iMacs or G3s that have internal modems, leaving out a wide range of Mac OS computers (including mine). ValueFax, the one operative shareware program I found, was little improvement over the outdated version of MacComCenter. All the other fax programs I found run only on the modems with which they’re bundled.
Talking with other Mac users, I find I’m not alone in my discontent with the state of fax software: the best is pretty bad and the worst is useless. FAXstf Pro is a good idea, but needs much more work. Unfortunately, STF seems more interested in offering features like toll savers and fax broadcasting than in tracking down bugs and conflicts with other applications. Some solid competition would help, but fax software may suffer from a chicken-and-egg problem with attracting the necessary interest from developers. Since fax software has ranged over the years from unusable to mediocre, anyone who’s serious about sending and receiving faxes needs a standalone fax machine. A fax machine is simpler and easier to use for sending documents already printed as loose sheets or that require signatures, and is always ready to receive incoming faxes. Coupling a scanner with a fax modem can avoid the need to photocopy bound documents for faxing – but my cumbersome scanner software limits faxing to one page at a time and requires awkward resetting of print options. Perhaps the users who benefit most from fax modem software are the junk faxers who send reams of identical outgoing faxes. Without pressure from the serious users, fax software developers seem not to have had incentive to create a product that could actually compete with a fax machine.
Internet fax services such as eFax and CallWave offer free phone numbers for fax receiving, then deliver faxes via email as TIFF images (which Mac users can view in a program like Thorsten Lemke’s shareware GraphicConverter, with varying degrees of success). However, these services don’t necessarily solve problems for typical fax modem users with dial-up Internet access, since TIFF files are big and slow to download, and you don’t know there’s a fax waiting until you check your email. Yet, these services may help discourage programmers from developing improved fax modem software.
In the end, I fear that I’m stuck. I have little hope either that STF will fix the lingering problems in FAXstf or that any other company will invest the time and effort to produce a truly elegant fax program for use with fax modems.
[Jeff Hecht is the author of Understanding Fiber Optics, 3rd Edition, published by Prentice Hall in November 1998. His book on the history of fiber optics, City of Light: The Story of Fiber Optics, is being published this month by Oxford University Press.]
Frontier 6.0 has recently been released by UserLand Software, along with a series of press releases consisting of incomprehensible jargon cemented with gobbledygook. What on earth does it mean that Frontier is a "content management system," or that this upgrade adds "membership, preferences, per-user storage, discussion groups, searching, calendars, news sites, subscriptions and XML-based distributed computing"?
Possibly the poor overworked public-relations grunts at UserLand have forgotten what plain language is. Let me try to lend a hand. This isn’t a review; it’s just an attempt to explain the news. Frontier 6 is here: so what? What is it? To understand, it helps to know where Frontier has been; so let’s start with a brief and totally unofficial history. (Big conflict-of-interest disclaimer: I wrote a book about Frontier.)
Frontier consists of three elements: a database, a lot of system-level verbs, and a scripting language. The database is a nest of table-like structures where you store and edit information of many different types, such as text, numbers, and even outlines. (If you don’t know what an outline is, you haven’t been reading TidBITS long enough; the folks who wrote Frontier also wrote MORE.)
The system-level verbs let you do things like create a file, learn the time, and access the clipboard. The scripting language lets you run little programs, called scripts. Scripts live in the database; that’s where you create and edit them. Furthermore, scripts can access and control the database. So you should imagine a Frontier script calling other scripts in the database, storing and retrieving information in the database, creating and deleting data structures in the database, fetching and writing information from files on disk, and so forth. For example, Frontier makes it easy to write a script that creates a table in the database listing all the different words in a text document, along with how many times each one occurs.
One major purpose of Frontier, from the start, was to let you send messages to other applications, to tie their functionality together with your scripts. Unfortunately for UserLand, Apple Computer kept upstaging their act. First, Apple came out with System 7 and Apple events, so Frontier supported Apple events as its main way to drive or be driven by other applications. Then, Apple invented the Open Scripting Architecture and its own scripting language AppleScript, so Frontier supported those too. Apple insisted that scriptable applications should support the object model; Frontier implemented this brilliantly.
But even though Frontier, with its incredibly cool and lightning-fast scripting language, plus the database, along with threading, debugging, and many other wonderful features, was arguably a vastly better scripting environment than AppleScript and Apple’s clumsy Script Editor, it had a serious drawback: it was expensive, whereas AppleScript was essentially free. So in mid-1995, UserLand did an astonishing thing: they released Frontier for free, too. They also began to re-target Frontier, aiming it at the Web, in three ways:
Automated Web site creation. A lot of what appears in Web pages is boilerplate, such as a set of links that appears at the top of every page; and a lot of it is calculable, such as a Next link that appears on every page, but is different for each page. So, the reasoning goes like this. A Web page is just a file; Frontier can make files. HTML is just text; Frontier’s scripting language can assemble text. Frontier has a database to hold the pieces of a Web site; then the scripting language can access those pieces, assemble them, make all the necessary calculations, and spit them out as files. Presto, a Web site of 100 pages is as easy to maintain as a single page.
CGI. A CGI is an application that can accept a message from a Web server, and, in response, can calculate a Web page and hand it back to the Web server. Because Frontier is multi-threaded (and because it can drive other applications with Apple events) it’s a perfect CGI application: it can process Web forms, store and retrieve data through scriptable database and spreadsheet programs, drive a scriptable image program to make a GIF chart in real time, format it all into HTML and send it back through the Web server to your browser, with remarkable speed.
TCP/IP communication. Many Internet protocols, like HTTP, are largely text too. So, let’s say you’ve just created a Web page with Frontier, and now you want to upload it to your ISP, where it will be served onto the Web. You could use Frontier to drive a scriptable FTP client to upload the page; but why shouldn’t Frontier just "talk" to your ISP’s FTP server directly, and upload the page itself? Thanks to a helper program that interfaced with the Internet, Frontier could do just that. It could also talk to a mail server to send or receive email, communicate with a remote copy of Frontier across the Internet, and even act as a simple Web server!
Bear in mind that, to a great extent, the mechanisms performing these feats were just scripts in the database. Thus, Frontier was still the good old database and scripting environment; but the database now included a huge number of scripts aimed at automating Web-oriented tasks. Evolution was then mostly just a process of refining and extending these scripts. This phase culminated in 1997, with Frontier version 4.2.3, the best (I think) of the free versions, and the one my book was about.
The year 1998, with its series of version 5 releases, was directed at making Frontier once again a money-making proposition. This meant that UserLand must resume charging for Frontier, which they now do. To increase its saleability, Frontier was made to run on Windows 95/98 and NT as well as the Mac. And it was raised to first-class TCP/IP citizenship, able to act as client or server with no helper application.
Over the course of the year, there took place a deliberate Grand Unification of the three Web prongs into a single whole, which makes perfect sense if you ask yourself some skeptical questions. Frontier can generate Web pages on demand: so why should it matter whether this demand comes from a user controlling the database by hand, or from a Web server? And why should it matter whether Frontier is sitting behind a Web server as a CGI application, or acting as a server itself? And why should it matter whether material for Web pages enters the database because a user types it in directly, or because Frontier receives it as an email, or as the content of a form submitted from a browser?
It is this Grand Unification which chiefly characterizes Frontier 6. Frontier is now a flexible, programmable milieu for constructing Web-based applications – what the press release calls a "content management system," where "content" means, roughly, "stuff that helps constitute a Web page." Frontier can receive this content in any of a variety of ways, such as email, Web forms, FTP uploads, cut-and-paste, interrogating other applications, and so forth; it can respond by processing this text as desired, perhaps feeding it into a Web form so someone can edit it remotely through a browser; it can ultimately produce, maintain, and even serve the resulting Web pages.
Of course Frontier 6 is still also Frontier 1-through-5, so it includes many years’ accumulation of scripts for making Web sites, constructing CGIs, communicating with other applications and across a network, and so forth. Additionally, this new version includes many new scripts implementing various aspects of a Web application; these are examples and starting-points, but they are also ready for use immediately.
For example, you may wish to let various users access different sets of pages and data through passwords and cookies; a system is provided for doing this (referred to as "membership" in the press release). Or, you might want to run a Web-based bulletin board of messages threaded by topic, possibly so people can edit collaboratively (the "discussion groups" feature). Or, you might want your site to be searchable; Frontier 6 includes a customizable search engine ("searching") which indexes Web pages. Or, you might want a daily page of new updates, messages, and links, automatically archived and search-indexed each night (the "news sites" feature). Or, let’s say you and I both have copies of part of the database, whose contents must be synchronized; you just choose the Update menu item, and presto, whatever has changed in my copy is downloaded across the network and incorporated into your copy ("subscriptions"). And, intriguingly, the sending of commands and data across the network is done with XML, which is just machine-coded, machine-parsable text; so an application from a completely different conceptual world, such as Perl or Java, could exchange information with Frontier as easily as another copy of Frontier can ("XML-based distributed computing").
So, what exactly does Frontier 6 do? It’s easier to say what it is than what it does: it’s a completely programmable Internet client/server application that makes Web pages and stores information, along with features for sharing and controlling that information.
As for what it does, properly speaking Frontier does nothing per se. Like any programming language or your computer itself, both do whatever you program them to do. Frontier is open for you to combine and customize and create scripts that give Frontier whatever Web-based application functionality suits your needs. For more information, see UserLand’s Web site.