18

Gabriel Wyner, in his book Fluent Forever, stresses the importance of minimal pair training early in the language learning process. He summarizes the research behind this suggestion in this video.

His book details how to create these cards for use in Anki. He also makes some cards available on his web site in the form of "Pronunciation Trainers", available or purchase (I've never used them, I cannot recommend them).

The problem I find is that Anki always presents the cards in a predictable order. This means that, given two sounds, A and B, I know I will always be presented with A first, then B. Even if I “try” to forget this, it’s impossible--especially for new cards, when I see the same set of cards 4 times in a row.

Also, after a few days, if I miss a review card, it will be even easier to cheat. Suppose I miss ‘A’. A moment later I come across ‘B’ and I know which one it is, and answer correctly, pushing that card forward for a month.

Now for the next month, every time I see that card, I know it’s ‘A’ without even listening to it.

Is anyone aware of a tool that overcomes this problem? I would be happy with a way to make Anki not behave this way, but I think this is a long shot. So another tool would be ideal (even one I pay for).

9
  • 1
    To the down-voter, care to explain what you think the problem is with the question, and ideally how it could be improved?
    – Flimzy
    Apr 13, 2016 at 17:31
  • 3
    I didn't downvote, but I would say: 1. Part of it is promotional for a product for sale ("available for purchase"). It seems to be a recommendation. 2. Does the problem you mention (presents the cards in a predictable order) only occur when using the mentioned resources? If not, just describe the situation generically. 3. I think you can leave out the first two paragraphs. The rest explains the issue and the problem you are trying to resolve.
    – user3169
    Apr 13, 2016 at 18:57
  • @user3169: The problem is specific to his style of "minimal pair" cards... this is why I provide the links, to give context (not to promote his products).
    – Flimzy
    Apr 13, 2016 at 18:59
  • 2
    I find that claim a bit hard to believe, though... if I was trying to promote his product, why would I be asking for an alternative?
    – Flimzy
    Apr 13, 2016 at 19:08
  • 2
    I've not noticed that Anki is very predictable. How long have you had this problem?
    – Hatchet
    Apr 13, 2016 at 20:32

3 Answers 3

9

Getting Anki to work with minimal pairs is tricky but possible. I will present a card template with only one card that will choose a random word from the minimum pair on each appearance of the card. Since this is only one card, therefore there are no scheduling issues. I use it for my own minimal pair training. The method works with the desktop client and AnkiDroid.

  1. If you are using a desktop client, then install replay buttons addon.
  2. Create a new card template with 4 fields: "First Sound", "First Word", "Second Sound", "Second Word". In the "Sound" fields you'll be putting the audio files. In the "Word" fields, you'll be putting their word descriptions, e.g. "knees /niːz/".
  3. In the front template put the following text:

    <script>
    function persist(cb) {
      window.setTimeout(function() {
        // Determine whether to use Anki's Bridge object (Desktop) or sessionStorage (AnkiDroid) to store data across sides.
        // Note that sessionStorage can only store strings.
        var dummy = {};
        var mode = "dummy";
        if (typeof(py) !== "undefined") {
          mode = "py";
          py.data = py.data || {};
        } else if (typeof(sessionStorage) !== "undefined") {
          mode = "sessionStorage";
        }
        var dataObj = {
          setItem: function(key, val) {
            if (mode === "dummy") {
              dummy[key] = val;
            } else if (mode === "py") {
              py.data[key] = val;
            } else if (mode === "sessionStorage") {
              sessionStorage.setItem(key, val);
            }
          },
          getItem: function(key, def) {
            var val = undefined;
            if (mode === "dummy") {
              val = dummy[key];
            } else if (mode === "py") {
              val = py.data[key];
            } else if (mode === "sessionStorage") {
              val = sessionStorage.getItem(key);
            }
            if (val == null) {
              return def;
            } else {
              return val;
            }
          },
          tryItem: function(key, val) {
            var currVal = dataObj.getItem(key, undefined);
            if (currVal == null) {
              dataObj.setItem(key, val);
              return val;
            } else {
              return currVal;
            }
          },
          clear: function() {
            if (mode === "dummy") {
              dummy = {};
            } else if (mode === "py") {
              window.py.data = {};
            } else if (mode === "sessionStorage") {
              sessionStorage.clear();
            }
          }
        };
    
        if (!document.getElementById("back")) {
          dataObj.clear();
        }
    
        cb(dataObj, mode);
      }, 0); //Execute after Anki has loaded its Bridge object.
    }
    persist(function(data, mode) {
      var id = data.tryItem("which", Math.random() >= 0.5 ? "first" : "second");
      document.getElementById("front-" + id).style.display = "block";
      if (document.getElementById("back")) {
        document.getElementById("back-" + id).style.display = "block";
      }
    });
    </script>
    
    <div id="front">
    What word do you hear?<br>
    <span id="front-first" style="display: none">{{First Sound}}</span>
    <span id="front-second" style="display: none">{{Second Sound}}</span>
    </div>
    
  4. In the back set the following

    {{FrontSide}}
    
    <hr id=answer>
    
    <div id="back">
    You have heard the word:
    <span id="back-first" style="display: none">{{First Word}}</span>
    <span id="back-second" style="display: none">{{Second Word}}</span>
    </div>
    
    <div id="note">You may practice both words again:<br/>
    {{First Word}} {{First Sound}}<br>
    {{Second Word}} {{Second Sound}}
    </div>
    
  5. I use the following styling

    .card {
     font-family: arial;
     font-size: 20px;
     text-align: center;
     color: black;
     background-color: white;
    }
    
    #note {
      border-width: 5px 0px 0px 0px;
      border-style: solid;
      margin: 50px 0px 0px 0px;
      padding: 0px;
    }
    

