The Shallow End of Languages

Learning a foreign language for the first time? Start with Esperanto:

The results of these studies … demonstrated that studying Esperanto before another foreign language expedites the acquisition of the other, natural, language. This appears to be because learning subsequent foreign languages is easier than learning one’s first foreign language, whereas the use of a grammatically simple and culturally flexible auxiliary language like Esperanto lessens the first-language learning hurdle. In one study, a group of European secondary school students studied Esperanto for one year, then French for three years, and ended up with a significantly better command of French than a control group, who studied French for all four years.

I’m not sure we can extrapolate these findings cleanly to the learning of programming languages. Sure, learners of a new language encounter syntax issues, and there are some languages with simpler syntax than others. But are syntax issues the primary obstacle for those learning to program? If the bigger obstacles are algorithmic, the choice of a first language becomes less important.

Also, speaking and programming are very different activities. Could one year of Python and three years of Java produce a better Java programmer than one who used Java for four years?


  1. SkySchermer says:


    If I were shooting from the hip, I would think that learning Esperanto before French would better enable one to see where the language structure intersects. That is, what parts of learning a language are really fundamental rather than specific to a given language. If you were just learning French and someone gave you a grammar rule, it would be harder to know if the rule was some specific, arbitrary thing as opposed to an intuitive ‘natural’ extension of building a language. What the two languages have in common is more likely to be fundamental to building a language, and that is the only thing that would be reinforced by learning both languages. (Apart from the meta-data that is associated with the learning environment.)

    You’d expect to get the same thing with programming, even though programming is a different kind of thinking. We don’t build programming languages by starting with monstrously complex things and trimming them down, we start with small ideas and build up. Thus, where languages share common features, those features are more likely to be obvious or intuitive methodologies for constructing the languages, and a bigger part of the core of what problems the language structure is designed to solve.

    1. Chris Johnson says:

      Sky, I like this idea. I think you’re saying that in learning a second language, we actually notice syntactic patterns. With the first language, we learn entire expressions more than generative rules. If this is the case, sampling another programming language would make us more fluent.

  2. Perhaps is a first language gets out of the way sooner, students get to spend more of their time learning to decompose problems and compose algorithms. But I think the first language should have enough “stuff” help students learn some important ideas early.

Leave a Reply

Your email address will not be published. Required fields are marked *