Using E-Flashcards in 351
Overview
There is a ton of terminology in 351 that is introduced starting from Day 1 and we move at a quick pace through lectures where these terms build upon each other. The staff has created decks of flashcards that are synchronized to our lessons. This is an optional supplement to your studying; it can be used as you please, to whatever degree that you please. Studies have shown that the most effective method for studying is to create your own flashcards, rather than relying on ones written by someone else; we will also provide instructions on how to generate similar cards..
Anki is a flashcard software that utilizes "spaced repetition" (see and ) to achieve long-term memory recall. Its main features are: extensibility (large number of add-ons to customize your experience), synchronization (you can access your cards through a web browser or have them downloaded on your computer), and media-richness (you can embed audio, images, and scientific markup in your cards).
The remainder of this document is a quick tutorial on how to install Anki and how to generate the flashcards from the staff-provided definitions.
Anki Basics
Installing Anki
Anki is free on desktop, and consequently, the newest desktop version
is the most suggested version to use for ease of access and
organization.
You can directly download the application via the official
Anki website.
Lecture Subdecks
You can find the newest subdeck for each recent lecture on the course schedule next to that day's slides or linked from the lecture's lesson on Ed.
The terms released every lecture can be added into your master deck to keep each reading's terms separate from one another. Each subdeck can also be optionally assigned a different preset with different learning targets and review priorities, so you can place more or less importance on the content of each class as you wish. Studying the resultant master class deck mixes terms from all subdecks together into your session, but more on filtering later.
Adding subdecks into your cumulative deck
After downloading the .apkg
, open up Anki and select
Import File
.
After selecting the subdeck file to add in, Anki will automatically
parse for identical cards and skip them if you reimport an existing
deck on accident.
Otherwise, the subdeck will appear in your deck structure and you'll
be free to drag it anywhere you like.
Flagging (Priority)
Lecture decks come with a preexisting flagging system that the staff created to reflect the relative importance of terms beyond 351. We will cover a lot of details that aren't important in the long run, but are important in this class to illustrate the course learning objectives. This is NOT intended to be a difficulty rating; all the new terms are likely challenging. Feel free to ignore the flags or tweak them as desired.
- Red (P1): Highest rating. Crucial to the baseline understanding of 351 material or to the main takeaways of the course and should be focused on.
- Orange (P2): Average rating. While future concepts may not build extensively on the term, these are the most functional terms across the board, and they are likely necessary in explaining P1 terms.
- Blue (P3): Lowest rating. Knowing what the term means in the context of this class will do you well, but depth of knowledge is not necessary as it may be too specific or niche to be useful in the broader context.
Setting your own flags
The easiest way to create your own flagging/tagging system is by
learning how to in the
Browse
pane.
There are a total of 5 possible priorities, and the quickest way is
to select cards and use the keyboard command Ctrl/Cmd-#
,
where # represents the level of priority and thus the color of flag.
Filtering decks for precise studying
Assuming that the per-lecture subdecking works well for your organizational preferences, you may want the option of creating new subdecks that, for example, are filtered by flag. There is a ton of documentation on ways to filter decks, from tags, to state, to card types (see for links to learn more complicated manuevers), but the most relevant and straightforward would be to create colored decks and proportionally study them based on importance.
To start creating a filtered deck, press F
to bring up
the prompt menu.
Then, the search filter can be personalized in whatever way you'd
like.
For example, to create a deck of all orange P2 cards that are in the
existing cumulative deck CSE 351 21au
, input
"deck:CSE 351 21au" flag:2
into the Search
box under Filter
.
This will create a deck of chosen naming that contains all of the P2
flagged terms in the overall deck.
This works for filtering in lecture subdecks as well:
"deck:CSE 351 21au::lec04 Data III, Integers I" flag: 2
and for other colors of flags.
Advanced Anki Options
Editing decks
You can easily get by using our Anki decks without having to edit the preexisting decks or cards we provide, but in case you wish to, we've presented the most common changes you may want to make:
Adding cards
In the Decks
menu, click on the deck that you wish to
add the card to, and then click Add
.
This will take you directly to the correct Anki "directory" and just
saves a lot of deck name typing.
All of the cards we provide are of the Basic type, but the others can
be very powerful for creative memorization techniques.
If the card you enter has a duplicate front as another in the deck,
Anki will highlight your card in red and give you a warning.
Otherwise, click Add
at the bottom, or use the keyboard
shortcut Ctrl/Cmd-Enter
to speed things up.
Deleting cards
Click on the deck containing the term you want to delete, click
Browse
, scroll to find the term, and right-click on the
row.
The option is at the bottom of the drop-down.
Changing definitions, flags, tags...
To edit definitions, change the flagging colors/schemes, or add other
fancy features like tags, click on the deck or subdeck you want to
edit, and click Browse
in the upper menu.
This brings up a new window that allows you to focus on each
individual card by clicking on its row, and change the
terms/definitions in a very intuitive manner.
Right-clicking on the cards will also pull up a variety of more
complicated manuevers.
Additional Resources
If you are interested in further learning Anki for use in other classes and contexts (originally very, very popular in the premed studying community), then check out what the staff referenced to figure this stuff out:
Staff-Provided Decks
- Binary Encoding:
- Memory & Data I:
- Memory & Data II:
- Data III & Integers I:
- Integers II:
- Floating Point:
- x86-64 Programming I:
- x86-64 Programming II:
- x86-64 Programming III:
- x86-64 Programming IV:
- Procedures I:
- Procedures II:
- Executables & Arrays:
- Structs & Alignment:
- Buffer Overflow:
- Memory & Caches I:
- Memory & Caches II:
- Memory & Caches III:
- Memory & Caches IV:
- Memory Allocation I:
- Memory Allocation II:
- Memory Allocation III:
- System Control Flow & Processes I:
- Processes II & Virtual Memory I:
- Virtual Memory II:
- Virtual Memory III:
Written by Julia Wang (julialwa@cs). Updated by Justin Hsia (jhsia@cs) and Connie Chen (cchen16@cs)