From: Robert Siemer <>
Date: Mon, Feb 21, 2011 at 12:18 AM
Subject: Re: One patch, two plugins and development comments (, Chinese)
To: Anki Users <>

On Feb 20, 6:25 pm, Damien Elmes <> wrote:
> > (Just for the record: non-db-formats don’t have to be slow. I dump my
> > huge Chinese content via cPickle module in 1.2 seconds on a slow
> > EeePC. Quick!)
> cPickle is what Anki used to use, and what Mnemosyne 1.0 uses. Aside
> from the fact that it is not fast to read or write as deck sizes grow,
> it is a massive security risk. People could craft shared decks that
> reformat your computer.

-I don’t advocate pickling decks at all
-sqlalchemy is probably more fun than thinking about a nice pickle
-it is true that cPickle is not safe against attacks
-talking about security risks: How do you screen shared plugins?

> > Maybe some history statistics in the cards
> > table as well, but an infinite collection of per card+review history
> > doesn’t look like a feature.
> The revision logs hold valuable information that could be data mined
> in the future to improve the algorithm. Deleting them or collating
> them so they are no longer associated with individual cards anymore
> would throw all that data away.

Hm, forming averages over year old data does not throw _all_ away. But
lets say we keep them:
10 years of 100 cards reviewed per day, with each sampling 50 bytes of
information makes:
3650 × 100 × 50 = 18 Megabytes. Where do the other hundreds of
Megabyte come from?

> There's plenty that could be improved in Anki, and if you check the
> archives you'll see that I'm pretty open to constructive criticism.
> But your criticism is not constructive

Why not?

> you march in here with a limited understanding of the issues involved

What am I missing?

> and make bold statements about perceived design problems

I didn’t make bold statements.

> with zero attempt to inquire or understand why things are the way they are,

Zero attempts to understand!?? I even wrote code! I asked interesting
questions you didn’t answer and you tell me that I waste your time
instead! -- I explicitly inquired why the *Deleted tables are the way
they are!!

Robert  :-(