Tewha Links and writings on software development, mostly for iPhone and Mac OS X.


Palm doesn't need iTunes to sync music to the Pre

Palm's USB trick to get iTunes to load the Pre was a clever, if unethical1, hack.

Today, iTunes 8.2.1 broke that. But despite the ridiculous accusations of lock in, Palm doesn't need the Pre to sync music to the iTunes.

iTunes saves its entire music index as an XML file in iTunes Music Library.xml. It's XML. Palm can open it, read it, and get whatever they want.

New music is unencumbered by DRM. There's an exception, music bought before DRM was removed, but Palm wasn't able to play that before.

And, of course, the USB bus is available to any Mac or Windows application programmer.

So, then, nothing stops Palm from shipping a Pre Music Sync program. All it would have to do:

  • Read the XML file.
  • Grab the music using standard file I/O.
  • Send the music to the Pre over USB.

If Palm is less dumb than a sack of hammers, they expected Apple might fix how they validate the iPhone to exclude the Pre's tricks.

If Palm is less dumb than a sack of hammers, they would already have a Pre Music Sync program almost ready for deployment.2

In fact, this should have been their solution all along. Why wasn't it? Well, assuming Palm isn't a bunch of idiots3, Palm probably didn't have their music sync program ready. Ship the hack or slip the date? And somewhere along the line, some marketing type probably decided that impersonating an iPod was a good idea. They wanted a bullet point that it worked without installing software. Well, now Palm is going to have to write software and get users to install it.

They just did an entire OS. I think they can handle Pre Music Sync. And if they can't, I'm sure Markspace can handle it with The Missing Sync.

  1. Yes, I mean unethical. Of course it's unethical to promote a feature you have no control over that could disappear in instant. And especially when it probably will. []
  2. But Palm being Palm, you should probably expect a Pre Music Sync program some time in October or November. []
  3. And, again, this is Palm. []

The sad case of Palm

I first started developing an application for Palm in 2000 with the Palm IIIc. I was amazed at how well-thought out the API was. A few things were missing, such as POSIX-compatible routines.1 The API looked a lot like Carbon, which was a perfectly reasonable way to develop applications. CodeWarrior was a decent-enough tool, and growing in capabilities. New hardware, while not announced or even previewed yet, was on the horizon that could take away most of the nastiest problems with Palm OS, which were rooted in the 680x0 architecture.

I estimated at the time they were at least four years ahead of the competition in terms of an operating system.

But since then?

Buying and selling themselves to... themselves.

Absolutely nothing on the OS front.

Since then? Windows CE and successors have caught up in many areas, exceeded Palm in others. Blackberry, and iPhone exist, both of which make Palm look pathetic.

Loss of professional-level development tools.

Hardware quality control problems.

It's hard to believe that Palm has thrown away this much of a lead. But they have.

  1. Expecting full POSIX support on a Palm back then was maybe a little unrealistic, but expecting the available routines to match POSIX definitions is quite a bit more reasonable. []