Some updates are in order… It’s been about nine months since my last posting here, and I wish I could say I accomplished more 😦 A lot of things happened in between: university started up again and finished (I graduated a few weeks ago), the economy went to shit and I’ve been working triple-hard on finding a job, and I’ve had some troubles with my SRS of choice, Anki.
But importantly what hasn’t happened is my finishing of the Jōyō kanji. It’s embarassing, but the reasons are simple: I simply don’t have the time to find my own way with the method I had been using over summer. I had been spending about five minutes per kanji researching it’s etemology, looking its components up in paper dicitonaries, finding examples of its use, and finally choosing the right keyword (which was only sometimes better than Heisig’s). Five minutes isn’t a lot of time, but even at the lax pace of 10 kanji/day, that’s an hour per day commitment, plus review time.
So very quickly I started looking for ways to spend my time that avoided inputting new kanji. At about frame 500 of Kanji ABC, I started inputting sentences using Japanese Sentence Patterns for Effective Communication (a great book I’ll have to come back to in another post) and only doing kanji as I needed to. This would work in spurts, but become painfully slow when I encounter kanji I hadn’t learned yet. But even at its fastest, it wasn’t that fast. I was still inputting sentences by hand (with text-to-speech and dicitonary lookups and everything). In a few months time I got a few hundred sentences and a few hundred extra kanji done. But the pace was disappointingly slow. At this point I got discouraged, and took a break from inputting new facts into Anki (although I kept up with the reviews). Depressed and frustrated at this new lack of progress, I decided to return to kanji with a vengence. In a few scant weeks I was nearing frame 1000 of Kanji ABC.
But then something happened: Anki broke. Or rather, Anki started crashing on cerain Audio files I was using for my sentence and kana cards. Not a show stopper, and there were some workarounds. But it got me worrying about what I’d do if a more serious bug was introduced/discovered in the future. It would not be good to lose faith in the integrity of a program I entrust all of my learning to.
But alas, there’s no better general alternative to Anki at the moment. I have some ideas that I am going to play with, but in the meantime I am refocusing on the Jōyō kanji and continuing my studies. The goal is to finish by the time I return to Japan in mid-May, which is fast paced but certainly doable. I’m also working on generating text-to-speech audio for all the sentences of JSPfEC using fluxcapacitor‘s painfully prepared spreadsheet. Stay tuned for updates on this front.
4 comments
Comments feed for this article
April 13, 2009 at 2:55 am
Damien
Ok, I’ll bite. What exactly caused you to ‘lose faith’ in Anki after looking at the internals? Also I’m assuming you’re an OSX user – have you tried 0.9.9.7.4? The audio should be fixed now.
April 13, 2009 at 5:17 am
jinsei
Damien,
Thank you for responding to my own blog post, and so quickly too. I’ve edited my post. I should have proofread it better as it ended up being more negative on Anki than I had meant to be. My apologies. When I said “I didn’t like what I saw” I was referring to some design choices that I would have made differently, and got me thinking as to how I would have written it, had I been in your shoes (but of course hindsight is 20/20). In the original post I elaborated on this point, but it got cut from the final draft because it really was a side-topic.
This statement was NOT linked to sentence which followed where I said “I’d lost faith in the integrity of a program I was trusting all of my learning to.” What I meant here was that twofold: first that Anki is under active development, and therefore unstable, and secondly that Anki decks are stored in a proprietary, effectively closed* data format that is not very amenable to version control.
*Yes, I realize that the source code is there so it’s entirely possible for someone to write a full Anki-import utility for another SRS. But it wouldn’t be easy, and no one has done it yet. So it’s effectively closed, for now.
I am entrusting hundreds if not thousands of man-hours of work to a program that is still under active development and might potentially break again in the future, or (god forbid) introduce a data-corrupting bug. And *that* is what worries me, but it’s my problem, not yours. I chose to use a pre-1.0 application, so I can’t really complain. And to your credit, Damien, there’s really nothing else out there like it. I rely on features in Anki that simply aren’t available anywhere else.
PS: I saw the update this morning. I’ve applied it and there’s been no crashes so far, but it’ll be some time before I know it’s fixed for sure.
April 13, 2009 at 6:08 am
Damien
Thanks for the reply. As you say, hindsight is always 20/20, and Anki has been developed incrementally for the last 2 1/2 years. I know there are some warts as a result of that, but I stand by most of the design.
I’m afraid I don’t agree with you on the ‘proprietary format’ part at all. The decks are stored in an sqlite database. Sqlite is the most deployed database program in the world, and there are a wealth of programs available to read the databases. In the event that you decided to move away from Anki, it would be quite easy to map the scheduling data and questions/answers to some other program. It would take less than an hour to write an importer for Mnemosyne for example – and note that Mnemosyne’s upcoming 2.0 version will be using sqlite too.
Using such a database layer also means that you’re safe from most crashes. Crashes due to software or power outages are rolled back and the database ensures your data is kept safe. Furthermore, Anki takes a backup of your deck every time you open it, which means that the recorded instances of data loss since Anki’s inception have been very few, and they mostly related to bugs in the syncing code.
Regarding the crashing bugs you were getting, they were the result of moving to a newer OSX audio library. The old library was generally stable but it would repeatedly crash on certain mp3 files, which is why the change was made. Since the new library is crashing too, I’ve moved responsibility to an external program so that a crash in the audio will no longer bring down Anki. As a bonus, playing video files becomes possible too.
Finally, Anki has not had a perfect track record, and occasionally things do break. But every time someone has reported a problem I have worked with them to fix the problem, and problems generally get resolved quickly.
July 4, 2009 at 3:50 am
danh
ay,
do you think you can send me fluxcapacitor’s sheet of jspfec?
thanks,
Danh