JSQ, LLC

Mobile and Web Applications

  • Increase font size
  • Default font size
  • Decrease font size
Home Blog Blog Only Two Steps Forward, Two Steps Back

Two Steps Forward, Two Steps Back

 

DianHua Dictionary SyncThe Sync system in DianHua Dictionary works reasonably well albeit with some performance issues and a couple of minor, fairly rare bugs.  The problem with it is that I didn't plan well for the inevitable...new features.  There just is no easy upgrade path.  As a result, I have been looking at a variety of options to replace it for quite some time.

One option I found in my research was a very young mobile implementation of CouchDB for iOS called Couchbase Mobile.  CouchDB is a NoSQL database best known for its multi-master replication capabilities.  After deciding to pursue a proof of concept implementation several weeks after I found it, I discovered that Couchbase Mobile had disappeared (sort of) and something called TouchDB popped up in its place.  With a little more research and some code reading, I pressed forward with a TouchDB iOS and CouchDB server architecture.

The end result was pretty spectacular.  An upgrade and full sync of my bookmarks took only a couple of minutes, and changes could sync in a matter of seconds depending on network speed.  I was so happy with the results that I moved the proof of concept into my mainline development and pressed forward with other new features.

Unfortunately, the honeymoon has ended.  Some of the data design decisions that were forced by sync performance issues caught up with me when I tried to implement new features.  To make those new features work, I would have to unwind the CouchDB sync implementation to the point that it would take 20 minutes to perform an initial sync on my own data.  Compounding the challenges, the TouchDB developers have moved into work on another product called Syncpoint which aims to help developers with exactly the kind of use-case DianHua requires, but the prospect of a stable implementation is looking like it is still several months away.

So after further reflection, I'm digging in and rolling my own Sync again.  This time around, I'm approaching it much differently and keeping an eye on future upgrades in the process.

At this point, you may be thinking...iCloud?  And yes, I keep thinking that as well.  I could roll out an iCloud version of DianHua very quickly, but it would mean iOS 5.x only and no integration with DianHuaDictionary.com (without jumping through some hoops).  Admittedly, there is less need for DianHuaDictionary.com now than there was 2 years ago when I first developed it, but there are several users (myself included) who use the site to build their bookmarks faster than searching each item on the device.  There are also features in our todo list that are easier to implement and more user-friendly if the data is available on DianHuaDictionary.com.

So like the title said, two steps forward, two steps back.  iCloud remains tempting, but I'm rolling my own for now.

 

Comments
Add New Search
robert  - sync   |2012-05-28 08:38:51
being able to sync bookmarks is the best thing this app has going for it IMO–
i use it all the time!!!
mitchell   |2012-06-14 00:48:31
after trying many other apps, and having two sons take on the language, i still
think this is the best learning tool
Janice   |2012-07-08 14:07:01
DianHua is terrific for ease of making bookmarks and adding vocab words to them.
Synching from and to iPad worked easily. DianHua works well as is and there is
definitely a need for it now.
Jason   |2012-08-07 17:48:39
Thanks for all of the positive comments. I'm still here and working diligently
to get the next version out the door.

If you're curious about the technical
details, the server side of sync is mostly done. I'm now working on updating
DianHua to work with the new server architecture.

Once that's done, I'll get
back to the remaining features I was adding before the latest sync detour.
Joey Ried  - Idea for DianHua   |2013-01-14 03:08:26
I just upgraded my iPhone 4 to a Galaxy S3. I've found replacements for all of
my primary apps for Android except a good Chinese dictionary. I've tried all of
the Chinese dictionaries in Google Play and none of them are as good at
searching and presenting information as DianHua. Android has both a larger
install base and unlike iOS there is no competition in the Chinese dictionary
segment. Please consider a port of DianHua.
Write comment
Name:
Email:
 
Website:
Title:
UBBCode:
[b] [i] [u] [url] [quote] [code] [img] 
 
 
Please input the anti-spam code that you can read in the image.

3.26 Copyright (C) 2008 Compojoom.com / Copyright (C) 2007 Alain Georgette / Copyright (C) 2006 Frantisek Hliva. All rights reserved."

Last Updated on Thursday, 10 May 2012 23:24