Tuesday, November 18, 2008

.NET Framework corruption may cause Microsoft LifeCam installer hang. Java-vu?

It all started innocently enough, with corporate testing of Google Video chat.

In one test using a camera only on my machine my test subject couldn’t read my whiteboard. She was seeing a mirror image display.

It’s not supposed to work that way. I’m supposed to see a mirror image of myself in a small part of the screen, my correspondent is supposed to see a standard non-mirror image [1].

So I tried to fix things. That’s how I got Java-vu all over again, with flashbacks to the dark days of .comBubble 1.0 – when we were wrecked on the reefs of JVM version control.

First I uninstalled all other video conferencing clients, starting with Oovoo. Nice product in many ways, but it kept dropping my conferences. Can’t have that.

Then I tried adjusting the settings on my Microsoft LifeCam VX 6000. (Nice hardware for its day, horrid drivers.[2])

Oops, can’t find the software. Ok, I’ll just reinstall – time to see how much Microsoft has fixed.

So I download the LifeCam drivers and install. All is well until I get to the point where it’s say “Downloading and installing files..." . The progress indicators moves gradually to the end … and starts over again.

And again.

And again.

Time goes by. It seems to be hung. I kill the install and a search leads me to a Microsoft support site (emphasis mine) ..

Software Setup Malfunction in Start - Help and Support Feature Discussion

… My problem is similar. I'm trying to install the software but the install process won't proceed past, "Downloading and installing files..." The green bars at the bottom fill up, as if progressing, but it's been running for a couple of hours now. I thought maybe the problem was with the CD, so I tried  it with the downloaded version with the same result…

Hey PJB. After much frustration, and less than great support from Microsoft, my issue was tracked down to be caused by a bad file somewhere in my Microsoft .Net Framework software...I had versions 1.1, 2.0 and 3.0 installed on my computer...along with a SP 1 for version 1.1.

I found this link helpful: http://support.microsoft.com/kb/923100/en-us

Try and use method one to uninstall your .net framework software. Method one did not work for me, I kept getting issues with removing both 2.0 and 3.0.

I then used method 2 which entails following another link and downloading a .net framework cleanup tool. I ran the program to cleanup ALL .Net versions. Then I went back to Microsoft Downloads and downloaded .net framework 1.1, 2.0 and 3.5 (not 3.0 - for some reason 3.0 would not download and created issues).

Once these .Net Framework downloads were installed I downloaded and installed LifeCam 2.04 software and my kid was up and running in 10 minutes.

It took me over a week to get this issue resolved.

One more thing, when you are downloading and installing your .net framework files you need to make sure you download in the proper sequence. Also, for some reason I encountered printer issues the first time through this. The second time I just unplugged my printer until all downloads were installed and I did a computer restart and the printer issue went away.

Yes, Microsoft has problems. Sure reminds me of my JVM versioning nightmares.

The kb article strongly recommends uninstalling from Add/Remove Software – but that only worked for .NET 1.1. The OS wouldn’t uninstall 2.0 or 3.0 because they were in use. It did uninstall 3.5.

So I followed the scary “method 2” and stripped all my .NET stuff away and rebooted. Scary, because .NET is XP’s 2nd brain now, so I was potentially breaking a lot of stuff.

I got lucky, no critical problems on restart. I decided to then use Windows Update to add back my .NET runtimes. It first offered me 1.1 and 2.0; I have no use for 1.1 so I just took 2.0. It then allowed me 2.0SP1. Each install took a fair amount of time.

I stopped there and tried running the LifeCam installer. I figured it would install 3.0SP1 if it needed it.

It seemed to hang again, but I figured it was installing .NET 3.0 and was using a very bad process indicator. I was willing to give it an hour, but it finished in about 30 minutes or so (I think our WAN connection is hurting).

I rebooted. Now Add/Remove showed me only .NET 2.0SP1 and .NET 3.0SP1. I didn’t bother with 3.5. Interestingly I used to also see .NET 2.0 and .NET 3.0 as separate entries, but now I only saw the SP entries.

Now I could use Microsoft’s control panel for the LifeCam. There’s a “mirror mode” setting there, I turned it off. I also set the resolution to 800x600 for what that was worth.

I then retested in Google Video Chat. Success – my correspondent reported the mirror problem had resolved.

Phew.

Oh, and yes, I think there was something evil in my .NET 3.0/SP1 install.

