25 or so years ago, I learnt Esperanto (my first second language) by chatting on the Internet. I'd have two windows open - one with the IRC client, and the other with a terminal and a shell script that would grep a txt file with consistent formatting. "esp esperantoVerbPrefix/" or "esp noun," or "esp affix-" would typically return the correct result in a split second. Thanks to the simple grammar (that I had quickly memorized), I could hold conversations in near real time as a result.
I wish I could have learnt my other languages as easily.