I'm not seeing it

stupid finder

Years ago I watched an old rerun of a television show, where the teenage son runs into the Dad's home office saying, "OMG Dad! If I turn off the TV, and turn it back on, the show has kept going!", to which the father responded "Gilligan's Island is being broadcast to millions, whether you're watching or not. Are you just not realizing the world doesn't revolve around you..?" Ayep, this is going to be rudimentary, but I need something to link to help keep the inbox below 100...

Indeterministic

A computer system is complex and intertwined, built up upon layers and layers of different procedures all interacting with different dependencies-- and the interacting part is the key. The more an introduced program interacts with aspects of the system, the more you have to account for it when things go weird. For example, if I introduce an email client to the System, unless it is doing some very strange things the likelihood of it causing a problem a graphical glitch in another app is very low. If I introduce a different video driver, the likelihood is much higher.

The more you understand how a program works and what it interacts with, the easier it is to guesstimate likely culprits, which saves you time while trying to root it out -- at the very least whether its something innate versus something you introduced. This is rudimentary, and its why when something was working, and then goes wrong, the first thing you're going to turn your eye on is how you recently changed the system.

Unfortunately, many people have a very simplistic view of the System, which -- in the context of the ham story -- makes perfect sense. I.E., you're sitting there using a Mac that looks much the same as others, and while you may be using a Powerbook, all the Powerbooks look the same. Since Apple sells the whole widget, even if its a different type of system, say a PowerMac or eMac, you know Apple knows all of it. The upgrade market for Macs is slim indeed now, and its not like you had much of a choice in components when you picked yours up.

The problem is that there are differences, and just as installing different software changes your System's dynamic, different hardware changes the dynamic of the System, often because it changes the code interacting with the hardware, and that code then can have different behavior as it interacts with the rest of the System. A basic example of this is having an NVIDIA graphics card instead of an ATI card -- both have different sets of drivers, and often support different levels of functionality.

All that being said, sometimes the wonkiness is lurking there for everyone, but depending upon your usage patterns, you might never see it or have problems reproducing it.

The gyar

As an example, we'll turn to our old arch-nemesis, the Mac OS X Finder. As you may or may not have noticed, OS X doesn't allow you to drag windows above the menu bar. You could in OS9, but in OS X this was removed -- I'm assuming because you could now only move windows around by their title bar, and if that went off the screen, the only way you could get your window back down would be to close it.

In recent versions they introduced Metal (gag) windows, which allow you to move the whole window around by clicking on regions of free space, but they still don't let you move them above the menu bar. Still, I ended up with the below screenshot earlier this evening...

This occurred while I was dragging a file to a folder via the trackpad and drilling down by hitting the space bar, which when pressed while you're dragging a file over a folder will open it. It's probably not a coincidence that they went crazy with wasting pixels in the Finder when they brought OS9's drill-down functionality to a later version of OS X, but that's a tangent I'll resist... The point is that its not supposed to happen.

While the Finder is metal, which means you could drag it down, many users wouldn't even know that, and wouldn't know how to get out of it short of going to the menu and selecting "Close Window". Many wouldn't even know that was there -- their lil red blob is gone, and they're screwed.

What's supposed to happen is that the System/app is aware of where the menu bar is (as well as the Dock, as long as its on the bottom, otherwise its a free for all for most apps, including the Finder), as well as the edge of the screen, and play ball within it, like so...

So we know it's not supposed to happen, yet it did happen, which means it's either an undisclosed feature I inadvertently discovered, or it's a bug.

Plausible deniability

Assuming its a bug, which is probably safe to assume, the question then becomes where the bug lies -- within code Apple has shipped, or something I've added in thats causing bugs. You may notice my Finder windows don't look like normal Finder windows, because I use Unsanity's Shapeshifter, because I simply won't look at those metal windows all day.

Now, if your System doesn't have a Finder window popping above the menu bar every so often, and its obvious I'm using something on my System that you aren't -- especially a haxie -- you might assume we'd found the root cause of the wonkiness. Unfortunately for that theory, I...

  1. Have a decent understanding of how the APE system works (what ShapeShifter uses to swap out graphics), and -- if a problem occurs -- what form its likely to take. This ain't one of them.

  2. Have a decent understanding of what ShapeShifter is using APE to do, and if there was a problem, the ways in which it might show up. This ain't one of them.

  3. Saw this happen once before I'd installed ShapeShifter, so I automatically know its not a factor.

This is one of those where you know the wonkiness is there, lurking, but reproducing it is a nightmare, because you don't really know what factors went into it. Maybe my window was in a specific part of the screen, and the Finder just got confused while drawing. Maybe it picked up something weird from the .DS_Store file it saw within the folder I was hovering over. Who knows, and here is why this really sucks:

  • If someone saw the wonkiness occur, and had access to the Finder code, they could go through the routines responsible trying to figure out what might be going on. Unfortunately, only Apple has it, and they've shipped it with a bug.

  • Saying to Apple, "So uh, the Finder windows went wonky" will do little good, and even a normal user sending off a screenshot won't do much good. They're going to want a reproducible test case so they can confirm it themselves... and then decide whether the fix makes it into 10.4.x, waits till 10.5, or just hangs around if its complex enough.

Basically, it's a bug that's there, but that you might never see, and even if you did, will probably only get fixed inadvertently. I.E., a developer at Apple happens to see a problem in the code while looking for something else, or the code is changed for other reasons, or -- if its due to some strange interaction between seemingly unrelated bits of code -- one of them gets changed and the bug magically goes away.

That I can see, the only way for the above situation to improve is for Apple to take more care with the code it puts out, or to allow others access to it, but either way the wonkiness is there.

yummy alcohol posted button Posted by drunkenbatman
    October 18, 2005, at 07:17 AM


Comments (25)




Post a comment



Anonymous comments are allowed, but please enter something for a name.

And do endeavor to appear sane.









Remember personal info?