[1] People are very distracted by non-mirror views of themselves. We aren’t used to looking at ourselves that way. So most video conferencing clients mirror our own image. Problem, is that inverts text. The smarter video clients let users turn off self-mirror mode, but Google doesn’t allow that (not sure about iChat). The remote person never wants to see me or my whiteboard in mirror mode.

[2] Google is reselling a nice Logitech webcam for $70.

iPhone Google Mobile App changes - more than voice

The headlines are all about server-based voice search: Now you can speak to Google Mobile App on your iPhone.

So far the voice search seems more novel than interesting. Voice software doesn't like my voice (hey, it sounds clear to me!), and Google is no exception. It would be much more useful if:
  1. Voice search preferences were distinct from text search preferences. Then I could limit voice search to contacts
  2. Contact voice search ran against my Gmail Contacts, not my iPhone Contacts. The latter set is much larger.
There's a several second lag between when you change settings in Google Mobile Apps (GMA) and when the changes propagate to google servers. This is confusing if you don't know about it.

On the bright side, search results are now optimized for the iPhone, including images and news, and you can set search with keyboard showing as your start screen. Terrific launch time too! (Tap the top of screen to dismiss the keyboard -- that's not obvious and if you don't know about it it looks like you're locked out of the app!)

You can now add a Google Apps set that's distinct from your Gmail identity - one domain only (see settings).

So now I can view my Gmail calendar and my family domain Calendar, but when you view from this URL you can't edit calendar settings. It's read only. So I still need to use the top-secret Google Apps only editable calendar URL.

There are a LOT of changes to Google Mobile Apps. Since they're a neat fusion of iPhone resident app and web app it's a bit hard to tell what's changed where, but overall it's a great set of improvements. I particularly like the ability to work with both a Google Apps domain and a Gmail identity.

So even if the voice stuff doesn't do much for me, the rest is very good. Now if Apple would release it's beringed fingers and give Google access to the calendar API...

Update 2/20/09: The voice search turned out to be just a toy, but the rest worked well.

The Personal and the Apps Calendar

Friday, November 14, 2008

Google notification confusion: Talk, Gmail or Deskbar Gadget?

We all know Google's flagship web apps: Google Mail (Gmail) and Google Contacts, Google Reader, Blogger, YouTube, Photos, Google Apps and Google Maps. Some would include Google Groups.

Lately they've been putting more energy into iGoogle (their portal) and Google Social. I think Google Calendar is sensational. At the other extreme, Google Desktop Search is clearly toast and Sites is struggling.

That's not so bad, but the problem is figuring out what to do on the periphery.

I've given up on Google Notebook, but what about Google Talk now that Gmail hosts Google Video Conferencing? In particular, what's Google's strategy for notification of events on the desktop?

I found this post outlining 3 options for chat/communication related events: Has the Google Talk desktop client been abandoned?

It's a good review.

My take is that Google Talk is done and Gmail notifier is very stale (last update 3/2006). So there's a hole. Google needs to give us a general notification solution that plugs into an API-equipped back-end web service with user rule control.

In the meantime I'm going to see what I can do with the Google Deskbar (no GDS though) and gadget based notification.

More later.

Update 11/14/08: I didn't like Google Desktop (Deskbar). I'd chosen not to install Google Desktop Search, but it still stuck a plug-in into Outlook. Outlook is unstable enough to begin with, I don't like using add-ons or plug-ins with it. Shortly after I noticed this, Google Desktop crashed. Uninstall immediately.

I might try Gmail Notifier next.

Update 11/18/08: Google Notifier is #$! broken:
Gmail Known Issues - Help Center

... If you've enabled the 'Always use https' setting in Google Mail, you'll need to install a patch for the Notifier to work with this setting...

... If you decide you no longer want to use the https setting, you'll need to install the other file included in the download to reset the Notifier. Use the same method as above, except with 'notifier_https_undo.reg.'

This is ridiculous, I ain't installing a registy hack that requires another registry hack to reverse.

I still think Google Talk is finished, so I'm not going to install that notifier.

I'll either install 3rd party notifier (there are plenty of 'em) or wait (for eons?) until Google comes up with a notification solution.

Update 2/14/09: We're making heavy use of Google Video Chat these days, it's weird there's still no clear notifier solution.

Wednesday, November 12, 2008

Appigo Todo.app alternatives: nothing?

After my recent Appigo misadventures and Evernote bugs I decided I needed to look around. Again.

I'd been hearing good things about Things.app, but the desktop app is still pre-release. No import/export.

So I took another look at OmniFocus. No real import capabilities, though they'll sync with whatever's in iCal. So if Bento weren't so slow and feeble I'd move my data into iCal and then OmniFocus. If.

