Wednesday, January 09, 2008

This is why I wait for 10.5.3 ...

A very good example of why 10.5 is still not ready for me:

Spanning Sync Blog: Update on the Leopard iCal Sync Bug

...We've filed this bug with Apple (bug #5597932) and, given the number of people affected by it, are optimistic that it will be fixed in Mac OS X 10.5.2, rumored to be shipping later this month. In the mean time you should:

  • Consider this bug before upgrading to Leopard from Tiger
  • Make frequent backups of iCal (File > Back up iCal...)
  • Disable the Address Book birthday calendar if you think you might be running into the problem

We understand and share the frustration this bug has caused our users—and all Mac users trying to sync their iCal calendars with other devices and applications. We look forward to a permanent fix from Apple...

Apple has a culture of innovation - obviously. Quality? Customer service? Not so much.

It's just not in their DNA. The saving grace is a very high quality customer base that notices problems and complains about them. If not for that customer base I'd still be on XP - no matter how excellent Apple's innovation.

When Apple makes a big move, experienced customers know they'll break stuff rather than miss dates or sacrifice secrecy. When 10.5 slipped last Feb I thought it wouldn't ship before March 2008. I should have said it wouldn't be ready to use before March 2008.

The good news, for those of us who can wait, is that by March of 2008 10.5 might be safe to use. Personally I'm thinking May 2008  looks better.

Hard on people who need new hardware though ...

Tuesday, January 08, 2008

Adobe Lightroom - kind of nice

Adobe Lightroom 1.0 Win/Mac isn't cheap - $300 list. There's a month free trial though, and since I'm kind of disgusted with Aperture I thought I'd give it a try.

I'm not using it to manage photos, for that I use iPhoto '08. I'm using it for my standard heretical workflow:
  1. Import JPEG and RAW images from our Canon SD1000 and Digital Rebel XT.
  2. Rename files to embed some roll and date info in the file name.
  3. Import into Aperture, Adobe Lightroom or iPhoto for post-processing.
  4. Export as JPEG 98%
  5. Import into iPhoto '08 for archival storage and uploading.
  6. Delete the RAW images.
So, for this purpose, how does Adobe Lightroom compare to Aperture?

It's better. Much faster for image browsing, a bit faster than Aperture on my slowish PPC iMac for image editing. LR is easier to learn than Aperture, even though I think the Library/Develop division is dumb.

It's even a better Macintosh application! Aperture uses weird GUI elements, LR sticks mostly to the Apple standards. It's the most Mac-like of all Adobe's apps, because it began life on the Mac.

Aperture's theoretical big advantage is that it can import an iPhoto Library -- but it can't handle video, Photo Books, etc. And, of course, Aperture doesn't support editing of image dates - so I can't use it as an image store anyway.

For what I do today, LR is a better solution.

Aperture is not looking very happy these days ...

Software for creating personal photo sports trading cards

I thought I'd have a fairly easy time making sports/trading cards for the MN Special Hockey Stingers, but it turns out to be harder than I expected.

Back in the days of MacOS 7 and Windows 3.1 I suspect there were lots of software packages to do this sort of thing. In the modern world they seem much harder to find.

Failing a traditional software solution, I figured I'd find an online service that would make cards. I did find one, but it was pretty expensive. This is definitely a niche business.

Thus far I've only found four solutions on any platform (Thanks Apple Discussions):
  1. HP sports photo trading cards: This web app will, very, very slowly, create PDF you can print. Requires thick paper, scissors, and blue.
  2. Portraits and Prints (OS X) claims some support for printing cards, but there's very little documentation. No free trial either!
  3. Photoshop Elements (OS X and Windows): "Old Toad" tells me that it supports creating photo cards.
  4. NCR Flip-Pix: My local Office supply store sells NCR Flip Pix (made in Germany?!) trading card sheets. The Flip Pix software for generating prints is a free Windows only download. (Funny note: the documentation says it works on "Windows on a Mac" - Boot Camp. It also says: "... If you are not able to do this by using Bootcamp or other Windows OS for Mac, then please call the customer support line for a CD of similar software that may work on a Mac." I suspect they have an old Mac classic version of this product.)
  5. An Apple Canada site suggested iWorks, but didn't provide much detail.
I'll update this post if I find anything else. I think it was easier to search for software products 8 years ago ...

Nikon has Canon in a headlock ...

For years Canon has had Nikon on the defensive. Suddenly, Nikon has new life. The light sensitivity of the Nikon D3 is breathtaking. Screw those megapixels, give me ISO any day.

Nikon D3 / D300 Vs. Canon

... One of the things that has a lot of people really bent is that the Nikon D3 can shoot at ISO 25,600. This is three full stops faster than ISO 3200, which for the record is three stops faster than ISO 400. (Just to put things in perspective).

Some nay-sayers have commented, "Ya, so what. It's really noisy). As the teenagers say – "Duhhhh!". Of course it's noisy. It's freak'n ISO 25,600 for Pete's sake!

As in the old joke about the talking dog, it isn't so much what it has to say but rather that it can talk at all. And at ISO 25,600 the D3 really has a lot to say.

At 25,600 most of the noise is chroma noise. What this means is that by converting to monochrome and applying a bit of luminance noise reduction in Lightroom or Camera Raw, one ends up with a file that looks to my eyes like T-Max at ISO 1600, or ISO 800 Tri-X developed in Rodinal. That's 4 – 6 stops better than anything we had in the film days, and at least 2-3 stops better than anything to-date in digital...

