Poll: Flashcard sync: online or offline?

How would you prefer to synchronize Pleco flashcards between devices?

  • Online: each device connects to a central Pleco server to synchronize changes

    Votes: 18 69.2%
  • Offline: flashcards are synced directly between devices via Bluetooth or local WiFi

    Votes: 8 30.8%

  • Total voters
    26

mikelove

皇帝
Staff member
We're trying to flesh out the design for our flashcard sync feature in 2.3 a bit, and before anything else there's one basic question we need to nail down: do we design this to work via a direct connection between two devices (WiFi or Bluetooth) or do we set it up so that each device connects to a central Pleco-operated server and synchronizes flashcards with that?

We'd been leaning towards the latter option, but we've gotten concerned that a) people might not like having their vocabulary lists sitting on a web server somewhere, especially if some of the terms they're learning are names / expressions that certain governments might have a problem with, and b) network connections for many users may be too slow / unreliable for this to work well for them. So we're thinking that offline sync might be a better thing to start with (though we'd like to support both eventually).

If we did offer offline sync, we would probably still also offer an online backup feature where you could bring your own service (Dropbox e.g., though as others have said we'd have to offer an alternative option for users in China) - that would be extremely easy for us to implement if it didn't include a synchronization component.

So: what would you prefer, online or offline flashcard sync between your iPhone and iPad?
 

mikelove

皇帝
Staff member
I should add that both options should cover Android too - there's even an implementation of Apple's local device finding protocol (Bonjour / Zeroconf) for Android, so we could probably even offer offline sync between your iPhone and your Galaxy Tab if there were demand for such a thing. (more likely to be useful for people migrating between platforms permanently, I suppose) Though whether you could be running the same copy of Pleco on both devices is still TBD...
 

gato

状元
we would probably still also offer an online backup feature where you could bring your own service (Dropbox e.g., though as others have said we'd have to offer an alternative option for users in China)
You could allow the cards to be emailed. That might be easy to implement.
 

mikelove

皇帝
Staff member
gato said:
You could allow the cards to be emailed. That might be easy to implement.

We already do offer that - it's one of the two recommended ways for backing up flashcard databases in the manual. But if we finally add support for embedding images / audio files in flashcard databases (hoping that'll be finished by 2.3 too) then some people's flashcard collections might pretty quickly start to exceed email attachment size limits...
 

gato

状元
I see. You could have an email option on the backup screen, as well, so that people don't have go to the file manager to find it. The email option under file manager is more of a general email option. Users might not automatically associate that with the backup of flashcards.
 

mikelove

皇帝
Staff member
gato said:
I see. You could have an email option on the backup screen, as well, so that people don't have go to the file manager to find it. The email option under file manager is more of a general email option. Users might not automatically associate that with the backup of flashcards.

Good point - that ought to be a more seamless process, though I imagine a lot of people would prefer to just copy the backup to their computer via USB.
 

pleco10

秀才
How about Evernote sync? Evernote seems rather business friendly, always encouraging users to look at the Evernote Trunk. Perhaps Pleco can tap into that somehow (flashcard backup etc).

I currently use Evernote (free version) in conjunction with Awesome Note, and would still have plenty of monthly usage quota spare for text sync with Pleco.

In terms of implementation, please implement it such that the notebook in Evernote has a prefix [Pleco], e.g. the notebook should be named [Pleco]Flashcards. (Awesome Note notebooks/folders has the prefix [aNote])
 

mikelove

皇帝
Staff member
pleco10 said:
How about Evernote sync? Evernote seems rather business friendly, always encouraging users to look at the Evernote Trunk. Perhaps Pleco can tap into that somehow (flashcard backup etc).

Worth investigating, I suppose... does anyone know if Evernote is blocked in China? Or is hosting the sorts of public content that are likely to eventually result in their being blocked in China? (with Dropbox it was kind of inevitable even before they were actually blocked)
 

pleco10

秀才
Hmmm... there is notebook sharing in Evernote... this could be problematic to censors. Perhaps stick with the offline sync (i.e. backup through a file in accessed through a web browser via wifi), while SIMULTANEOUSLY rolling out MULTIPLE cloud based solutions.
 

gato

状元
Evernote is not currently blocked in China. I don't think it's likely to be blocked any time soon because sharing is not one of its main features. But if it does become known for sharing in the future, then it would become a target for blocking.
 

mikelove

皇帝
Staff member
pleco10 said:
Hmmm... there is notebook sharing in Evernote... this could be problematic to censors. Perhaps stick with the offline sync (i.e. backup through a file in accessed through a web browser via wifi), while SIMULTANEOUSLY rolling out MULTIPLE cloud based solutions.

Well only if people start using it for general-purpose content hosting, but that could easily happen - nobody would have thought Dropbox was much of a target for blocking first either.

What do you mean by "multiple cloud based solutions"? For file backups only or for sync too?

gato said:
Evernote is not currently blocked in China. I don't think it's likely to be blocked any time soon because sharing is not one of its main features. But if it does become known for sharing in the future, then it would become a target for blocking.

True, but Dropbox wasn't originally known for that much either... I don't think relying on any single non-Pleco-provided solution is a good idea, anyway; with our own servers we can take care not to do anything that'll get us in trouble, but we have no such assurance with another cloud-based sync system.
 

pleco10

秀才
mikelove said:
What do you mean by "multiple cloud based solutions"? For file backups only or for sync too?

I just meant that perhaps Pleco could backup to multiple places in the cloud - i.e. Evernote, Dropbox, box.net, Google Docs (1MB filesize limit :( ), Windows Live SkyDrive et al, similar to CamScanner and Genius Scan.

For Evernote, this would amount to syncing only for personal use, not publicly shared syncing (unless the notebook is shared, I guess. Dunno. I haven't used the sharing feature. Sharing notebooks was only recently added in the Evernote for Mac desktop app.)

I guess a Pleco in-house-hosted server would be better, so everyone can share their flashcards even more easily than now (i.e. beyond DLing from the forums and then manually importing it to your own iOS device). Hopefully this can be implemented, alongside a personal backup/syncing service in the cloud like Evernote.

In terms of priority and functionality, I reckon a Pleco-hosted server would be the way to go, in order to distribute flashcards for the masses (hence my vote for flashcard online sync.)
 

mikelove

皇帝
Staff member
pleco10 said:
I guess a Pleco in-house-hosted server would be better, so everyone can share their flashcards even more easily than now (i.e. beyond DLing from the forums and then manually importing it to your own iOS device). Hopefully this can be implemented, alongside a personal backup/syncing service in the cloud like Evernote.

In terms of priority and functionality, I reckon a Pleco-hosted server would be the way to go, in order to distribute flashcards for the masses (hence my vote for flashcard online sync.)

Yeah, we really do need to make it easier to get / share flashcard lists... part of the challenge is that not everybody has a dictionary that covers all of the words in a particular list, so there are some under-the-hood improvements needed to do a better job of dealing with broken flashcard-to-dictionary links.

Dropbox's API requirements are kind of annoying - seems like we'd need to submit our app to them for approval before we could access Dropbox - so this makes me a bit wary of going to the trouble to support a bunch of these services when we could just roll out a single one ourselves that we can make sure everyone is able to access from China.
 

koreth

榜眼
I prefer online (centralized) sync just because the sync could happen automatically at the start/end of each flashcard session or as new cards are added, whether I'm at home or on the road. With Bluetooth sync I'll have to remember to fire up Pleco on all my devices at the same time in the same place on a regular basis, which, well, I probably won't.

I'd be happy to run a sync server on my own (Internet-accessible) host, BTW -- I know I'm not exactly mainstream in that regard but maybe there are enough people in my shoes to put a significant dent in both the "it might be blocked" and "it's expensive to maintain server infrastructure supporting tons of users" problems. Particularly paranoid people could run sync servers behind a firewall, for that matter, to avoid publishing their flashcards to the public Internet.
 

mikelove

皇帝
Staff member
koreth said:
I'd be happy to run a sync server on my own (Internet-accessible) host, BTW -- I know I'm not exactly mainstream in that regard but maybe there are enough people in my shoes to put a significant dent in both the "it might be blocked" and "it's expensive to maintain server infrastructure supporting tons of users" problems. Particularly paranoid people could run sync servers behind a firewall, for that matter, to avoid publishing their flashcards to the public Internet.

That's a very interesting idea, actually - the server software isn't likely to be particularly complicated, and open-sourcing it might even help to suss out some bugs we wouldn't catch otherwise. I'm not too worried about infrastructure scaling since this can be spread across lots of little servers instead of one big one if it's really a hit - 100,000 users might mean several billion database records, but nobody needs to access all of those records at the same time, and if we design around multiple servers initially (a single login database dispatching people to the server where their flashcard database lives) then scaling up is just a matter of launching another Linode or EC2 instance.
 

ben_gb

探花
I voted for online sync, mainly because I'm often travelling at short notice, and don't always pre-plan which device I'm taking. If I've been solidly working on the ipad and then leave it behind but forget to sync up to my iphone, then I'm stuck.

However, I can also see that an offline sync might be handy in many situations.

Maybe the best solution is to provide both options!? :D

Regards,
Ben
 

mikelove

皇帝
Staff member
ben_gb said:
However, I can also see that an offline sync might be handy in many situations.

Maybe the best solution is to provide both options!?

Possibly, yes - all a question of how we structure the sync code really. But it's good to be designing it primarily around one mode or another, there are optimizations that will make a lot of sense on a server (anything to mean less data going back and forth) but not really help much offline and there are cool things we can do offline that we can't really do on a server.
 

Tezuk

举人
I would like to see online syncs implemented asap, even if for an extra fee. Today while updating my iphone, "rotten" Apple decided to give me an error message and tell me that my only option was to restore my phone! My last pleco backup was a few weeks ago, and I have lost a lot of information... I guess it is my own fault for not backing up enough, but I would prefer to rely on technology that just works.
 

mikelove

皇帝
Staff member
Tezuk said:
I would like to see online syncs implemented asap, even if for an extra fee. Today while updating my iphone, "rotten" Apple decided to give me an error message and tell me that my only option was to restore my phone! My last pleco backup was a few weeks ago, and I have lost a lot of information... I guess it is my own fault for not backing up enough, but I would prefer to rely on technology that just works.

We're hopeful that Apple's soon-to-be-announced MobileMe revamp will include some sort of online backup / sync solution, but if it doesn't it's very likely we will develop one on our own.
 
I would love to see an pleco-hosted online backup. i dont know much about apples mobileme, but why rely on a apple-only based solution when you could offer one central api for different platforms/devices? is this more a question of ongoing costs for the hosting? i imagine the implementation of the service itself would not be that hard and also the database design would be rather simple, as i see it its more or less the fashcard-content linked to a dictionary-id (or to custom card).

also i dont know if this could be a copyright issue, but in the future you could think of providing kind of an online review of the flashcards. this is a feature i miss in pleco-flashcards even if i still prefer it over anki who offers that. not sure though if thats something you want to consider since you focus on mobile apps and maybe for marketing reasons wanna stay there ;)

to the original question: online-backup -> no need for a computer or any other second device, just my ipod. so for me clearly the online sync
 
Top