Skip to Content
Skip to Table of Contents

← Previous Article Next Article →

ATPM 13.11
November 2007


How To



Download ATPM 13.11

Choose a format:


by Wes Meltzer,

A Leopard Can Always Change Its Spots

I can still remember the first time I could feel technology changing my life.

It was sometime in the fall of 2001, as I remember it, and I’d just installed and configured ReiserFS on my SuSE Linux desktop a few weeks before. It was winter, and I lived up North, and in the middle of a storm, the power went out. And my computer turned off.

When the power came back, I started up my computer and found that the paper I’d been writing was mostly not blasted away by the crash, and I didn’t have to fsck (run the file system checker on) my hard drive. The computer booted right back up like it always did, and ta-da! Done. No corruption, and the only lost data was what I hadn’t hit ‘Save’ on. At the time, it looked like magic—journaling filesystem saves the day! I danced around my computer like it had just cured cancer.

I’ve learned a lot about technology in the six years hence, but I get that same sense of giddy gleefulness thinking about Sun Microsystems’ ZFS, which is apparently coming as an unsupported, secondary option (like UFS, the Unix File System) to OS X.

ZFS, for those of us who aren’t filesystem geeks, is a system for partitioning and formatting hard drive data that was designed to be lightweight and powerful. It supports some really cool but unexpected functionality, like redefining the meaning of “partition,” and by making hard drive space easily reconfigurable and making it span multiple hard drives, RAID-like. ZFS also allows you to do things like live snapshot backups of individual files, so that you can restore a file you’ve deleted, for instance—this is filesystem-level Time Machine, and I wouldn’t be surprised if someday OS X uses ZFS’ functionality to power Time Machine. I can’t use the word “cool” enough, honestly, to describe this system.

So what interests me about this for the purposes of a Bloggable? Why should you care, dear reader? Three guesses, and the first two don’t count.

…You got it!

Reader Interest Alert: If you’ve come here hoping to read about what everyone’s saying about Leopard, um, you may want to skip ahead to the Leopard part of this article. Several of my good, very geek-minded friends glazed over when I tried talking to them about this, so it may be outside your area of interest. For those of you who are interested in Macintosh filesystems, please, read on!

AppleInsider posted, early in the month of October, that they believed ZFS would play a role in the future of OS X, both in Leopard and beyond. “It’s further believed,” AI’s Prince McLean wrote, “that ZFS is a candidate to eventually succeed HFS+ as the default file system for Mac OS X.” This wasn’t the first time the topic had come up—in June, Sun CEO Jonathan Schwartz had a brief lapse of NDA and blabbed about it to shareholders and members of the press—but it contained the kind of explicit details that usually mean you’re either getting the truth or being hoodwinked.

Apparently that went over as well as a lead balloon in some quarters. MWJ, for instance, devoted a cheeky, line-by-line rebuttal of the AI article, ridiculing pretty much every conceivable advantage of ZFS over HFS+, Mac OS X’s default file system for nearly a decade (and an extension of the earlier Hierarchical File System, which is only a year younger than I am and only two years younger than the Macintosh itself). One of their biggest objections is that ZFS would misuse CPU time and hard drive space for all those nifty data integrity (inter alia) features. My impression is that the guys at MacJournals think HFS+ is a winner, and that the technological limitations of ZFS relative to current hardware are unresolvable.

I’m glad I’m not the only one who disagrees with MWJ. Drew Thaler, who at one time worked in Apple’s CoreOS group of filesystems developers, fired back immediately that he thought all of the hysteria about ZFS was overwrought and silly. After all, he says, “Storage management has come a long way since the original HFS was created.” Thaler makes five explicit points about ZFS: (1) ZFS is a good candidate to replace HFS+ eventually; (2) ZFS’ use of system resources isn’t unreasonable today, much less in the future; (3) that just doing what HFS+ does now was hard enough, and it’s running out of new tricks for an old dog; (4) that the article contains a specific factual error about RAID and ZFS; and (5) that MWJ is disregarding Moore’s Law. For those of you keeping score at home, in the 22 years since HFS was born, readily available hard drives have 2,559,900 percent (!!) greater capacity and CPU clock speeds are up 29,025 percent. That’s the percent-change from 20 MB to 500 GB and from 8 MHz to 2.33GHz. Whew!

Thaler thinks ZFS has serious potential, and he said so, both in the original post, “Don’t be a ZFS hater,” and the follow-up, “ZFS Hater Redux.” The second post is a counter-response to MWJ, which had fired back with “You don’t have to hate ZFS to know it’s wrong for you,” a vastly less snarky and much more fact-based argument. It’s persuasive, but based on today’s limitations. Thaler and MWJ are both writing in the kind of longhand technical language that geeks love but journalists can’t always quote—but his response is essentially, “You’d better hope hard drive space doesn’t increase at 2,559,900 percent over the next 10 years, or you’re really going to wish you hadn’t written this.”

