Sunday, March 8, 2009

Mnemosyne: Getting Things Memorized

It had been bothering me since I joined this lab that I couldn't confidently just read a protein sequence and understand what it meant — naming the residues, picturing the side chain structures, and understanding the significance of replacing one residue with another. I expected that I'd just pick it up naturally from working with sequences and structures, and that did happen somewhat. But I wanted it to be as easy as reading English, and that level of completeness doesn't happen without some rote memorization.

That brought to mind a Wired article about Piotr Wozniak and his spaced-repetition memorization program, SuperMemo. When I originally read the article I wasn't in grad school and didn't have an urge to memorize any particular list of things. Anyway, SuperMemo appeared to be Windows-only software, and an algorithm like this would be more fun to code from scratch anyway. Enough fun, really, that there had to be one or two open-source implementations floating around.

Mnemosyne popped up as the closest match in an Ubuntu package search, so I'm running with that. Putting the flash cards together was pretty simple; I was able to do it in a few minutes from inside the program and export it in the standard XML format. I zipped it up with a quick plain-text README and uploaded it to the project home page as the Amino Acids card set.

The content came from a slide in a lecture, and I did a quick sanity check on Wikipedia before uploading. The notation for the 20 standard amino acids is complete, and that was the main goal of this. The assignment of amino acid "groups" seems to be a little arbitrary, depending on the source (by structure, functional groups, chemical properties, etc.), and I tried to make the categories complete without too much overlap -- there's a small deviation from my slide here. I also added another category for "side chain properties", pH and polarity. Another enhancement might be the standard codons for each amino acid, though I'm not sure I want to deal with that yet.


Kamil said...

Hi Eric, I added structure PNGs to your card set (and a few missing cards).

The Mnemosyne page [1] doesn't seem to let me register, so I'll leave a link here to the new zip stored in my DropBox [2]. Maybe you can post it on the Mnemosyne page so others can find it.


Eric Talevich said...

Thanks, Kamil! I'm having trouble getting the images to display correctly in Mnemosyne, but when that's sorted out I'll upload the collection to Mnemosyne and credit you.

Stephen said...

Eric and Kamil- you are both so freaking awesome! I know these posts are 3 years old, but I wanted to let you both know how helpful this deck has been for me.

I'm currently waiting to get my Mnemosyne account registration approved. Once I do, I will add a comment that points to Kamil's dropbox link for those of us that would like to have the structures included in the deck.

Again, thanks very much to both of you!

Eric Talevich said...

Kamil & Steven,

I've uploaded the new card set to Mnemosyne, officially. Check it out: