Bugs Fixed and CreatedWhile Tiger is mostly a feature release of OS X, there are a handful of bugs that are fixed, but unfortunately, also created with the updated OS.
In my review of the mobile experience of Panther, I complained about how I could never get the Keychain manager to remember my user names and passwords when connecting to any of my Windows shares. It turns out that as long as I sent the password as plain text in the connection request, I'd never get asked for a user name and password again - but that's obviously not the most desirable solution.
In Tiger, the password problem is thankfully fixed - I can connect to any of my Windows shares without having to keep on reminding the Keychain manager to remember my user name and password.
Unfortunately, that bug fix comes at the price of other multiple new bugs created. More than anything, Tiger appears to have been rushed during its final stages. Since I had installed and used on a regular basis just about every build of Tiger after the initial release to ADC members, I had a front row seat to watch Tiger improve and mature. And while I steadily saw performance improvements as the builds progressed, I definitely didn't see a single build that was released to developers that was 100% bug free - which definitely worried me. I tried to discount my fears by saying that I had never played with any Apple beta OSes and maybe this was just how things worked, but I kept on coming back to the same worry - with no public beta, and if the bugs aren't getting fixed in the developer release, then who's there to tell Apple when stuff isn't working right in Tiger?
Further indication of Tiger's hurried release is the fact that Quartz 2D Extreme, the complete handling of UI rendering and compositing by the GPU, is not enabled in the release version of OS X Tiger. As such, users of Quartz 2D Extreme supported GPUs gain no performance benefits in Tiger as the CPU is still left to handle all UI rendering and the GPU handles all compositing after the CPU renders the interfaces to textures in AGP memory. The only benefit modern day GPUs offer in Tiger (other than their improved performance in 3D applications) is that there are certain visual effects that are only enabled if you have a GPU that supports Tiger's Core Image. For example, when dropping a widget onto the Dashboard, you get a very nice ripply-wave effect on GPUs that support Core Image; and on those that don't, there's no effect. But from a performance standpoint, there's no benefit to either ATI's Radeon X800 XT Mac Edition or NVIDIA's GeForce 6800 Ultra DDL.
Although it's most definitely an issue related to meeting Tiger's 1H'05 release schedule, I've always thought that Quartz 2D Extreme was best paired with PCI Express. Given that Quartz 2D Extreme requires that all UI elements are rendered by the GPU, including every last character that appears on the screen, you can expect the size of your local frame buffer to play quite a major role in performance. Obviously, not everything will be stored locally to the GPU, and thus, there will be times when the GPU is rendering or compositing data that is located within system memory, which at this stage means that the GPU has to go over a very slow AGP 8X bus (2.1GB/s) to get to the data that it needs. With PCI Express, the GPU to system memory bandwidth is significantly increased, which has enabled technologies such as NVIDIA's Turbo Cache to gain a foothold, where things like AGP GART could not. Although it's unthinkable that Apple would revise Quartz 2D Extreme to be a PCI Express-only technology, the fact of the matter is that it should be much better paired with a PCI Express based G5.
Tiger also seems rushed in the sense that it's not a drastic shift to 64-bit computing; Tiger adds the ability for individual processes to have access to more than 4GB of memory. As can be expected, any process using the 64-bit memory space can only talk to 64-bit libraries, which at present, doesn't include any UI libraries. The end result is that you can have a 64-bit process, but it has to talk to a 32-bit UI process. There are even more limitations beyond this, but the basic impression that I get from Tiger is that Apple is taking a much more transitional approach to the move to a full 64-bit OS than Microsoft. In fact, if it weren't for AMD, I wouldn't be too surprised if Microsoft's move to 64-bit would be much more similar to Apple's. The reality of the situation is that for the majority of users, 64-bit memory addressability isn't going to be a necessity for another few years still. Instead of focusing a lot of attention on 64-bit today, Apple appears to be making a transition towards the goal of making the Mac OS a full 64-bit OS, but with Tiger, we are far from there yet. Next week, you will be able to read my impressions of Windows XP x64 Edition, and from my experience with that, desktop users aren't missing anything from Tiger, being somewhat limited in its "64-bitness".
So, what are these bugs to which I keep alluding in Tiger? For starters, applications do crash in Tiger (which happened in Panther as well), but now, Tiger allows you to "Reopen" the application after telling you that it's crashed - how nice of it, right? Well, the problem is that occasionally, after re-opening an application that just crashed, Tiger will pop up a window and ask you if you want to keep the new settings that have been applied for the application that you're using. What this appears to do is tell the application to revert to its default settings, but the question clearly doesn't word it like that. The bug thickens, however; sometimes clicking "yes" or "no" is not sufficient enough, and more and more copies of the dialog box will appear. This is a problem that I started noticing in some of the later ADC betas, but I figured it would just get fixed on its own. While it doesn't happen nearly as much as it used to, it definitely does happen even in the final build of Tiger. The only solution to the problem is to hit Cmd + Q to quit out of the application after you've quickly hit "yes" or "no" a bunch of times to clear the stack of dialog boxes. It's annoying, but luckily, I haven't had it happen to me too often.
Then, there's a new bug with Dock magnification that wasn't present in Panther. I'll talk about this one in greater detail in the section on what's new in Finder. And there are some minor bugs related to Dashboard and some of its individual widgets that I'll also go over later in the article.
Tiger is a lot more polished than it was during any stage of the beta program, but I would hardly call it a finished product ready for retail release. One aspect of the entire Mac OS X experience has been that everything just seems to work the way it should, but with a buggy OS (regardless of how minor many of the bugs are), that experience is challenged. Given the amount of time that Apple invested in touting not only Tiger's 1H'05 release date, but taunting Microsoft's delays with Longhorn, it's not surprising that aspects of Tiger appear rushed. When I first heard rumors that OS X 10.4.1 was being worked on immediately after releasing Tiger to manufacturing, I feared that this may happen. The good news is that hopefully, 10.4.1 will address these issues and hopefully with the team hard at work at it, it will be out sooner rather than later. But waiting for a patch to an OS before calling it final is usually something that we do in the Windows world, not something that Apple needs to be copying.