Systems, methods, and products for language learning that may determine a level score of a learner based upon responsive inputs received from the learner during sessions. A pedagogical value threshold is determined based upon the level score of the learner and a resource difficulty score of a resource containing text having one or more words. Each word having a word difficulty score satisfying the pedagogical value threshold is stored into a non-transitory machine-readable storage media keyword store.