I really don't see any great options, so I'm still with Appigo for the moment.

Tuesday, November 11, 2008

Gmail video chat via Vidyo

Google has introduced video chat.

Hallelujah.

Macs and PCs alike, there's an installer for each platform.

Based on Vidyo technology, which is rather nice for that company.

VidyoConferencing solutions just work. Easily. Reliably. Inexpensively. Pleasingly. From anywhere. And that’s because Vidyo provides for high-quality, low-latency, highly resilient, broad-based deployments over general-purpose networks with the introduction of the first multi-point video conferencing ... thanks to Vidyo’s unique intellectual property and the advent of the VidyoRouter™.

Vidyo’s conferencing solutions are the first to take advantage of the most recent enhancement to the H.264 standard for video compressionScalable Video Coding (SVC). The result is HD/Telepresence quality enhanced by industry-best resilience and low-latency — and all delivered over general-purpose IP networks. VidyoConferencing solutions provide quality experiences for all participants, ranging from Mac and Windows desktops to special video conferencing room solutions. No dedicated networks ever required.

Google is hosting the Vidyo router.

I will be testing this ASAP.

Update 11/13/08: In 2007 Google acquired Marratech's software for internal use, but this seems unrelated.

Update 11/19/08: They don't mention this, but the Mac version is Intel only. So far I've found reasonable reliability on XP machines, but I had very bad results with an XP and Mac Intel video chat. I don't yet know where the problem lies. There's no #$!$ notification solution. (I got better results in retesting later.)

Update 12/11/08: Establishing a trust relationship to enable chat is underdocumented and a bit crazy. I recommend:
  1. Ignore the Gmail chat list. It's fatally flawed. Type your contact name in the Gmail chat search box.
  2. Select the match you want (you may see multiple emails for one contact, you need to use a gmail address), then mouse over to invite them to chat. This sends them an invite message.
  3. If they accept the invite message you now have a trust relationship. You can initiate a chat now, or they can.
I can't find any documentation on the maximal resolution GVC will handle, but I suspect it maxes out at 640x480 and 15-30fps. That's pretty much top of the line now, I think to go above that we need on camera h.264 hardware compression.

The quality of Google Video Chat turns out to be very influenced by firewalls. If the firewall allows point-to-point direct connection for the chat, you get great results. If not GVC will try to tunnel the video via Google, and the quality is much less (iChat in contrast, would just give up, so this is commendable).

Update 12/12/08: In a corporate meeting we lost connection every 10-20 minutes. We have reason to suspect the root cause is a Comcast cable modem service issue at the remote site, but we also believe Google Video connections, like Microsoft LiveMeeting connections, are fragile. Still investigating!

Google and time zones: Calendar oddities on the iPhone

I view my Google Calendar three different ways, and depending on the view I see appointments at different times. It turns out this is not as bad as I first thought when I wrote ...
Gordon's Tech: gSyncit for Outlook 2007 to Google Calendar and Contacts Sync

