5 months ago
June 7, 2021
Translators, Meet Python: Most Popular Programming Language for Student Linguists
The first module of the University of Zurich’s Certificate in Advanced Studies in Translation Technology and AI starts with Computer-Aided Translation (CAT) and Basic Programming, with Python being the favored programming language.
The European Masters in Technology for Translation and Interpreting also appears to favor Python as its preferred programming language in three modules. Even the Master of Arts in Translation and Localization Management degree offered by the Middlebury Institute of International Studies at Monterey actually starts with two courses of introduction to programming with Python.
Many other courses and degrees use Python or Python-based toolkits in their curricula. So what makes Python appear to be the programming language of choice for translation studies?
User-Friendly and Ubiquitous
Middlebury’s course descriptions state that Python is “the easiest programming language to learn,” adding that it allows linguists “to program using easy to grasp techniques that build upon each other.”
That is pretty much spot on. Being high level and general purpose, Python is relatively more user-friendly than most other programming languages.
High-level languages use easy-to-read structures that are more human-readable, unlike low-level languages that directly run on a computer’s CPU. Being high-level also means Python is more portable — it can be used on many different computers without much need for modification, further increasing user-friendliness.
Meanwhile, general-purpose languages such as Python are, as it implies, meant to be used on nearly anything and everything. Python is simple in its syntax so it is easy and natural to learn, with its written code being easy to read, comprehend, share, and maintain (again, compared to most other programming languages).
After it was first created in 1991, Python — named after the British comedy troupe Monty Python — immediately became popular, overtaking more well-established programming languages. Today, it consistently breaks into first to third place on the TIOBE index, a ranking of programming languages that are most popular and widely used.
Due to its popularity, Python’s user base has continuously created new libraries, toolkits, and custom-built software packages that other Python programmers can use without writing their own code. This makes it even more useful for beginners and general purpose applications.
As of this writing, the Python Package Index, an official software repository for Python, has over 300,000 projects anyone can use.
Why Python for Translation Tech Studies?
The short answer is that Python, with its ease of use and popularity, has been widely used in computational linguistics; and, more recently, machine learning, which now powers contemporary natural language processing (NLP) and machine translation (MT).
In recent years, several scientific papers actually examined and discussed the choice of Python as the programming language for student linguists.
One paper from 2019 stated: “Python is freely available and simple to learn, which is extremely important for our linguistics students who as a rule are very unsure about themselves when it comes to even think[ing] about programming.”
The author, Assistant Professor Lesia Ivashkevych of the National Technical University of Ukraine, explained that Python can solve “really complicated tasks” and is “widely used in science in general and in computational linguistics particularly, and there are quite a few learning resources that are aimed at linguists.”
Ivashkevych’s paper, which appeared in the third edition of the peer-reviewed journal Advanced Linguistics, also noted that “the syntax of Python is similar to the English and it is easy to understand the already written code.”
It is true that other programming languages, such as C, are also widely used for coding NLP and MT applications. But in the context of students learning to code, Python appears to have the edge.
Used in Over 25 Countries
As Python and Python-based software projects are heavily used in machine learning and, thus, in applications of NLP and MT, widely popular toolkits like the Natural Language Toolkit (NLTK) have arisen. This further cemented Python as the go-to programming language for students learning to code applications for natural language and translation technologies.
The NLTK, as the toolkit site states, is a “platform for building Python programs to work with human language data.” It offers built-in support for over 100 corpora and lexical resources, such as WordNet, and is currently being used in 89 courses around the world, and across over 40 universities and institutions in 25 countries.
Long story short: In terms of computational linguistics, NLP, and MT, Python is inescapable, and is the most popular programming language for student linguists.