Now you are ready to add new notes and train. This method is based on this excellent post.

Example of how it should look in practice:

enter image description here

enter image description here

7

Quizlet seems to be a good choice. By searching up "minimal pairs linguistics", you get a ton of flashcard decks to use here.

In Quizlet, the cards are always randomized and there are many options to change the way the flashcards are to suit your learning style. For example, there are two different views, audio, a button used to shuffle, and a feature that changes what text is shown on the flashcard. Though Quizlet is not focused on linguistics, the site contains lots and lots of flashcards decks for linguistics. Even try to make you own to quiz yourself/keep track of what you know.

0

Anki have an extensive card markup and single note transformed into several cards. You should create note with separate sounds and add 2 card types which differ by ordering of sound samples.

So you have fields Word1, Word2, Sound1, Sound2 and two card types:

### Front:
{{Word1}} or {{Word2}}?
[sound:{{Sound1}}]

### Back:
{{FrontSide}}
<hr id=answer>
It's {{Word1}}!

and:

### Front:
{{Word1}} or {{Word2}}?
[sound:{{Sound2}}]

### Back:
{{FrontSide}}
<hr id=answer>
It's {{Word2}}!

There is option to shuffle notes. But usually cards start coming in delay of one day with Anki bury mechanic but with following increasing repetition intervals they would appear at random.

Please read manual http://ankisrs.net/docs/manual.html#basic-templates

5
  • From the question: "The problem I find is that Anki always presents the cards in a predictable order."
    – Flimzy
    Dec 28, 2016 at 9:39
  • 1
    You are wrong to some extents. If cards created from single note they will be shown on different days. ankisrs.net/docs/manual.html#siblings-and-burying I've explained how to make two cards from single note.
    – gavenkoa
    Dec 28, 2016 at 12:14
  • They are shown on different days, but in a predictable order. This entirely defeats the purpose.
    – Flimzy
    Dec 28, 2016 at 19:05
  • @Flimzy Anki can present cards in the order you entered them or in random order. Have you checked whether the "random order" option is active?
    – Tsundoku
    Dec 29, 2016 at 16:59
  • 1
    @ChristopheStrobbe Random order only applies to the order of notes on a given day, and doesn't randomize which card you'll see from a given note. This means that you will always get card 1 before card 2 of a given minimal pair. And worse, if you miss one, one half of the pair will be rescheduled and the other not. This leads to potentially weeks of review of only half the pair. Not meaningful random at all.
    – Flimzy
    Dec 29, 2016 at 18:27

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.