P.S.: The rate of increase in hard drive space is probably going to have to slow down. I’ve long suspected disk space is an S-curve—steep at the middle and flat at both ends. Why? Well, 2,559,900 percent of that 500GB drive would be, um, 12,500 terabytes. Hello, S-curve! But even a 2,000 percent increase, like the one from my 6GB hard drive in 1997 to my 120GB drive today, would be 9.76TB, which is a server array today.

My quasi-boss, Michael Tsai, agrees with Thaler (and me) that the issue here isn’t whether ZFS is adequate for today’s problems. The question is, is ZFS better-suited to tomorrow’s problems than HFS+? He says, “HFS+ is or soon will be a liability, and ZFS is perhaps the best candidate for its eventual replacement.”

Jesper, of Waffle, makes the point even more succinctly:

The big whoop about ZFS vs HFS+ is that while HFS+ will work for most of us just fine for another ten years, a ZFS with all the bells and whistles turned off will work just as well. Furthermore, when those ten years are over it will continue to scale and offer good solutions when HFS+ has bottomed out, and in the meantime we can turn on any bells and whistles we deem worthy of the requisite tradeoffs.

(Emphasis mine.)

And you all know how I love to quote non-techie bloggers about technology. Blackfriars’ Marketing’s terrific blog makes another guest appearance this month, with a great entry about the ZFS brouhaha. “(ZFS) believes that users being aware of disks is so last century,” they write. “ZFS will accelerate Apple’s ability to both simplify tasks and amaze consumers in future releases.”

Spotty Coverage

You’re probably reading this column for the Leopard coverage. It’s not as interesting as ZFS, if by “interesting” you mean “filled with details you can’t get by just installing Leopard yourself,” but it’s probably more applicable to your life.

If that’s the case, I will summarize the Leopard coverage I have read in the following 48 words:

Easier to install. Time Machine is cool. Translucent menubar sucks. Dock sucks, unless you enable not-very-secret nonshelf mode. All kinds of neat under-the-hood improvements. Many UI changes are stupid, but some are quite nice. Better than Vista. Not better than Vista. Apple under-promised and over-delivered. Your mileage may vary.

I could try to replicate the quality of coverage I’ve seen elsewhere, but I would fail, especially since I have not actually used Leopard. I decided to get this column in your hands instead. So I’ll ask you to please read John Siracusa’s epic review. Whether you’re a techie or not, he is truly the Tom Wolfe or Günter Grass of tech reviewers, and I bow in awe before his wisdom.

Can You Hear Me Now?

Speaking of spotty coverage, there’s another kind this month: the iPhone! (Insert bad AT&T pun here.)

Apple’s announced that there will be third-party development support for the iPhone, which does not especially surprise me but seems like it would be a surprise to some people. They haven’t released any specifics, like whether it’ll be its own standalone SDK or an add-on to Xcode or, for all any of us know, a development environment based jointly on Star Trek’s LCARS and Emacs LISP (wouldn’t that be something?). I’d link you to the announcement, but I can’t find the announcement on Apple’s PR site. TidBITS has a copy, though.

TidBITS also has a fantastic rumination on what this means, and the question of whether Apple will treat development for the iPhone more like development for OS X or more like development for the garden-variety cell phone:

Related to this, however, is whether Apple and AT&T will require certification of programs before they run—all programs, or perhaps just ones that use certain iPhone features. Research in Motion requires certification for programs running on the Blackberry that access features like dialing, but I’m told that process isn’t onerous, and it’s part of the approach that RIM has used to great success in penetrating government and high-security businesses.

The other smartphone platforms—Palm OS, Symbian, and Windows Mobile—generally allow any arbitrary program to be installed, but access to phone features is typically limited, and network access is sometimes restricted to Wi-Fi, when that’s available. This limits a cellular carrier’s (and a user’s) exposure to a phone sucking huge amounts of cell network bandwidth due to a third-party application.

Apple could pull a neat trick by allowing programs that want to access only Wi-Fi network features to operate in an unlimited fashion; if EDGE service is desired, then a program needs to be registered and certified, and be a good network customer. There could even be a revenue requirement or split to make those kinds of applications work in AT&T’s model.

I haven’t given it much thought, and although there’s no evidence that Apple has built such an infrastructure, that’s not to say they couldn’t still do it. The logistical question is whether they’d really want to build a completely parallel structure to their Apple Developer Connection, but at the same time, it would probably be counterproductive to tie iPhone developer status to ADC status.

John Gruber, who was bound to get a byline in this article at some point, goes to the next logical step, by wondering whether many iPhone-optimized Web sites have a future in the post-iPhone SDK world:

(E)ven after the iPhone SDK ships, there will be far more iPhone Web application developers than native UIKit developers. I see MobileSafari-optimized Web development as the Visual Basic for the iPhone as a platform. Easier, more approachable, and wide open to everyone.

This leads us back to the question of development tiering, which I suspect might be simpler than building a parallel infrastructure to replicate what Apple already has. My inference is: (1) Web development is easy, (2) the iPhone already supports lots of Web developers, (3) developing for a device with more significant limitations than the Macintosh is much harder than building an iPhone-optimized Web site, (4) there are already many fewer Web developers than Macintosh developers. So is WebKit-vs.-UIKit (to use Gruber’s nomenclature) the tiering we can expect? That might be a good guess.

