An acquaintance of mine wrote to me:
“The fact that RAW conversion is done by the OS means that Apple will have to update the OS each time a new camera is released.”
This seems to be the prevailing belief online. As a veteran 20-year software developer, I’m skeptical—a sufficiently incompetent implementation might require a system software update, but there’s no reason I know of to believe that this is actually the case.
Raw conversion is likely done in just 1 or 2 libraries. Consider that QuickTime, Java, DVD Player, security updates, iTunes, etc have all been updated in the past month alone, all without a system software version change. Assuming that Aperture can’t and won’t be handled the same way is unfounded.
Still, for the sake of argument, let‘s assume that supporting new cameras in Aperture does require a system software update. Apple has released 3 or 4 system software updates each year, so the interval at which updates to Aperture could be made are around 3-4 months—not great, but not a disaster either.
If you’re considering a raw converter, you’ll find very useful comparisons in my Raw-file Converters article. Aperture is not included, because I’m not yet willing to spend $500 on a program just to test its raw-conversion quality. Perhaps a demo version will emerge, or I’ll be able to do some test conversions on a machine that a friend or acquaintance has.
With the large amounts of RAM being stuffed into computers these days, one has to question whether to buy Error Correcting Code (ECC) RAM, because as the amount of RAM goes up, the chance for errors does also. Whereas 1GB was a lot of RAM a few years ago, 8GB is not uncommon today, offering 8 times the chance of a memory failure. Errors are caused by esoteric cosmic rays, which have the energy to twiddle memory bits. Higher elevations are more prone to problems, so if you live in Denver, it’s more of a concern than in San Francisco (maybe as high as ten times more). Flying in an airplane is considerably riskier.
Now that your computer has 8GB instead of 1GB, has the chance of a random “soft” error also decreased by a factor of 8? Unfortunately, it appears the opposite may be true. Densities have increased to the point that a single “event” can flip more than one bit. Even ECC memory can only detect multi-bit errors, not correct them—it’s reboot time in such a case.
At least one online source analyzes the likelihood of memory errors, though the analysis is faulty in several ways. For example, it assumes that home users turn off their computers. If you’re a Mac user like me, you never turn off your computer, relying instead on “sleep” mode. That means the computer is really running 24 hours a day every day of the year (24X7). A 1998 EE Times article quotes research that claims as high as 4 soft errors per gigabyte of RAM per month—and of course that’s in lower density parts than today’s computers use. Other sources claim higher and lower numbers. Assuming 4 soft errors per gigabyte, a user with 8GB of RAM might experience 32 errors per month, or one per day on average. Some of those errors are in places that matter, though most are likely harmless.
High-end PC motherboards have offered ECC RAM for some time. Apple’s new PowerMac G5 models, which can accept up to 16GB of RAM, now also offer ECC memory, which uses an additional chip on the memory module to detect and correct single-bit errors in each byte and detect (but not correct) multi-bit errors. Apple’s XServe G5 has offered ECC memory for some time, and there is a nice tech note showing the user interface that allows monitoring the memory status. It’s not clear if any equivalent tool exists in regular MacOS X (as opposed to MacOS X Server).
Several approaches come to mind:
1. Buy the cheapest memory you can find, and hope that if the system crashes it isn’t the memory. Cheap memory is more prone to “hard” errors—manufacturing defects, and certainly no less prone to “soft” (cosmic-ray induced) errors. Of course, there’s no way to tell if errors are occuring.
2. Buy high-quality memory, which should eliminate “hard” errors, and just assume that the chance of a soft error is small enough to be acceptable. This is a reasonable strategy, but there’s always that nagging doubt about memory if your machine freezes once in a while. And you never do know if your data has been subtly altered.
3. Buy ECC memory and chances are you’ll never experience a memory related problem. If you do experience a crash or freeze, the MacOS system log is supposed to record a memory failure.
Of course, rebooting starts you off with a fresh copy of everything, effectively erasing all soft errors that have occured. So maybe rebooting is not such a bad idea, once a month or so. Then again, my Powerbook G3 has run as a mail and web server for four (4) years with nary a crash or freeze, but it only has 384MB of RAM, doesn’t access much data, and I’ve rebooted it a number of times after software updates.
I’ve come to value reliability more and more, and ECC memory is likely what I’ll go with in my next computer. The downsides include cost, which will be at least 25% higher. For example, Apple charges 50% more for ECC memory. Companies like satech.com offer ECC memory for only 25% more. Another claimed cost is a performance hit, but this appears to no longer be true, at least on PowerMacs according to the testers at barefeats.com.