I loved the tip for dealing with chroma noise. My puny Canon Digital Rebel XT can shoot at 1,600, but the noise makes this worthless. I'll experiment with this recovery technique.

Watch for this spring's Digital Rebel XT. If Canon doesn't produce a low end dSLR that can shoot good images at ISO 1,600, we'll know they've given up on the low end.

Monday, January 07, 2008

Google extends custom search: even easier to create and embed

I've written previously about Google's Custom Search engine:

I like it, even though the last time I tried it the "use all URLs on this page" function was flaky and didn't work with JavaScript generated content. (See: my current custom search collection)

Now Google has added new "on the fly" searching based on page links. Google Blogoscoped has some examples including del.icio.us integration.

Foxit reader replaces Adobe Acrobat reader

I have the full Adobe Acrobat (ugh) on my XP box, so I haven't tried the Foxit Software PDF viewer. It's getting a quite a few positive mentions lately though, so worth remembering.

On OS X Preview is great.

Sunday, January 06, 2008

Interoperability and my Contact information: Microsoft Outlook and Access, FileMaker Pro and Palm Contacts

[This is written for the very few people who will ever try to do something like this this, and will Google for an explanation.]

I'd say this was harder than I imagined, but really I knew it would be bad. The reasons it's bad are the same reasons that medical software seems to be stuck in the 1980s.

The problem of reconciling data models and data capabilities is a much harder problem than relatively trivial tasks like natural language processing, speech recognition, syntax specifications, quantum computing, and developing multiprocessor compilers. The more knowledge a system contains, the more difficult it becomes to reconcile different semantics.

That's why loss-free interoperability of complex healthcare software is always ten years away.

It doesn't help that the problem is either unrecognized or underestimated.

Ok, I digress. The problem I had to solve was far simpler, though it was a large part of why Palm went from a growing billion dollar company to near bankruptcy.

I had to reconcile several address book data models.

Over several years platform migrations and a 2003 synchronization screwup had scattered my personal contact information between the PalmOS, FileMaker Pro 8 (Windows/OS X) and Microsoft Outlook. (My corporate contacts in a different Outlook 2003/Exchange environment [1].)

I needed to merge the information into a single data management environment, identify duplicates and conflicts, and create a reconciled view.

The first step was to figure out which environment to use. FileMaker Pro 8 has far better layout and user interface capabilities than Access 2003, but I'm regrettably very familiar with Microsoft Access 2003 queries and data transformation. More importantly, until I switch to an iPhone, the true home of this data is in my Palm Tungsten E/2 and Microsoft Outlook 2003 (synchronized).

Reconciliation had to occur in Access 2003.

The next step was to identify what fields to use (which data model, and, more abstractly, which semantic model), which data types, etc. I had to find something that could work across all these environments, and which would allow me to port data from the rich FileMaker environment.

It took me almost a half-day of work - my New Years Day resolution project. I'll summarize just the key points here for anyone who wants to do something like this, followed by a review of the final table structure (single table). The various matching algorithms and data updates turned out to be simpler than I'd expected.
  1. Outlook 2003's internal data model is probably not a relational model. In theory one can create a data link from Access 2003 to Outlook 2003, but this link exposes only a small portion of Outlook's contact data. The export to file/Access works best, omitting only a few odd fields.
  2. I think (though a lot was happening at this point) that Outlook will export and import a Contacts field (column) called "Keywords". Oddly enough, it's not accessible in the Outlook GUI! Ignore it.
  3. Outlook import is more limited than export. In particular, Outlook uses different column labels for import and export. Mostly it matches them despite the name changes (hidden mapping), but it fails to match "email" to "E-mail".
  4. The best connection to FileMaker is ODBC. I experimented both directions, but ended up using FileMaker as an ODBC server and Access as a client. This requires setting up FileMaker 8's weird ODBC services -- I think this is easier in later versions of FM.
  5. Access maps FM fields via ODBC to Memo fields. I did a full import and changed all but Notes to Text (255 character UTF-8).
  6. Some of the data I imported from either Outlook or FileMaker had empty not NULL columns in Access. I resolved this by finding all values that were not NULL but had a string length of 0, then I set them to NULL.
  7. Some FM and Outlook text data contained carriage returns. Outlook 2003 has a lot of trouble with these. I had to replace the CRs with spaces using an obscure technique.
  8. FileMaker hides its internal row identifiers, but I exposed them using Get(RecordID) ans stored them in my new database. (Access doesn't even have these, Oracle does. Longstanding complaint about Access.)
  9. Palm allows four "User fields". Outlook has 8 "custom fields", but not all of them are easy to get at. I used three "User fields" mapped to 3 "custom fields". In Palm Contact Options I name them (see below).
  10. Outlook import will only manage text, memo and date types.
This screenshot (click to enlarge) shows the fields in the reconciliation Access 2003 database. I've never figured out how to get a useful report on these things -- most databases allow one to write queries against internal metadata/schemas but Access doesn't. This was the best I could easily do:


Keeping track of the identifiers is obviously important. RecordID is an Access 2003 Autonumber field. I store an Access Autonumber Synch identifier (a GUID) and a legacy FileMaker identifier in two fields accidentally omitted from the screenshot (sorry).

User1 - User3 contain keywords, date revised and a text data type copy of the Access record id.

--
[1] I am the only person on earth who wants to synchronize my work data to a unified device/platform but not synch my personal data to work. This is proof that I'm an alien.

Update 5/19/09: With my new hacked together setup, I can use Access to manipulate Outlook and have the changes reflected through MobileMe to OS X Address Book to my iPhone.