Spreche : A Tool for Learning German Interactively
Learning German can be quite tricky for beginners. Especially when you want to practice, you will need exercises. What if you can practice interactively with the bash command line?
Origin of the ideas
Indeed I wanted to build a chatbot.
A fully interactive conversation between the user and CLI would be much fun (to build and to play). However I need something quick. As my weekly German course goes on, I want to keep adding new grammatical features I learned real quick. So the idea deviated into a quick sentence building CLI instead.
I build a prototype in
Scala so designing the language model
in Functional programming can also help accustoming myself into
the German grammatical idea more naturally.
The UI is simple. The CLI prompts for a sentence from the user and as they put it in,
the CLI makes a correction in terms of
the grammatical case, conjugation, gender.
The language model
The sentence is split into following generic components.
- Subject claus
- Modal verb claus (optional)
- Verb claus
- Object claus
Of course, I'm aware that it sounds very odd to have such these clauses which don't make much sense in grammar thingy. However it's intuitive to reference the component within the sentence by their function and I refer to them as clauses.
The project offers the following grammatical functions.
- Gender awareness
- Verb conjugation based on subject
- Cases : Nominativ / Akkusativ / Dativ
- Mixture amongs cases
- Modal verbs
The project is opensource and available publicly on Github here in the following link.
The project is just in its initial stage which has lots of grammatical things to add. As my German course goes, I will keep adding more.