... Not yet characterized, but there are time zone problems. I think Google Calendar tries to be 'smart' about the time zone one is currently in. Big mistake. Correction -- this isn't a gSyncit/Outlook problem. I think this is a Google Calendar quirk depending on the time zone settings on the web client host machine....
First, some background. Our family Google Calendar repository is being updated from four streams (no over-the-air iPhone sync, damnit): (see also)
  1. XP Outlook/exchange to Google Calendar via gSyncit
  2. OS X iCal to Google Calendar via Spanning Sync (and iPhone to iCal via Apple's damned sync cable. [2])
  3. Blackberry Pearl to Google Calendar via the BB Google author calendar sync app
  4. Direct data entry via Google's various web interfaces including the little appreciated and under-marketed Google Apps iPhone mobile interface.
If this sounds risky and complex please see footnote [1].

I am shocked that this setup actually works, but it does. It's held together by duct tape and bailing wire of course, but so was my father's Valiant and it drove us around for years. Blood will tell.

Or does it work? I was seeing events appearing at different times depending on how I viewed the data:
  1. Google Calendar via desktop Firefox
  2. Google Calendar via iPhone Safari connection Google's semi-secret high powered Google Apps web calendar view.
  3. Google Appls iPhone optimized web view
It turnes out that, behind the scenes, Google Calendar is doing quite a bit of time zone work, but it behaves differently depending on how you access it. From the iPhone it uses the phone's local time zone information -- so appointments always shift to local time. From a browser it uses the time zone setting associated with your Google Calendar settings. You do remember that option, right?

Google ought to make this more explicit in the UI; Google Calendar should at least display the active time zone with the ability to change it from the calendar. Still, it's impressive that this works at all.

The trick will be remembering to change my Google Calendar settings time zone back to central time when I get home ...

[1] I could write a book on the state and evolution of family/work calendar integration/ synchronization and all the lessons it holds for health care IT, system integration, the semantic web, the future of publicly traded companies, interconnected complex adaptive systems, and the implications for human progress. Andrew accuses me of making the simple complex, but my take is that reality is recursive and all simplicity is an illusion over the supremely complex. I don't have time to write the book, but I'm due to put some hints into Gordon's Notes. Now back to the topic ...

[2] Damned because of the side-effects of Apple's Digital Rights Management lockdown of the cable interface and failure to provide a vendor-useable API / sync framework.

Update 11/10/08: Ok, this is creepy. Now I'm seeing new time zone related options in the Calendar settings. They don't seem to be doing anything to the Calendar I see, but I didn't notice them yesterday ....

Monday, November 10, 2008

Google reader: now with translation services

Google is very keen on Google Reader. It's a testament to their genius.

Now they've added translation services ...
Official Google Reader Blog: Is Your Web Truly World-Wide?

...Next time you find an interesting feed in another language, just subscribe to it as normal in Reader. When you view the feed in Reader, check off 'Translate into my language' in the feed settings, and (voila!) the feed will be immediately translated for you....
I would very much like to see Google sell a commercial appliance-based version of Google Reader for use within corporate firewalls.

Sunday, November 09, 2008

Is it too late to go back to Palm 1994?

After my latest iPhone Toodledo / Appigo disaster I've been reconsidering my approach.

Maybe I need to go give up on the Cloud for a while, and let things bake a bit.

Or maybe I'm being premature. Evernote's no longer guilty of data lock, maybe I should try them again.

I mozy over to my Evernote account. There I'm greeted with my first note ...
Evernote Web: Note Search

...Unknown exception (com.google.gwt.core.client.JavaScriptException: (TypeError): c is null fileName: http://www.evernote.com/enweb/ENWeb/26883679FEFF138CBBFB08EA679E2AA0.cache.html lineNumber: 2534 stack: vdd(null,229501)@http://www.evernote.com/enweb/ENWeb/26883679FEFF1 ....bject Object]) ..../enweb/ENWeb/26883679FEFF138CBBFB08EA679E2AA0.cache.html:800 ) during operation (Unknown)...
Pick up towel. Throw. In.

I'm toast.

Time to rethink my approach to Task and Notes.

Frankly, if I'd know it was going to be this bad I'd have stuck with my old Palm handheld for another year!

Appigo and Toodledo – nasty emergent design flaw makes a mess of my iPhone Notes and Tasks

This is about the worst design flaw / bug /emergent interaction I’ve encountered in the past few years.

Here's the story from my rejected post to the Appigo Todo Google Group [1]

When I added Notebook to Todo, and after I'd imported hundreds of notes Toodledo, I ended up with a set of categories (aka folders) for my iPhone Appigo Notes and Tasks that were the sum of the Palm categories I had used for Notes and the Palm categories I had used for Tasks.

Since my Palm Notes and Tasks had different categories, there were empty folders that showed in Notes (but not empty in Tasks) and vice-versa. They cluttered up my folder list.

So I deleted the empty folders on both sides.

Can you guess what happens next?

It took a surprisingly long time after the deletion, perhaps due to Toodledo synchronization issues, but I now have hundreds of Tasks and Notes that no longer belong to any category…

… At least when synchronizing with Toodledo, Tasks and Notes share a common set of categories/folders. If you remove a folder from Notes that is empty, you remove the matching folder from Tasks. All contained Tasks go into the inbox (at least they aren't deleted).

This is the single worst bug or design flaw or bizarre emergent synchronization behavior I've run into in several years. I don't know how I'll sort this out.There’s no way to undo this behavior, and there’s no good UI on either the iPhone or Toodledo for manipulating sets of Tasks or Notes.

Man, do I hate synchronization.

What a bloody mess.

Update 11/9/08: To clarify why the problem is so bad. If the data lived in Outlook, this would be a nuisance problem. It would take some time, but I could select swathes of items and assign them to new categories. Neither Appigo nor Toodledo support multi-select operations.

I did some further testing. I created a folder in Toodledo tasks, and verified it did not, at first, appear in Toodledo Notes. I did the same with Toodledo notes. However after Appigo Notes synchronization, the Toodledo TASKS folder appeared in Appigo Notes. After a cycle of Appigo Tasks and Notes synchronization the new Toodledo Notes and Tasks folders appeared in both Appigo Tasks and Notes and then synchronized back to Toodledo Notes and Tasks.

Which brings me back to two critical points I keep relearning:

  1. Synchronization is Hell.
  2. Reliable service requires a single vendor to control the client and the server. Differences in folder models between Toodledo and Appigo are at the root of this exquisitely nasty bug.
  3. There is a vast and perhaps unbridgeable gap between the capabilities of a robust desktop client like Outlook and what the Cloud can offer.

Update 11/12/08: Although Appigo did not publish my email they did respond to another complaint. They say it's not their design, it's a result of how Toodledo manages categories.

I suspect Toodledo stores notes in the same tables they use for tasks, hence the shared categories.

So this is an example of an emergent bug arising from synchronization between different application models.

Everything I need to know about Health Care messaging and synchronization I learned from my PDAs.

Update 11/13/2008: I looked into alternatives to Appigo such as Things.app and OmniFocus. The first is pre-release and has no import/export capabilities and the second, though released, has no useful import/export capabilities.

Neither meets my minimal data freedom requirements.

Since the category-loss bug arises from the combined use of Appigo's Todo.app and Notebook.app synchronizing against Toodledo's single Task/Note store, one workaround is to keep Todo.app and Toodledo Tasks but look for another solution for Notes, such as Evernote.

Alternatively, since Evernote now has a published API, Appigo could use Evernote as their note store instead of Toodledo. Their Notebook app is far more stable and useful than the Evernote iPhone client.

I'd suggest this to Appigo, but the last post I submitted to the Appigo support Group was not published. [1]

I don't have better options for the moment, so I'll stick with Appigo iPhone Todo.app and Notebook.app for the next few months. Things.app may be ready for my use by February 2009, assuming they have a robust set of import/export capabilities on the client.

Of course Google could create a Task companion for Google Calendar at any time. If they do that then the deck will be reshuffled and we'll have more options. I don't expect any solutions from Apple; I think they're in much worse organizational shape than we realize.

[1] Appigo declined to publish my post to their Google Group based support forum. If my most recent note on this thread doesn't appear, I'll have to conclude that Appigo is aggressively censoring their customer posts -- at least on this very sensitive topic.

Update 11/13/08: My posts are not appearing in Appigo's Google Group.

Update 2/24/2010: Appigo did eventually introduce warnings into their apps, so that you're less likely to fall into this trap.

Friday, November 07, 2008

Appigo Todo now has search

As of tonight the Appigo - Todo - Overview doesn't describe all the great new features, but they're listed on the App Store site.

They've added a LOT to one of my favorite apps. The killer addition is search -- now I can search in Appigo Tasks just as I've been able to search in Appigo Notebook. Tags and contexts have been added and they sync to Toodledo.

Terrific update. Highly recommended iPhone application.

Update 11/9/2008: As of today, not so highly recommended! Lord, what a screw-up.

OmniOutliner Pro's impressive outliner to HTML feature

OmniOutliner Pro is an old OS X app -- been around forever. I wouldn't be surprised to learn it started out on the NeXT workstation.

I've owned it for years, but I've never quite fit it into my workflow. The main value for me has been that it does a terrific job of opening my ancient Symantec MORE 3.1 outlines. That's handy, since 10.5 orphaned many of my old papers.

Years ago I thought I'd use it to create web pages, but it did a lousy job -- back then. Happily the OMNI Group keeps improving it, and they've never asked me for more money. A recent update mentioned something about 'dynamic html outlines', so I gave it a try.

Impressive! You can create very nice dynamic HTML outlines. Since OmniOutliner can open RTF documents it's not a bad way to put some documents on a web site -- assuming you have FTP access.

I might get some new use from my old app.

Scribd iPaper: a Flash based alternative to PDF

Today Brad DeLong's web site included one of his lectures -- hosted using Scribd iPaper.

It's supposed to be an alternative to PDF; another way to make Microsoft Office documents accessible to a broad audience. Where as PDF is optimized for print, iPaper is optimized for web display.

There's some support for non-Office documents as well ...
Upload Your Documents | Scribd

.... Microsoft Word Files doc, docx Microsoft Powerpoint Files ppt, pptx, pps
Microsoft Excel Files xls, xlsx
PDF PDF pdf, ps
Open Office Open Office Documents odt, odp, sxw, sxi, etc.
Text Text Documents txt, rtf
There's only a few wee little catches.
  1. iPaper documents are pegging my browser (Camino on OS X at this time).
  2. iPaper is a descendant of Adobe's FlashPaper. It uses Flash for display. Yes, Flash, the buggiest, most insecure rendering platform known to the 21st century.
  3. iPaper appears to be a totally proprietary format, in fact it's not clear if one can download an iPaper file or if they have to be hosted at Scribd.
I prefer to avoid Flash whenever possible, so Scribd isn't a good answer for me.

gSyncit for Outlook 2007 to Google Calendar and Contacts Sync

Looking through the archives I see I've written several posts about gSyncit (ex: gSyncit and SyncMyCal: not compatible with Lookout for Outlook). Each experiment ended up with me giving up on the topic.

Most recently I was trying Google Calendar Sync again with Outlook 2007. It worked for a week or so, then stopped with a cryptic error. I've a history of disappointments with Google Calendar Sync, so I decided to try gSyncIt again.

It's grown quite a bit since my earliest experiments. At one time I see I was asking for control over the sync process; they now provide a lot of tweaks and controls. More than most people could tolerate, but I'm a veteran of Sync Hell. I want 'em all.

I've enable unidirectional sync - Outlook Calendar to Google calendar and Outlook Contacts to a specific Google Contacts group. It will be a long time, if ever, before I dare to try true bidirectional sync.

So far, so good.

I registered this time, so they've got my $10.

Update 11/9/08: Not yet characterized, but there are time zone problems. I think Google Calendar tries to be "smart" about the time zone one is currently in. Big mistake. Correction -- this isn't a gSyncit/Outlook problem. I think this is a Google Calendar quirk depending on the time zone settings on the web client host machine.

Update 11/11/08: It's not exactly a quirk, more like a feature that's a bit too obscure. I've a f/u post on this dated 11/11/08.

Update 12/8/2008: gSyncIt has a bug with all-day events that span multiple days. It replicates them. I've seen this before; Outlook has a very nasty internal representation of an "all-day" event. I'm surprised gSyncIt hasn't fixed this bug, it's not subtle.

MobileMe trial ending - cancel now or never

I'd thought my Apple MobileMe trial account was going to expire at the end of the trial period.

I'd looked for that when I signed up; I don't sign up for trials that auto-enroll if not canceled.

Well, either I missed something or Apple has changed the rules. I received a notice today that Apple was going to convert me to a full account in 14 days.

I canceled immediately. MobileMe does not offer what I need. It's not even close. I'd only hung around in case Apple had a huge MobileMe update in the works, but I'm not going to pay for what they have now.

That's Rule #3 of Gordon's Rules of Acquisition. Don't buy on promises.

To cancel your MobileMe account you go to www.me.com and click the headshot icon to edit account settings. In account settings choose Cancel.

At that point all your MobileMe data will be vaporized, so if you've actually been using the service you'll have to decide what to do with your data.

Wednesday, November 05, 2008

Workaround for Lego Star Wars install bug

I really dislike buying desktop computer games. The software quality is poor, and the vendor support is lousy.

Unfortunately my 9yo prefers Mac games to Wii games, so when he's earned a big incentive for overcoming a real challenge, we end up with another OS X game.

It's just as well there are so few of them.

The latest problem came with Aspyr's Lego Star Wars (DVD) (Mac) (2005). After I'd installed it my son couldn't play. It started up oddly, with a long video loop. A key press produced a gray screen, then the loop resumed. Finally it crashed.

So what was the problem? There's nothing like this on the Aspyr site and the only update patch is a long delayed and apparently troublesome fix supporting native execution on Intel Macs.

I suspected a security/privileges bug. Game vendors, who usually outsource development to very junior engineers in international markets, rarely bother with security models. They build to the usual XP assumption (everyone runs as admin) then port the game to OS X.

Sure enough, from my admin account the game worked. I suspect the game tries to write to the Application folder. That's a no-no. Non-admin users on my system, including my usual account, don't have write privileges in the global Application folder.

I could have reinstalled to the user-specific application folder, but then the other kid accounts on the family machine would need their own installs. Since Leopard gives more control over permissions, I could have installed in a folder that everyone could write to.

In our case though I have an external drive with open space. OS X doesn't enforce permissions on external drives, so after installing there everyone could use it.

Shame on Aspyr for building a crummy application, and double-shame for not documenting the problem and a workaround.