DGC's Random Mutterings

Home
Archives
Control Panel
DChampagne.com (yeah, it's pretty basic)
My Resume
My Full Background
Blogs worth following: Paul Madsen's ConnectID

Conor's Web Log of Esoterica

Planet Identity
Joel On Software
Mobile Open Source

Note: This blog is hosted on a server in my basement. Greymatter Forums

August 2008
SMTWTFS
     12
3456789
10111213141516
17181920212223
24252627282930
31      

Valid XHTML 1.0!

Powered By Greymatter

Home » Archives » August 2008 » Ranting

[Previous entry: "trivia"] [Next entry: "Frequent Flyer Upgrades"]

08/03/2008: "Ranting"


OK, so I am going to break a rule and rant. I'll leave out the actual name, so at least Google won't come up with the association, but it will be trivial to figure it out...

There have been a couple of posts in the vCardDav mailing list recently that just really tick me off, enough to send out a roiling flame - which I really try hard not to do. One of the editors, a young guy, kind of smart, knowledgeable in certain areas (but not sync) just can't handle that if you don't know something, it's OK to say so.

It is painfully obvious that he has never implemented a sync solution in his life, but he keeps taking a very superficial knowledge - which seems to mostly be just what other people have said on the mailing list, and acting like he's the expert. I guess part of it is to keep the distinction of being the editor, in charge of the spec, be an impressive authority, whatever, but it is just _so_ painful.

A couple of months back, there was a long sequence about why you can't just store Diffs, and send those to perform sync. I mean, the overall concept it pretty simple - Sync Metadata, like the Sync anchor - when you did the last sync, and what the state was at that time, can easily get out of sync with the actual address book. You have to store the Metadata separate from the address book, since they are different applications, and you as the sync client just have partial access to the address book info - and generally just to a fixed set of fields, not under your control. In the real world, people can easily use more than one sync client, reinstall the client, reset the device, and so on, and you just have to deal with it. Additionally, you don't get invoked when changes are made in the address book - you just run when it is time to do a sync. Generally you can get access to when an entry last changed, but that is about it. That means you can't just keep updating some diff tree, like a source code control system when things actually change- you would have to keep a copy of the entire address book with your client, to be able to compare all the data just before the sync. Doubling all your storage requirements and doing a lot of extra comparisons is generally a pretty dumb thing to do, especially on a limited, battery powered device, even if it would occasionally get more "accurate" results (but maybe still not what the user really meant)...

Anyway, here we go again - the exact same thing over again - in http://www.ietf.org/mail-archive/web/vcarddav/current/msg00554.html. Argh "Two-party sync is easy: just record diffs as metadata and exchange that in the sync protocol." Just absolutely no clue whatsoever about how things are done, or what is reasonable. Now, if this was a first time post about it, I would try to explain, but it is not - it just keeps on happening, so I just couldn't help it - I flamed him (a little) -http://www.ietf.org/mail-archive/web/vcarddav/current/msg00555.html.

The other time I really flamed him was back at http://www.ietf.org/mail-archive/web/vcarddav/current/msg00402.html. That time I was _really_ pissed off. He took a thread that I started to try and have a clear written explanation of why it was not just a bug in the client that it could not return the exact same vCard as it received in a subsequent sync (but rather a reasonable, and expected behavior), took a piece of what I said completely out of context, claimed that was my only reason, and that I was wrong, and that he was right with a slightly different view - which was _exactly_ what had been in my earlier port. I literally said that because of A, B, and C, thus D, and by the end of the thread he claimed that I said it was only A, and I was wrong, he was right, it was D. It was just so frustrating - I mean I was doing sync software when he started high school - working on the Intellisync SDK with Bob D., which sold incredibly well, did developer conferences on sync (I wasn't a very good speaker for the presentations, but did well in the hands on or 1 on 1 stuff), got sent to China to train people in Sync, all the courses and meetings we did at our site. I didn't mention that in the flame - not much point in being the old fuddy-duddy, and all that, but it was just ridiculous

Note the thread above was was caused from this post: http://www.ietf.org/mail-archive/web/vcarddav/current/msg00354.html, where the person just totally misunderstood how sync is done today, but after a couple of back and forth emails, he understood the explanations and revised his opinion. He was rather arrogant at first, but then really backed off when he understood. In a way, that thread was funny in a rather sad kind of way - a guy from Nokia insisting that it was merely a bug in the client to return a different vCard that was previously sent - when ALL Nokia devices map the data into a fixed structure, toss everything they don't understand, and return it all restructured the next time.

Unfortunately, there is also another guy there, incredibly smart, but also not well-versed in sync - an IMAP / Email guy, which is pretty different. His big thing recently was in http://www.ietf.org/mail-archive/web/vcarddav/current/msg00432.html.... He throws in this idea, which on the surface makes sense, but with closer examination it has some major problems - it works for all the cases that already currently work, causes a lot more collisions and extra data to have to be sent back and forth at startup, and fails worse than doing nothing for all the cases that aren't currently handled. It has a big advantage in that it is easy to understand, and has a clear set of rules for implementer's to follow, and looks wonderful, but it still fails terribly. But I try to explain why, and he just picks little pieces out of what I send, and refutes those (most of them incorrectly because we are using different terms), and then ignores things for weeks on end. It is just so frustrating. I'm sure he still thinks he's right, and that in an ideal world both sides will just store the full vCard, and never lose metadata, but that is just so far from any reality it is frustrating.

I'm certain that if we got together with some of the long-time sync people (OMA-DS people), plus the last 2 guys (but NOT the first one), plus some of the other contributors on the list, things could be hammered out and be really good. Instead, we have basically wasted a year. The DS group submitted a proposal way back, which the first guy totally rewrote in a badly broken way in the first draft, spent months arguing back and forth every little thing until it was all the way back to the original, and he still doesn't get it. There was a whole bunch of stuff about why some text was completely the reverse of what it should be, and all he could do (the second or third time around) was suggest a "compromise" to change the MUST to a SHOULD, instead of reversing the logic.

Anyway, it's no wonder my boss thinks the group is a total waste of time - but I just would really like that spec fixed, since I have spent so much time in the past battling with it's flaws...

I should just be smart and unsubscribe, or have the incoming emails automatically marked as read, so I don't see them until I take the time to go review a whole bunch - that way I wouldn't get so irritated at the ignorance and arrogance.... Maybe if there are yet more stupid things posted...

End of Rant (For now)

New Comment
Name:
E-Mail:
Homepage:
Repeat after Me: NO SPAM ALLOWED
Smilies:
smile shocked sad
big grin razz *wink wink* hey baby
angry, grr blush confused
cool crazy cry
sleepy hehe LOL
plain jane rolls eyes satisfied