View Full Version : Platform independant sync?

05-28-2010, 01:42 AM
Dear DejaOffice,

Your product for Android devices looks exactly like what I need -- what my Palm Treo does, but on a more modern platform. Currently, I successfully synchronize my Treo's calendar & contacts with KDE's PIM suite (Kontact) and it all works well. KDE is a desktop environment that runs on Linux, FreeBSD and even Windows and has a very useful PIM suite that uses industry standard file formats such as ics for calendar component (KOrganizer) and vCard for the addressbook (KAddressBook).

I'd like to sync Deja Office with this suite of software and I think the solution is not so hard!

Is CompanionLink willing to share any details on the DejaOffice synchronization protocol, or consider making your software friendly enough to just support ics & vcard sync (platform independent) via WiFi?

For example, if DejaOffice supported syncing via WiFi and the CompanionLink software in "software independent mode" just gets pointed to the ics and vcard file and handles bidirectional syncing, then DejaOffice could integrate with ANY PIM suite that uses industry standard formats!

I think Linux users might get a bad wrap as not wanting to pay for software. I and numerous others are fully willing to pay for such a solution!

- pdaexpert

05-29-2010, 07:56 PM
pdaexpert, welcome to the Forum!

I'm not a big believer in standard protocols like iCal or vCard. All of our sync systems are proprietary. It has more to speak for my 20 years in this industry, and the fact that all "standards" end up being strong on common data, but weak on details and special features. For instance, Outlook now has a recurring type for First Monday of the Month. This is difficult to depict, and most platforms (Google, iPhone, Android) don't support it. I'm not willing to wait 3-5 years for them to improve. As far as I understand, the formats you name iCal and vCard are transfer formats, not sync formats. There is a world of difference between one time transfer and ongoing sync.

We DO have an open file format. The SQLLite file we place on the SD card, while not a Standard format, is also not a closed format. Anyone is free to write a sync protocol to feed the file. We will share details and answer questions about our implementation. It should be very straightforward. In this way, anyone can write a Sync, like a Wi-Fi sync for KDE and we'll assist and do what we can to support the solution.

I'm open to further suggestion. However, our focus right now is to effectively model PC Business Software, not Mac or Linux, on the two prominent phone platforms; iPhone and Android.

06-04-2010, 03:34 AM

First, a big thank you for taking the time to respond. This is really big in my book, very few companies have upper management who take an active role in engaging their customer base. Secondly, thank you for offering to share information on your database schema and having a positive attitude towards engaging other developers who might want to interoperate with your DejaOffice package. if I or other proceed down this path, I know who to contact :).

That said, I did want provide you with my viewpoint on some issues you brought up in this thread and also the thread "Sync with FreeBSD/Linux".

