I come from a very similar background as the writer. As a young man, I showed high potential for languages. So when I went to college, I loaded up on languages, graduating with 6 different languages at at least the 200-level and fluency in 3 of those languages. Unlike the writer, I chose neither military nor government work upon graduation, but instead worked as an ATA-certified translator for 10+ years, primarily translating pharmaceutical documentation and medical studies.
I've since moved into professional software development and am now rusty in the spoken languages I used to be fluent in. I work with a number of different programming languages, primarily doing web development since that's where the money is in remote work (although I also have a strong interest in embedded programming). In between, I also finished graduate school in public health (don't ask!), taking multiple upper-level biostats and epidemiology courses.
Anyway, people were always interested in how I learned so many languages. As it turned out, I used similar techniques as what the writer describes to not only learn languages, but also learn graduate-level quantitative coursework, and now programming languages, algorithms, and data structures (an ongoing task!). People are taking exception to her description of the technique as "rote learning". Perhaps a better emphasis would be on repetition, drilling, and fluency. But for me at least, this did entail things like flash cards -- Quizlet is a godsend -- and repeated, focused practice of short problems.
I have found that the technique doesn't seem to work as well for complex algorithms as it did for math and languages. Maybe because it's difficult to break down some algorithms into small parts, perhaps because I just haven't figured out how to do so yet, or maybe I'm just getting older.
But I am in total agreement with the writer that modern education does a grave disservice to young learners by discarding rote learning and repetition.