• Explore the magic and the mystery!



  • Living with Leopard: Book VII — So How Many Bugs Does Leopard Really Have?

    November 6th, 2007

    Some years back, one of the developers for Mac OS 7.0 told me about a very obscure bug that had been allowed to persist in the operating system. It seemed that something would crash on the twentieth level of a new folder if you did something to it, such as create another new folder nested inside.

    Well, I don’t know if they ever fixed that particular oddity, since I don’t know an awful lot of people who bury their stuff that deeply, but I suppose it does happen. So I wouldn’t break out your Classic Mac to see if you can reproduce it, but I’d be curious, I suppose, to hear if you do.

    The point of this little remembrance, however, is not to dwell on an insignificant bug, but to explain that they remain ubiquitous in an operating system, even if you and I might regard them as quite stable. In fact, I venture to guess that there are hundreds of bugs in Leopard that Apple has logged.

    I am not kidding. The headline is not meant just for show, or to paint a lurid picture on the subject. And, no, I’m not giving you any top secret information. In fact, that number may well well be in the thousands, as it is with any software of this vast scope. But before you rush to remove Leopard from your Macs, or consider sticking with Tiger, let me assure you that this isn’t anything you should be concerned about.

    You see, many of those bugs are strictly cosmetic, while others can only be invoked by an obscure set of steps that aren’t likely to happen very often in the real word.

    In software development, bugs are traditionally rated in accordance with their potential impact on the user. Indeed, if that bug bites, and it can cause your Mac to crash on a fairly consistent basis — or result in the loss of data — Apple will give it high priority and do their best to get it fixed as quickly as possible. The same is true for any responsible company, and — no snickers please — even Microsoft’s committees will institute crash programs to repair such issues in any of their products.

    I said no snickering please, unless it’s just the candy bar!

    In any case, bugs of that sort, if they exist, would cause you to see a 10.5.1 pretty quickly, but there are lesser issues that might impact you in a pretty serious fashion. Take AirPort reception, for example. If you can’t get a consistent connection with your home or office Wi-Fi network, or the one at Starbucks, you’re apt to be pretty upset. Indeed there have been reports of problems of that sort and they, too, would require quick fixing.

    As I’ve said in my earlier commentaries, I am having difficulty printing documents with Microsoft Word 2004. Indeed, Microsoft’s PR admitted they’re aware of a rare problem of this sort and they’re working with Apple for a solution. Now this might just be some errant line or two of code somewhere that’s causing page ranges to be out of bounds. It may take five minutes to fix, but days to isolate and qualify for release. But it’s surely serious enough to require a pretty rapid repair, and, no, the recently-released Microsoft Office 2004 11.3.9 update did not address this particular oddity.

    No, folks, Apple didn’t do anything to deliberately cripple printing in Word. It’s quite true that Office is a sprawling suite with millions of lines of code, and plenty of room for things to go wrong. That they spent a year migrating to Apple’s Xcode ahead of developing Office 2008 indicates that they have a huge amount of work to do even for the simple things. Indeed, it’s clear to me that Apple’s developers and Microsoft’s Mac developers do talk without pulling revolvers and swords. In fact, they are probably quite friendly in the normal course of events.

    Naturally, some bugs are of far lesser importance, because there’s a workaround that allows you to avoid them. For example, we use WordPress for content management of this site. It’s easy, convenient and, in fact, has some pretty prestigious users, such as The New York Times.

    What I like about WordPress the fact that you can edit your content from any computer with an Internet connection simply by launching a browser and logging in. You can also email your content, but I’d rather take a more direct approach.

    However, WordPress and Safari 3 don’t like each other when it comes to writing and editing copy. When you save your document, Safari manages to strip out the paragraph breaks, which isn’t a problem if you prefer one long paragraph, but is otherwise a serious issue. Previous versions of Safari didn’t support the visual editor in WordPress, which puts a simple formatting bar on the top of a page.

    Now I realize this particular anomaly isn’t a show-stopper. I don’t know if it’s the fault of the developers of WordPress or Apple and Safari, although I have no problems performing the same tasks in Firefox, Microsoft Internet Explorer or Opera. Moreover, I don’t know whether this requires a full-scale upgrade to Apple’s WebKit, perhaps in a future Leopard update, or it will remain an issue for the people at WordPress to address.

    But you see where I’m going. The WordPress issue is probably not considered significant enough on Apple’s end to be worth a high priority, but it is still a bug that someone has to fix. The same is true for lots of other oddities that you might find in Leopard’s performance or appearance that disturb you. There are other defects that are so subtle, you may never see them, or invoke the rare set of concurrent conditions that causes them to appear.

    As you can see, when I speak of hundreds or thousands of bugs in Leopard, I might, in fact, be very conservative in my estimate.



    Share
    | Print This Post Print This Post

    8 Responses to “Living with Leopard: Book VII — So How Many Bugs Does Leopard Really Have?”

    1. George Carrington says:

      Thanks, Gene, for once more (or again?) injecting some common sense into an issue that will/does get people hot under the collar. Keep up the good work!

    2. Dana Sutton says:

      In general Gene’s right, and some bugs are so obscure and trivial that few people encounter them and Apple doesn’t bother squashing them. But a couple of fairly serious Leopard bugs have recently been described in the computer press: 1.) ” Leopard’s Finder has a glaring bug in its directory-moving code, which could lead to horrendous data loss if a destination volume disappears while a move operation is in action. Unlike a directory copy action across drives, which duplicates a directory from one volume to the other and leaves the original intact, a directory move action across drives is intended to duplicate the original directory from the source drive to the destination drive, then delete the original from the source drive when the move to the destination drive is complete. It appears that Leopard’s Finder (as well as Finder versions dating back to Mac OS X 10.3 Panther) fails to check the integrity of the directory copied to the destination drive before deleting the source directory from the source drive. Therefore, if a directory move is interrupted partially through the move process, the Finder assumes the move was successful and deletes the original directory from the source drive, leaving a directory with only partial file contents on the destination drive.” 2.) “In the Mac OS X 10.5 Time Machine “time travel” window, past backups may not appear if your computer name includes certain characters.” The characters are ones other than standard ASCII alphanumeric ones (it may seem unlikely that people would use such nonstandard characters in naming their computers, but consider the case of users outside the English-speaking world). These are serious enough that I wouldn’t surprised if we see 10.5.1 within hours or days rather than weeks

    3. John Fallon says:

      The firewall is another problem. I wasn’t sure what the problems might amount to at first, but what’s reported now … modifying binaries of third-party programs to show they’ve been recognized by the firewall? “Block all” in the setting panel doesn’t block all? Apple took something that worked fine in Tiger and broke it. Many of us are hopefully protected by the firewalls in our routers, but plenty are not.

    4. The firewall is another problem. I wasn’t sure what the problems might amount to at first, but what’s reported now … modifying binaries of third-party programs to show they’ve been recognized by the firewall? “Block all” in the setting panel doesn’t block all? Apple took something that worked fine in Tiger and broke it. Many of us are hopefully protected by the firewalls in our routers, but plenty are not.

      We’re calling on security maven Rich Mogull this week to explain what went wrong on this week’s tech radio show.

      Peace,
      Gene

    5. Dana Sutton says:

      While we’re on the subject of firewalls, one new wrinkle in Leopard I find less than thrilling, maybe just because I don’t understand it, is that when you open a program for the first time you get a box with the message”Do you want the application XXX to accept incoming network connections? Clicking Deny may limit the application’s behavior.” It at least seems that I’m being given the choice between two risks: crippling my application or opening a potential security hole. Maybe what’s happening is nothing of the sort, but for the average user like myself this is a somewhat scary choice to be confronted with, since Apple is not doing an adequate job of explaining what’s going on (yes, I did read the help file on the subject). Until Leopard we got along quite happily without this option, why introduce it now?

    6. Ilgaz says:

      IM Clients, Telephony applications, File sharing apps will always have “server” functionality. Serve means, it listens for other machines to ask for information and reply.

      Application filtering firewalls and some overly paranoid users of them are the most important reason why developers think about whether to add auto-update function or not to their completely legit application. If someone runs to versiontracker and brands poor application just checking update as “Spyware” (mostly Ex Windows people), it will create a bad name for application.

      That is a thing to watch. Remember there are thousands of windows to mac switchers because they got sick of Windows spyware which is a real threat. These people are new to platform, totally afraid of privacy issues and their good will was abused by spyware developers back in 2003 to this date.

      Billion dollar software (Both Skype and WoW) have -of course- their pro active security measures. Apple could use their extra resource data field instead of modifying binary. You know, people clean the languages they don’t need and none of these 2 apps got broken. So, they know/respect the “Resource” concept. Apple should simply add their own security data to resource of application.

      If they are modifying binary (executable) that is plain wrong. I can’t believe Skype and WoW developers didn’t get that information from Apple too.

    7. Dana Sutton says:

      Thanks, Iglaz, that’s helpful and illuminating. I don’t think I’m paranoid, I just like having explained to me. If Apple had taken the trouble to give auto-updating as an example of the kind of permission I would be granting by allowing incoming network connections to my software, I’d have no trouble at all with allowing this. My problem is being confronted with a required choice without being given a clear idea of what the implications of my choice might be, then yes, I do have a problem with that. And, I would imagine that if a user refused this permission that some software (by Adobe and Microsoft) that has uses some authentication routine would probably refuse to launch This ought to be spelled out for users as well. But, as I already said, the Help file dealing with this option is as clear as mud.

    8. Ilgaz says:

      Sorry, I didn’t want to blame anyone asking questions as paranoid. I wanted to remind developers about the implications of those Windows Spyware infected people coming (switching) to Mac platform.

      If there is auto update in your program and new Leopard asks user question whether to access, you better inform user _very well_ before accessing the net. The most widely used auto update framework (Sparkle) already does a great job informing user.

      No blames to ex Windows people, I was using Windows back in early 2000s and I know the horrible scene of spyware there.

    Leave Your Comment