You mention that you're not a big fan in standard "protocols" like iCal or vCard. While I don't dispute your experience and insights into the lack of flexibility or capability in these standards, I do have to point out that open file formats and protocols allow users like myself to move almost seamlessly from one platform Palm/Outlook to another (Mac, Lotus Notes, Evolution, KDE's Kontact, etc). Even with deficiencies, I value my data portability more than I do specific capabilities. I don't know of any solution that's perfect or couldn't use more polish. And I don't know any other file formats in the PDA/PIM world that let you move your data around other than ics & vCard. Are there good alternatives?

You also mention that iCal/vCard are transfer formats, not sync formats -- while I don't dispute this, I don't know any flat-file format that would be perfectly suited for synchronising compared to a database-backed store. In the Sync with FreeBSD/Linux thread you mention that your sync engine works with APIs that Outlook, Palm, etc provide and does not sync to an OS. You also questioned whether it would be worth investing in synching (for example) with Evolution and not wanting to deal with changes in versions. This is directly related to my original request of being able to sync DejaOffice data with ics/vCard. Evolution, Kontact, and plenty of other programs (open and closed) store data in these (open) formats and this has not changed in many years. So an investment in a program or mechanism to synchronize with ics/vCard files would actually open compatibility with many applications that are already out there, including Evolution, Kontact, and Apple's iCal.

Although I'm hardly an expert in this field, I would envision the technical solution would be something like read the local PC ics/vcard data into a database on-the-fly (i.e. create an SQLite database in the same schema you are currently using), read the SQ Lite data from the handheld (via TCP/IP seems smart here) compare the two databases, based on bidirectional sync setting (Phone->PC, PC->Phone or Phone<-->PC) you update the SQ Lite databases accordingly, and then export back out from the local SQ Lite back into ics and vCard.

I might add, that writing such a program that's *cross-platform* (Windows/Mac/Linux) seems very doable given today's plethora of cross-platform toolkits (i.e. qt), development tools and IDEs and in this case, lack of need for exotic technology (i.e. you'd need TCP/IP support, local file read/write and some GUI). Although I'm not the biggest fan of Java applications, it's plausible such a program could be relatively easily written even in Java.

Maybe you guys would consider submitting this project to the Google Summer of Code? After all, Android is a Google product, so this is related :).

Finally, your comment in the Sync w/FreeBSD/Linux questions whether or not people are willing to pay for this "in a market where no one pays for anything." I would like to point out that a cross-platform program that lets users sync their PDA/Phone PIM data with their choice of desktop PIM application is exactly the kind of thing people pay for. You'd be able to kill so many birds with one stone (Mac/Windows/Linux), that it seems like a no brainier to me. And, I don't know anyone else who is even close besides you guys!

Best regards,

06-05-2010, 08:44 PM
Hey thanks for the response.

I'm listening. Where is the model? What successful software company makes money (from customers) selling a cross platform model. Not Hardware, like Apple, or IBM. Not VC funded or IPO funded. I'd like to hear what Software-only company makes primary revenue from customer consumers for selling software based on the platforms you mention. I can't think of any.

06-06-2010, 07:05 PM

I can give you a few examples right off the top of my head, though many are in the same category of engineering software (a multi-billion dollar industry), and there are a few others that I either know of (i.e. have used) or have seen listed:

Mathworks (Matlab), Wolfram/Mathematica, Mentor Graphics (more than 50 different engineering programs like ModelSim, Expedition, DxDesigner), Qt/Trolltech (cross-platform library, commercial), Cadence, Ansoft, PTC/ProE, Autodesk (Maya), Houdini (3D graphics, modeling), LabView, MySQL, Turbocad (Win/Mac), TeamViewer (cross-platform, free for non-commercial use), VirtualBox (Sun/Oracle, only free for non-personal use), VMWare Workstation, PCAnywhere, UltraEdit (text editor), SlickEdit (text editor), Perforce (very powerful revision control system, MSFT uses it interally), Beyond Compare (diff tool), Bibble (RAW/JPEG image processor for digital photography), ActiveState products (Tcl/Perl/Python), Softmaker Office, Witopia (VPN), RealVNC, Navicat, QCad, ArcGIS, Zend Studio, iMindMap, activeCollab, Flash Media Server (Adobe), ForeUI, EarthBrowser, SPSS, RationalPlan (alternative to Microsoft Project), AutoPano Pro (panoramic photograhy program), Xeno (accounting tool, supports Mac/Win/iPhone), LightZone (RAW/JPEG image processor, writteni n Java), Moneydance (alternative to Quicken, Java-based, cross-platform), PDF Studio (PDF editor), Vuescan (cross-platform scanning library & software), Aqua Data Studio, Adobe Flex Builder, RubyMine, Qnext, Pano2vr (panoramic tool), Jira (bug tracking), DBWrench

There are also games like Doom3 (Win/Mac/Linux), Counterstrike and so-on.

You'll notice in that list are some big players we all know like Adobe, VMWare, Sun/Oracle in addition to the engineering software companies (Mentor/Cadence/Synopsys/Ansoft) and *plenty* of smaller organisations who seems to be doing well (i.e. Jira, Bibble). Aside from someone like Sun/Oracle, these are software-only companies. And this is only a small list, there are plenty more.

- pdaexpert

06-21-2010, 11:09 PM
pdaexpert, welcome to the Forum!


We DO have an open file format. The SQLLite file we place on the SD card, while not a Standard format, is also not a closed format. Anyone is free to write a sync protocol to feed the file. We will share details and answer questions about our implementation. It should be very straightforward. In this way, anyone can write a Sync, like a Wi-Fi sync for KDE and we'll assist and do what we can to support the solution.


So if I can figure out the format of the SQLlite database then I can write my own app to fill up / maintain the database and dl it to the ipad and DejaOffice will read it?

Oh and you do realise that at least some companies frown on putting iTunes on their property? e.g. I work in a financial services company and our machines are pretty locked down, unless your willing to risk your job.

06-26-2018, 03:44 AM
I know that it is an old thread, but I share the interest with some requests.

For example sometimes I need to export many/all calendar entries
Also I would like to use alternative desktop PIM apps based in standard formats, like Mozilla thunderbird ..

I am aware that your business model is "sync" instead of "export/import" but maybe you can sell this "import/export" feature, at least I would pay for it.

Regarding sqlite db, it is great to have access to it, in fact I managed to export memos.
I suppose with skills and time we can export whatever, like calendar entries to .ics
Have you a functions/sql scripts to do that?

What about about a repository to share information and useful queries for your db (of course supporting the effort by with a donation system)?

06-26-2018, 08:05 AM
dpgo, thanks for the inquiry.

A business model is made because someone has decided to package a set of features, and promoted a way to have income exceed costs.

Something we learned early on is that there is no profit in making an open-ended package. If we supply a set of scripts, we then have to support the scripts to all comers. We get buried in requests on how to use, or requests to modify.

People often underestimate the cost of handling customer requests. Think of it this way. To staff this bulletin board, customer support, facebook, twitter, customer emails, for 40 hours a week divided by the total number of messages. programmer time etc. The cost is roughly $7 per message. So it is highly conducive to sell packages where a majority of people can interact with a minimum of messaging back and forth.

We documented the SQL file, and several companies have used it. It's pretty obvious what the fields do. But if you want to trade your time, to my staff time; something that is free to you now needs to cost me money to fulfill. That doesn't work for me as a reasonable business model. While CompanionLink and DejaOffice are not wildly profitable, in the long term we have been "in the black" and a lot of that comes from keeping a sharp eye on keeping staffing in line with revenue.

CompanionLink offers premium support, and we'll do pretty much what you need with it. If you want scripts, buy a premium at $129 and we can get you about an hour of programmer time, or about 4 hours of QA time, to make scripts.

We have a major project under way, and I'm very excited about it. It's a package. We are going to introduce "DejaOffice for Windows", a standalone version that runs on the PC. It's very cool. Expecting to have this in Sept 2018.