SyncML maintenance

January 30, 2010

The SyncML server will be temporarily disabled this morning to allow for some maintenance and upgrades. Thanks for your understanding.

Edit: server is back online

Another SyncML story – broken by design

January 12, 2010

There used to be an issue synchronizing with SyncML a whole range of Nokia phones based on the S60 3rd Edition (including such models as E65, N70 or N80). I’m happy to say that after weeks of hunting down the source of the problem, which would prevent the phones from receiving and decoding updates sent from the server, a fix has been found and put into place. But I think this deserves a bit more explanation that the technically inclined might be interested in reading.

To exchange contacts or calendaring data, the SyncML specs requires the use of the well established standards that are vCard and vCalendar. While these standards are somewhat loose, they have the advantage of being widely supported and easy to read and write: they are just a bunch of lines with a key-value association (ie a line with “ORG:ACME Inc.” for the contact’s organization name). These standards require that each line is terminated MS-DOS style, with both a carriage-return and line-feed character to mark each end of line – this is however just an arbitrary choice as a simple line-feed would be enough (this is how lines are terminated on Unix systems).

Problem is, the SyncML specs is also built on XML, which treats spaces, carriage returns, tabs and lines feeds as special “white spaces” and allows XML tools to change them. As such most of these tools consider the carriage-return sign as unimportant, as it is redundant with the line-feed to mark the end of a line.

So what happens when you put a format that requires carriage-return such as vCard inside another format that doesn’t preserve them? Lots of hair pulling, because most XML programming tools will merrily remove any carriage returns they happen to find. Thankfully almost every SyncML application out there doesn’t mind reading vCard or vCalendar data with the wrong line ending as this is trivial to do and doesn’t any difference to the data. But a few will not.

Happy new year 2010!

January 1, 2010

2009 was a busy year for picoBeat: the early software was heavily improved, almost every piece of code has been rewritten and refactored at least once, SyncML synchronization was added (now a very popular feature) and of course this is the year it left private beta and became publicly available!

So what’s in for 2010? We have a huge, seemingly endless list of features and ideas we’d like to implement. Top of the list is a complete rewrite of the Group module that will offer many collaborative features. It’ll later tie in with a messaging module. Also expect a new Windows utility that’ll go way beyond the current picoBeat Notify, as well as more work to integrate picoBeat in other online services, browsers, mobile phones and the Windows operating system.

I’d like to thank everyone who has taken the time to send bug reports and feature requests, and wish to all picoBeat’s users an excellent, productive and stellar 2010 year!