In Search Of The Missing Sync?

I had another silly thought this evening, and thought I’d just mention it for anyone interested. I’ve been reading through some bugs, and wiki documents on the state of synchronization of various devices with Mozilla based products.

It would be great to have a generic XPCOM wrapper for interacting with Bluetooth support on various platforms (yes, you read that right, and trust me it’s not that crazy). It would need to have the ability to detect what Bluetooth implementation is used by the user for Windows (Broadcom/WIDCOMM vs. Windows XP), Apple’s Bluetooth implementation and of course Linux (I believe it’s Bluez, but I’m not to familiar with Bluetooth on Linux). Note that this does not mean having Mozilla drivers for Bluetooth hardware. Just an easy way for developers to interact with Bluetooth without the concept of platform specific software.

With projects like Lightning, Thunderbird maturing, and MiniMo it’s important to be able to interact with other devices for the sake of forward progress, and this may prove to be the best solution for many cases.

There are several approaches to device sync from what I’ve seen from things that are device specific likePalmSync to the more generic iSync, but the problem that comes up is that it’s a lot of work for relatively limited devices. For example, even with iSync, as robust as it is, your still limited in devices it supports, and it’s Mac only (leaving Windows and Linux users in the cold). Others still require commercial software (Palm) to work with iSync. So for all the work, all Windows users have no benefit from iSync support. For all the effort on PalmSync for Windows done thus far (and that’s a fair amount of effort), no Mac users have been able to benefit thus far. SyncML has some potential, but the lack of support thus far still leaves many without any support. Anyone without a newer device likely won’t ever have SyncML support, so again the problem is a limited device set. And still not all newer devices support SyncML, and it could even depend on your service provider, as they sometimes disable features.

The advantage of Bluetooth is standardization. Lets face it, love it or hate it Bluetooth is becoming more and more available. More and more portable devices are shipping with it. By having support for it, Mozilla products gain compatibility with devices as they come out. It also would provide good device support over multiple platforms. For example, Thunderbird’s Address Book could have a small database of device types (phone/PDA models) and the format of an address book they support (such as vCard) or Calendar (vCalendar or iCal).

It looks like Synchronization Profile (SYNC) and File Transfer Profile (FTP) would be necessary to get most devices going (seems not all support SYNC, so supporting FTP would allow you to at least dump your Address Book or just an Address Book card from time to time onto your phone.

If included with Firefox, there would be an easy way for product developers, and extension developers to add a “send with Bluetooth” menu option. Save snippets of a web page, an hCard, the possibilities are endless.

This wouldn’t work for every device (such as the iPod thus far which is Bluetooth free, but I’ve got you covered on that ;-)), but it’s a big gain with supporting 1 protocol.

I could even see this as an interesting approach to keeping bookmarks in sync. Perhaps store your bookmark file on your cell phone… well you get the picture, mobile devices are without question the future, the question we need to ask is, how do we transport data back and forth?

It doesn’t look like something I’m personally up to implementing (I’m not very strong when it comes to this stuff), but it would be pretty cool to see someone take on. The key to this is that it needs to support SYNC and FTP, as well as be as multi-platform as possible. That’s not an easy task, but the possibilities are rather impressive.

I’m curious what others think of such an idea. I’m not saying it’s 100% workable, or warrantied for any particular use. Just some idea in my head I felt like putting into text and sending down the series of tubes we call the internet.

5 thoughts on “In Search Of The Missing Sync?

  1. Not only sync, but also controlling. Like using your mobile to control your Firefox-based slideshow. Mmm, nice. I would love to do some work on integrating Bluetooth into Mozilla, but I doubt I have the time.

  2. In the case of apple, I think one would loose some interesting possibilities by not supporting isync somehow. And as interesting as mozpod is, I would much rather see thunderbird simply use the apple address book and calendar directly. That would make the need for mozpod dissapear, and provide better system integration for users.

    I would suggest a well defined sync api (perhaps it exists, haven’t looked) is more important so people could write some extension to provide sync hooks into their devices/software. Then write a bluetooth module (using newly added bluetooth api’s in mozilla) to provide sync over bluetooth.

  3. I just came across this posting when searching for “bluetooth xpcom”. I would find a bluetooth xpcom thing really useful, but as you point out, on windows you would have to detect which implementation they have installed.

    I’ve actually been able to knock up an extension to an extension(!) that sends a file by bluetooth on the mac, because it can all be done by a command line call. It would be good though if the extension could be made to work in all browsers. Take a look here for more info.

  4. Anyone without a newer device likely won’t ever have SyncML support, so again the problem is a limited device set.

    Huh? seems a bit too dismissive to me

    I have a Q and am using SyncML to sync with my work calendar. works great.

Leave a Reply

Your email address will not be published. Required fields are marked *