One benefit of Mac OS X’s Unix underpinnings is the capability to run industrial-strength relational databases, and Jonathan Rentzsch examines some database products which may take Mac OS X into the fast lane. Also, Matt Neuburg reviews Copernican Technologies’ Boswell text snippet archiver. In the news, Apple starts installing Mac OS X on new machines and we note Apple’s first retail stores, the return of OnStream tape drives, and updates to Mac OS X Server, FileMaker Pro 5.5 and BBEdit 6.1.2.
Apple Opens First of 25 Retail Stores for 2001
Apple Opens First of 25 Retail Stores for 2001 — Apple Computer has opened its first retail stores at the busy Tysons Corner mall in McLean, Virginia and the Glendale Galleria near Los Angeles. Apple has pledged to open 25 stores during 2001 in places such as Chicago’s North Michigan Avenue, Prince Street in Manhattan’s SoHo district, and the gigantic Mall of America in Minnesota. The Apple stores feature the complete Apple product line, as well as third party devices and peripherals like MP3 players, digital cameras, digital camcorders, PDA devices, and other "digital lifestyle" products. The stores also carry hundreds of software titles for professionals, consumers, and education. The Apple stores are organized into five sections, including a Theater demonstrating Apple technology, a Solutions area showing how to make the most of a Mac and integrate it with other digital products, and a "Genius Bar" staffed by knowledgeable people in the local Mac community, ready and willing to answer any questions customers might have. At a news conference announcing its retail plans, Apple clearly indicated it wants these stores to be visible, hip showcases of concrete advantages of Apple technology in high traffic, affluent malls and retail districts. Ron Johnson, Apple’s vice president for retail, speculated that the Apple stores would be seeing more than 100,000 people a week during the 2001 holiday season. So far, Apple’s venture into retail looks to be doing better than the long-forgotten Apple Cafe: the first two stores served more than 7,700 customers and sold about $600,000 in goods in their first weekend. [GD]
The Flatter the Better
The Flatter the Better — Everyone expects traditional cathode ray tube (CRT) monitors to go the way of the dinosaurs eventually, but that day may come sooner rather than later thanks to Apple’s introduction of a 17-inch version of its stunning flat-panel Studio Display. The 17-inch Studio Display features an optimum resolution of 1280 by 1024 pixels (although it also supports lower resolutions like 1024 by 768 and 640 by 480) and uses the the digital Apple Display Connector currently built into Power Mac G4 systems. The 17-inch LCD debuts at $1,000, while its 15-inch cousin drops in price to $600. At the same time, the spectacular 22-inch Apple Cinema Display becomes somewhat more affordable, dropping to $2,500 just three months after it fell from $4,000 to $3,000. At this point, the only CRT monitor Apple makes comes in an iMac: everything else is an LCD display. [MHA]
BBEdit 6.1.2 Update Available
BBEdit 6.1.2 Update Available — Bare Bones Software has released a free update for its popular text and HTML editor BBEdit. BBEdit 6.1.2 offers improved performance under Mac OS X, compatibility with a wider range of FTP servers, and support for previewing Web documents using OmniWeb, a Cocoa-based Web browser for Mac OS X. As usual, Bare Bones has posted a complete list of fixes and changes. The update is a 3.5 MB download; BBEdit 6.1.2 runs on PowerPC-based systems running System 7.5.5 or higher (Mac OS 8.6 or later recommended). [GD]
OnStream Back in the Flow
OnStream Back in the Flow — Less than two months after the company declared bankruptcy, the assets and intellectual property of OnStream Inc. have been acquired by the newly formed Netherlands-based OnStream Data B.V. to sell and support Advanced Digital Recording (ADR) high-capacity tape drives (see "OnStream Files Chapter 7 Bankruptcy" in TidBITS-573). OnStream offers 30 GB tape drives with SCSI, IDE, USB, or FireWire connections; it also sells 30 GB and 50 GB SCSI versions for server backups. When we first mentioned OnStream in TidBITS-569, we expressed concern that the ADR format (as well as the format used by Ecrix’s VXA-1 drive) wasn’t yet available from multiple suppliers, and therefore could be a risky choice as a backup solution should the parent company not succeed. We’re happy to see OnStream’s technology continue to be supported. [JLC]
In addition to announcing the 17-inch flat-panel display at its World Wide Developers Conference (WWDC) in San Jose, Apple took the wraps off Mac OS X Server 10 and has begun shipping Mac OS X on new Macs.
Mac OS X Now Shipping on New Machines — Apple has announced that as of 21-May-01, it has begun shipping Mac OS X pre-installed on all new Macs, roughly two months ahead of its previously announced schedule. For now, the default operating system on new Macs will remain Mac OS 9.1, but users can use Apple’s Dual Boot feature to start up using Mac OS X by default if they choose. An Apple representative indicated even machines without enough memory to run Mac OS X (like entry-level iMacs and iBooks with 64 MB of RAM) will have Mac OS X pre-installed on the hard drive; folks buying a new Mac on or after 21-May-01 which doesn’t have Mac OS X pre-installed will be eligible for a free copy via Apple’s Mac OS Up-To-Date program. In its press release, Apple claims the response to Mac OS X has been so positive that they advanced their plans to pre-install Mac OS X, but Apple’s move is distinctly timed to coincide with Apple’s World Wide Developers Conference (WWDC). Installing Mac OS X on new Macs increases the potential market for Mac OS X applications, and thus serves as additional incentive for developers to release Mac OS X-savvy versions of their products. [GD]
Mac OS X Server 10 — At WWDC, Apple also announced the release of Mac OS X Server 10.0.0, the official follow-up to Mac OS X Server 1.2 (keeping with the idiosyncratic version numbering scheme for Mac OS X products). Mac OS X Server is Apple’s heavy-duty server software which handles Web, email, and FTP services, but unlike the consumer-oriented desktop version of Mac OS X , adds enterprise-grade file sharing and print serving to the mix, along with Macintosh Manager and NetBoot for education, lab, and some workgroup situations. Mac OS X Server 10 also ships with Apple’s new WebObjects 5, a new Java-based version of its powerful application server software for building custom Internet applications and solutions like sophisticated Web sites and custom front-ends for databases. Mac OS X Server 10 is based on the latest version of Apple’s Darwin open source Unix kernel and sports the same Aqua user interface as the desktop version of Mac OS X (the server’s interface leans towards platinum highlights instead of blue). Mac OS X Server is available in a $500 ten-client edition for small workgroups, or in an unlimited-client edition for $1,000. (A $500 upgrade to the unlimited version is also available.) Either edition handles unlimited Web serving through the same industry-standard Apache software built into Mac OS X.
Apple has also introduced two new configurations of its Macintosh Server G4. Both include 256 MB of RAM and a 60 GB hard drive, built-in 10/100/gigabit Ethernet, and the Mac OS X Server Unlimited-Client Edition. The $3,000 model sports a single 533 MHz PowerPC G4 processor, while the $4,000 server adds a second 533 MHz G4 and a four-port 10/100 Ethernet card for multiple network support. [MHA]
By the end of the third quarter of the year, FileMaker also plans to ship its $1,000 FileMaker Pro Server 5.5 with support for Mac OS X and Red Hat Linux, and the $1,000 FileMaker Pro Unlimited with unrestricted Web publishing features and a new multi-threaded Web Companion plug-in (which ought to speed general Web serving, but won’t help with FileMaker’s fundamental Web publishing bottlenecks). FileMaker Pro Developer 5.5 – which enables FileMaker developers to create stand-alone solutions and provides documentation, SDKs, and other materials – should ship before the end of 2001. [GD]
Boswell: A Text Motel
Remember the Roach Motel? "Roaches check in, but they don’t check out." Now Boswell, from Copernican Technologies, Inc., wants to do the same for your text documents. It’s a text archiver; you put text snippets into it, and afterwards you access these snippets through lists that combine them in various ways, but you can never delete them, accidentally or otherwise.
Why is this program called "Boswell?" Copernican says it’s because it’s easier to spell than "Amanuensis" (one who takes dictation or copies manuscripts). But James Boswell, who wrote the celebrated Life of Samuel Johnson, perhaps one of the greatest biographies of all time, was no one’s amanuensis; he was a traveller, man-about-town, essayist, lawyer, laird, and ardent lover of intellectual and artistic achievement in that most intellectual and artistic of times and places, 18th century England. Through his frank and vivid journal, he is also one of the few historical figures one feels one understands intimately. Both the biography and the journal testify to the virtues of keeping good notes; Boswell the program wants to help you do the same.
Knowledge of the Second Kind — "Knowledge is of two kinds: we know a subject ourselves, or we know where we can find information upon it." – Samuel Johnson
Boswell creates a storage file on your hard disk, in 1 MB increments; into this file you will be placing snippets of text. A snippet can begin life within Boswell itself; you can type or paste text into the new snippet, and this text can be styled. Alternatively, you can import a text file, individually or by the folder.
Newly created or newly imported snippets reside in a kind of staging area. Here you can modify three fields: the body; the title; and a "comments" field. What you do at this point can be important, because later you’ll be using keywords to search for snippets. The comments field is a particularly good place to enter these.
From the staging area, a snippet is placed into storage. At that point you are no longer able to edit it (although you can copy it, making a new editable snippet in the staging area). You also can’t delete snippets from storage. There is no built-in way to browse the storage as a whole. Rather, you proceed to create lists of snippets.
These lists are just ways of viewing your data. A list may consist of any subset of your snippets, which can appear in any number of lists. Deleting a snippet from a list, or deleting an entire list, has no effect upon any snippets. But although they are just views, lists are not mere ephemera; they are the backbone of your work with Boswell. They persist until you explicitly delete them, and you are expected to give them useful names. At any time, you can see a list of all your lists, and open any of them. Clearly, the important question is: how does a snippet get into a list?
There are several ways. If you can see a snippet, a dialog lets you manage which lists should include it, or you can add it to one or more lists using drag & drop. A dialog lets you populate a list using search criteria. Also, you can associate certain keywords with certain lists and then tell Boswell to add a snippet automatically to any list that has any keywords contained in that snippet.
That’s all there is to it. You make lists, and using them, you view your snippets. You can also copy and paste (or drag & drop) text from a snippet into another program; and you can export an entire list, meaning all the fields of all its snippets, as a single text file.
Paved with Good Intentions — I disagree with the developers’ assumptions and design decisions with regard to several aspects of Boswell:
Boswell stores only text. However, most of the documents in my life are not text; they’re PDFs, Internet Explorer Web archives, or Word documents. Why can’t Boswell store aliases, or entire documents? It might not be able to search them, but at least it could archive them and organize them through keywords and lists.
You can’t delete a stored snippet. (In fact, you can’t even delete an imported snippet from the staging area; it goes into storage eventually, willy nilly.) The developers seem to have a fixed idea that this is somehow one of Boswell’s major attractions; their stubborn resistance to all efforts by the public to disabuse them of it has been most impressive. The trouble isn’t just that your storage file keeps growing, but that it takes more work to avoid irrelevant material in a search. Other concerns that surfaced in TidBITS Talk include the worry of what happens if you accidentally feed Boswell a very large file, or what happens if some of the information in your Boswell file turns out to be highly sensitive.
Keywords aren’t really keywords. They aren’t a feature attached to a snippet; they are just some of a snippet’s text. For example, you can’t distinguish "Adam" as a keyword from "Adam" as content, and a snippet containing "Adamant" would be seen as containing the keyword "Adam." Most important, this means that, since you can’t edit a stored snippet, you can’t set keywords for a stored snippet. Yet, while the snippet is still in the staging area, and editable, how can you be prescient enough to know what keywords you’ll eventually want? Keyword decisions emerge from experience of usage and evolving needs, and you can get that experience only after storing the snippet, when it can’t be modified.
You can’t add fields. This makes effective searching difficult. Without fields, for example, you can’t distinguish readily between messages that mention Adam and messages from Adam.
Here’s a miscellany of further flaws. When importing a file, styling is lost. A snippet must be less then 32K characters; there’s nothing wrong with that, but when you import a folder of files, long files are truncated, not split, and you are not told which ones. There is no way to learn all the keywords associated with a given list – a serious oversight. Automatic keyword-based addition of a snippet to lists is too automatic: you can’t "lock" a list, and there’s no intermediate confirmation dialog, so Boswell can easily clutter your existing lists. Search criteria aren’t saved, so there’s no telling how a list was derived, and no way to reconstruct it if it gets messed up.
Finally, Boswell’s interface is fairly non-standard. That’s no crime; personally, I love an original interface, and Boswell’s is quite pleasant, with some interesting use of drag & drop. But Boswell ignores even some of the most basic Mac conventions, such as the notion that you select things, then act upon them all; so, for example, you can’t select just certain snippets and give them a particular tag or add a certain keyword to their comments. That’s unnecessarily frustrating and inconvenient. The manual intimates that Boswell’s developers are well aware that this is an unusual design decision, and implies that they gave it some thought. Well then, as with so much else about this program, they thought a lot, but they thought wrong.
The Butt End — To James Boswell we owe our knowledge of Oliver Goldsmith’s assessment of Samuel Johnson: you couldn’t argue with him, because "when his pistol misses fire, he knocks you down with the butt end of it." In the case of Boswell the program, the "butt end" that knocks you down is the manual. Much have I travelled in the realms of jargon, but I never before saw so much misappropriation of terminology crowded into one place: "journal", "archive", "notebook", "entry", "library", "fluid", "frozen", "browser", "hub", "zip", "zap", "zip-zap", and more. It’s all quite mind-numbing, rather unbelievable, and thoroughly unnecessary, since Boswell is a very simple program.
TidBITS readers know that I’m hugely sympathetic to, and practically obsessed with, information storage and retrieval utilities. And as a way of organizing data, Boswell’s persistent lists are a brilliant and exciting device. Yet I can’t quite envision what I’d use Boswell for. I wouldn’t import my Eudora mail messages into it because Eudora itself is better at searching archived messages. I wouldn’t use it as a contact or bibliography manager because it lacks fields. I wouldn’t use it as a writing tool because snippets are unordered. I can imagine using Boswell to get a grip on miscellaneous notes, but I feel put off by the inability to delete – I wish I could use it to organize without also being forced to archive. On the whole, I still prefer a true database such as Helix, an outliner such as MORE, a field-based outliner such as IN Control or Web Arranger, a dedicated snippet organizer such as Idea Keeper, or even just good old HyperCard (doesn’t anyone remember Mark Zimmerman’s FreeText?). Still, if what it does is what you want done, Boswell has the inviting virtues of ease and simplicity; you’ll have to decide for yourself whether the price tag cancels the invitation.
Boswell costs $130, and requires a PowerPC-based Macintosh running System 7.1.1 or higher. A demo is available as a 1.6 MB download.
Relational Databases and Mac OS X, Part 2
As Mac users confront the geeky realities associated with Unix as the core of Mac OS X, they may not be aware of their newly acquired capability to run powerful relational database software. In part one of this article, I discussed the basics of how relational databases work (see TidBITS-580). This week, I want to cover some commercial and open-source databases currently available for Mac OS X.
As with last week’s release of FileMaker 5.5 with support for Mac OS X, most of the databases that run under the Classic Mac OS will be ported to Mac OS X. However, we’re also seeing an influx of newly available database programs. All of these databases have been around for years on different platforms; it’s only with Mac OS X that Mac users can finally run them.
It’s worth noting that, for the first time, the Mac OS finally pulls even with, if not ahead of, Windows in terms of database power. Although the Macintosh world still lacks a friendly low-end SQL database like Microsoft Access, the quantity and quality of databases available for Mac OS X is incomparable, especially if Oracle climbs aboard.
Also keep in mind that none of these databases are meant to be used directly for day-to-day data entry and queries like FileMaker or 4D. MySQL and PostgreSQL are command-line driven databases, while FrontBase and OpenBase provide only rudimentary data input and retrieval interfaces. Instead, these back-end databases work behind the scenes and are meant to be coupled with some sort of front-end interface, be it a Web page or a desktop application.
MySQL — MySQL is the most popular open source database, and unlike many databases, MySQL will handle large bodies of text, making it suitable for Web publishing and messaging systems such as those found on Web forums. On the down side, MySQL doesn’t embrace ACID (Atomicity, Consistency, Isolation, and Durability, as we learned in the first part of this article). Transaction support was added only recently, and it is rather bolted-on (MySQL transactions lock entire tables). ACID needs to be built in from the ground up. The lack of transaction support used to give MySQL a speed advantage, but PostgreSQL has been proven comparable to MySQL in many tasks.
Finally, although MySQL supports online backups, it locks the database from updates (though not read-only accesses) while performing the copy. Online backups enable you to back up your database while without having to shut it down entirely.
Bottom Line: MySQL is free and well suited for content-oriented systems, but for traditional business uses I’d go with PostgreSQL or FrontBase.
PostgreSQL — PostgreSQL is probably the best open source database. It supports transactions, which makes it suitable for serious business use. It offers online backups, and unlike MySQL, will continue to process database updates during backups. PostgreSQL’s previous weakness of an 8K row-size limitation has mercifully gone away in version 7.1.
PostgreSQL still suffers from the need to "VACUUM" the database routinely. VACUUM is a PostgreSQL-only, non-standard SQL command which generally cleans up a database. The VACUUM command can be time consuming (15 minutes is not uncommon), and locks out any use of the database while running. You also don’t have the option of simply letting the database get dirty – PostgreSQL will start failing mysteriously if you don’t VACUUM regularly. Different situations call for different VACUUM frequencies, but some folks perform the operation once a week, while others do it every hour.
Bottom Line: PostgreSQL is free and is the best open source database for running businesses on Mac OS X.
FrontBase — I really like FrontBase. Like PostgreSQL, it supports SQL92 (the latest version, circa 1992, of the international SQL standard). Each database resides in one file, making database file identification and transport a breeze. It supports online backups, clustering (the capability to have two or more machines share a database and hand off connections to one another, increasing reliability and speed), and offers raw disk support (bypassing file system overhead).
It strongly embraces ACID, requiring you commit almost every change to the database. It sports a graphical administration tool on Mac OS X and X Server, while the engine itself runs on many other operating systems (Windows NT/2000, Linux, LinuxPPC, etc.). It offers a Web-based administration tool as well. On Mac OS X, it uses the standard system Installer, which is graphical and friendly.
Unlike MySQL and PostgreSQL, FrontBase is not open source. However, there are two free FrontBase licenses. The first, the developer license, enables all of FrontBase’s features for six months (renewable), but doesn’t give you deployment rights, so you can’t let anyone else use your database. The second free license allows deployment but doesn’t allow hot backups, clustering, or external connections to the database (defined as remote connections over a network; CGI or WebObjects connections from the same machine are fine) . There’s a $999 license that allows external connections and hot backups, and a $3,499 license adds clustering.
FrontBase makes it easy to import your data, including instructions and tools to convert existing databases from FileMaker Pro, MySQL, OpenBase and Sybase. I can personally vouch that the FileMaker Pro tool works as advertised. With the converter, FrontBase plus WebObjects makes an attractive path for FileMaker Pro developers who need more power.
There are two drawbacks to FrontBase. The first is that you must enter a license number after installing the software. This isn’t bad in itself, however the license is tied to your machine’s IP address and won’t work with DHCP (which may provide your Mac with a different IP address on every restart). That can make it tricky to run FrontBase on a travelling PowerBook or a Mac on a DSL or cable modem connection that requires you to use DHCP.
A FrontBase representative informed me this is because Mac OS X Server doesn’t allow software to retrieve the computer’s Ethernet MAC address without running under the root account. Since FrontBase didn’t want to force their users to run FrontBase under root (a bad security idea), they went with what they could access: the IP address. The desktop version of Mac OS X changes that, and FrontBase will tie the license to the MAC address in the future.
FrontBase’s second drawback is that the company doesn’t offer on-site support. Although FrontBase requires little administration and their email support is quick and competent, this could be a deal breaker for some companies.
Bottom Line: FrontBase is the least expensive commercial high-end database for Mac OS X, but you can’t get on-site support.
OpenBase — OpenBase wins the user interface contest hands down. Its interface is elegant and beautiful, and it contains a reasonable modeling tool which graphically depicts how your database is structured. For example, it represents tables as rectangles and draws lines between them to illustrate their relationships.
OpenBase’s engine seems fast, modern, and powerful. Like FrontBase, OpenBase offers a free developer license and supports online backups. A $295 migration tool called ClickConvert helps move data from existing FileMaker Pro databases.
OpenBase’s beauty comes from Mac OS X’s Cocoa environment, which limits OpenBase’s platform support. It supports Mac OS X and X Server out of the box; however to run OpenBase under Solaris or Windows 2000, you first must purchase and install WebObjects (which brings the Cocoa frameworks along with it). Granted, WebObjects has fallen greatly in price recently, however it still adds $700 to OpenBase’s $2,000 price. OpenBase’s graphical interface is being rewritten in Java, so its future platform support should increase. Alas, technical support is only offered via email.
OpenBase is pricey, but there’s new hope for those with tight budgets. While we were preparing this article for publication, OpenBase introduced a new $499 license specifically for use with PHP, a popular tool for linking databases with Web sites. This lower price comes with two restrictions: no external connections (like FrontBase’s free deployment license) and no support for WebObjects (unlike FrontBase). However, it does allow online backups, a feature which starts at $999 for FrontBase.
Bottom Line: Ironically, the database with the highest starting price is the best for high-end relational database newbies. If you’re a highly paid consultant or need to get a database up quickly, OpenBase’s easy user interface may justify its high price.
Oracle? There have been consistent rumors that Oracle will be ported to Mac OS X. Technically, I don’t see any reason they couldn’t do it. Oracle already runs on a couple flavors of Unix, and Larry Ellison sits on Apple’s board of directors.
Many people feel Oracle on Mac OS X will legitimize the platform, and there’s logic to that argument. Oracle is known for its power, flexibility and support. However, it is also extremely expensive and complicated, to the point where many people devote their careers to nothing but administrating Oracle databases.
Making the Choice — For the budget minded, FrontBase’s free development and deployment licenses are tough to beat. If you can’t spare a dime, but require online backups, then PostgreSQL is your best choice (despite its less-friendly user interface). If elegance, ease of use or speed is important to you, I’d definitely recommend checking out OpenBase. Assuming it ends up being ported to Mac OS X, Oracle would make sense only if you’re developing a truly large, complex, or fast database with other peoples’ money.
Now that we’ve looked at what makes a relational database and some of the primary contenders, be sure to look for my upcoming article on a program that brings relational databases back into the forefront of computing: Apple’s powerful WebObjects.
[Jonathan "Wolf" Rentzsch is the embodiment of Red Shed Software, and runs a monthly Mac programmer get-together in Northwest Illinois.]