In the meantime, plenty of people have discovered that the iPhone is not all sugar and flour equals cake in the land of third-party developers. You see, the warning that Apple put out about the iPhone 1.1.1 update wiping out third-party software prompted some of them to think about sticking with 1.0, and others to accuse Apple of playing games with iPhone modders. And the boys at Macworld confirmed that the 1.1.1 update may very well brick your iPhone.

Gruber is without sympathy, and, as you can tell, I agree. This kvetching and moaning seems to me to be a little unfair, since the iPhone mods were, for all intents and purposes, cracks based on injecting foreign code into the OS using known security flaws. But some of these people are the same ones who complained loudly when Microsoft started cracking down on corporate Windows 2000 licenses (which exist since it’s impractical for IT departments to run a verification program on every copy of a many-many-seat installation of Windows), and, to be fair, many of the others are just casual users who are probably going to regret playing with their iPhones. Part of the early-adopter price is the risk that some of the really cool things that early adopters do with their phones put them at risk of ruining those devices.

And I might have been in that boat, and I’d probably be annoyed at having bricked a $600 device. But I’d be annoyed at Me, not at Apple.

On to a cheerier topic! Jason at 37signals celebrates that which separates Apple from the mere mortals: their never-ending attention to detail and user experience. For every time a Switcher’s wailed to me, “ARGH NOOOOOO CMD-Q IS NEXT TO CMD-W, WHY CAN’T IT BE FURTHER AWAY LIKE ALT-F4,” one or another of them has marveled to me at the little details that remind us all why we buy Macs. Like the realization that the iPhone’s iTunes Store link is near the iPod button rather than where you probably expected it to show up, at the natural 13th position.

Smart. Of course!

Five Bars of Link Reception

  • Robert X. Cringely ponders why the long-rumored, much-expected Apple-Google collaboration has been so elusive. In a nutshell: culture wars still matter, in tech as well as in American politics.
  • In the same month, Ben Sargent realizes what makes being a Mac user fun (less tinkering), Computer World lists the 8 reasons Apple is No. 1 in consumer electronics, and Steven Frank discovers that Intel Macs have a better Windows experience than a store-bought PC. What do these three things have in common? They all celebrate the Macintosh user experience, which is what sells Macs, and validate the Apple approach (simplicity, ease of use, clear user comprehension). Someday, maybe Microsoft will figure that out, rather than adding more strange features that seem to have been released without any significant user testing, like Vista’s unusable Expose Lite window-switching interface. Before you write to defend Flip 3D, please, try it. Not only is it vastly harder to use than the old Alt-Tab, which is still there for a reason, but it also misses what makes Exposé so great, like drag-and-drop preservation and non-stack-based window switching.
  • Adium X 2.0 will have A/V support for Google Talk and AOL IM, when it’s released at some point in the distant future. This is so many levels of awesome, I was speechless for positively seconds. Wow. Sometimes, less competition in the market might be better: if the relatively small community of developers of third-party IM clients were still producing three OS X clients (Fire, Adium and Proteus), would we be better off today? Fire is dead, sadly, and Proteus hasn’t had a significant release in two and a half years, but Adium is vastly better than it was in those days. One sentence fragment: more developers and Google Summer of Code.
  • The very first Eudora 8.0 beta, for the moment basically just a plugin modifying Thunderbird, is out. (I missed this last month.) One of my other ATPM buddies, Chris Lawson, is not complimentary, and neither is Charles Moore. They’re correct. Of course, I believe both are still using classic Eudora, which I am not, because neither Eudora nor Thunderbird has Spotlight support. But I think it’s safe to say, don’t hold your breath on Eudora 8.0; I don’t know if any e-mail client can ever be like classic Eudora, may it rest in peace.

Also in This Series

Reader Comments (1)

Alan Yeung · November 24, 2007 - 16:53 EST #1
I'm surprised you wrote so much about ZFS without even mentioning the basics about Leopard's support for it.

For those who are interested, ZFS support does ship with Leopard (type "man zfs" in the terminal if you're interested; all the command line tools are there, including "zpool", etc.), but you have to download the technology preview from Apple's Developer site to get write access or create ZFS volumes.

The documentation is currently unclear on the two things I'm most interested in: whether ZFS volumes can be used as Time Machine targets, and whether ZFS volumes can be root (early betas didn't support this, but I don't know what the final word is).

Make no mistake, ZFS is a big deal, if only for data integrity. With current hard drive densities, you get about 1 bit wrong for every 40GB you read. That may not sound like much, but the potential for rot is there. That's why I'm interested in investigating whether or not ZFS volumes can be used as Time Machine targets (even as sparse bundles on top of ZFS is fine with me). You don't get any feature benefits, but ZFS' volume scrubbing does increase data integrity in the real world, right now.

Add A Comment

 E-mail me new comments on this article