Article

What second language acquisition can teach us about learning to code: Part 1

By Kristen Foster-Marks

Part 1: Learner beliefs about language learning

Knowing how to program computers is a lucrative skill—and arguably more necessary than ever in a world where computer technologies have become ubiquitous across industries and domains. These days, we often hear, “All companies are software companies”, and a quick glance at any job board confirms that indeed, most companies are actively hiring software developers and engineers.

Unfortunately, the demand for software engineers has outpaced supply for some time now. Despite record numbers of graduates from traditional computer science programs and non-traditional programs like coding boot camps, there are still substantially more programming positions to be filled than qualified applicants to fill them.

Not only that, but it is increasingly recognized that technology skills degrade rapidly if software developers and engineers do not make a substantial effort to engage in continuous learning and development. In fact, it is estimated that the skills and knowledge an engineer acquires today will be stale a mere two years from now.

These factors have forced both individuals and companies to heavily invest in upskilling, and for companies, this has included both their technical and non-technical workforce. This is easier said than done, however. Upskilling an existing cadre of programmers—and training groups of potential programmers—efficiently and successfully depends on institutional support and intention, as well as individual action and persistence.

The stakes are enormous: If this upskilling is not done well—if it is not done intentionally and with an awareness of pedagogical principles—the investment is unlikely to pay off at scale

This situation begs the question:

What are the factors that contribute to the rapid and successful acquisition of programming languages and technologies?

Any tech leader and tech practitioner—whether current or aspiring—should be interested in the answers to this question, and we may be able to provide some of those answers by turning to the scholarly field of second language acquisition.

What is second language acquisition, and what does it have to do with learning to code?

Second language acquisition (or SLA) is a sub-discipline of applied linguistics. Its researchers investigate the factors that influence—both positively and negatively—the human ability to learn languages in addition to one’s first/native language. The field burgeoned in the late 1960s following large financial investments by national governments; the military branches of these governments had a huge stake in quickly and effectively teaching their intelligence forces to gain fluency in key target languages in order to achieve goals in espionage and foreign diplomacy.

SLA’s foundational theories were supplied by the long-established fields of linguistics, psychology, child language acquisition and language education. Today, it is a vast discipline with multiple dedicated academic journals, international conferences and symposiums, and long-running debates about the factors that help and hinder successful language learning.

Many of the questions and problems that SLA has strived to answer in the domain of human language learning are analogous to those facing learners of computer languages and technologies. Some of the major lines of inquiry in SLA have included:

• How does knowledge of one’s first/native language affect acquisition of a foreign language?

• What effect does age have on the learning process and ultimate attainment?

• Is implicit, incidental learning likely to lead to acquisition—or is focused, formal learning necessary to gain fluency?

• What learner beliefs help or hinder the language learning process?

The stakes that catalyzed SLA’s inception feel as high as the stakes facing companies today as they struggle to keep their technical workforce filled and skilled; the stakes are certainly as high for individual engineers fighting to keep their skills relevant and themselves employable.

My personal connection to SLA and coding

I spent most of my 20s teaching English to English Language Learners (ELLs) first in South Korea, and then at Colorado State University. During this time, I completed a Master’s degree in English with an emphasis in Teaching English as a Second or Foreign Language; SLA was a central topic of study in this program. After all, one of the field’s central objectives is to determine what constitutes effective instruction, and thus language teachers are expected to be well-versed in historical and current thinking about how foreign languages are acquired.

As it turns out, few are willing to pay teachers a liveable wage, and so in 2016, I made my own high-stakes decision to learn web development. I believe very strongly that my understanding of SLA has contributed to my success in learning programming languages as an adult—and it has been a fascinating experience to observe and theorize about the applications of SLA research to my own learning experiences.

Thus, the purpose of this article is to share these connections and applications with both individuals hoping to gain or increase their proficiency in programming languages, as well as the leaders and executives who hope to facilitate this technical upskilling.

The nine sub-domains of SLA

There are many, many aspects of SLA that can provide insight into the acquisition of programming languages—enough to warrant a book-length treatment, in fact. Those sub-domains include:

• The linguistic environment

• Learner cognition

• Learner motivation and affect

• Developmental sequences

• Crosslinguistic influence

• Aptitude

• Age

• Social dimensions

• Learner beliefs about language learning

In each article of this series, we’ll explore different sub-domains, examining their key questions and findings, as well as how we can apply these findings to the learning and acquisition of programming languages and technologies.

Let’s begin with examining learner beliefs about language learning and how it connects with learning to code.

What SLA teaches us about language learner beliefs

Since Elaine Horwitz’s seminal study of language learner beliefs in 1987, thousands have followed suit in investigating language learners’ beliefs and mythologies. Early research focused on cataloging those beliefs, but more recently, researchers have endeavored to understand how learner beliefs help or hinder the language learning process and ultimate acquisition of a language. And while SLA researchers have uncovered a wide array of language learning beliefs and their ramifications, perhaps more important has been the discovery that some learner beliefs are simply not true, in that they have been discredited by scholarly research and the documented testimony of teaching practitioners. 

Just a few of these debunked (yet persistent) myths include:

• “I can become fluent in Arabic solely by studying vocabulary and grammar out of a textbook.”

• “I am not technically fluent in Mandarin unless I have flawless, native-like pronunciation.”

• “I should be able to master German after three to four years of high school study.”

• “If I speak in class before my pronunciation is perfect, my pronunciation will be incorrect forever.”

• “I’m too old to learn Spanish. I should have done it back in high school when I had the chance.”

• “The best way to learn Portuguese is through translating great Portuguese literature.”

You’ll be hard pressed to find an SLA researcher who entertains any of the above beliefs. Take the last one, for example. Countless studies have been conducted over the past several decades that show that language teaching methodologies which provide ample opportunities for receiving authentic input (listening) and producing authentic output (speaking) lead to better ultimate acquisition than traditional literature translation exercises. While there is no doubt something to be gained linguistically in translating literary samples of a language, if one’s ultimate goal is to use that language in authentic contexts, then learning Spanish through watching contemporary telenovellas and then discussing them with friends in Spanish is much more effective than translating "Don Quixote" in solitude.

Despite having been discredited through academic investigation, erroneous language learning beliefs remain prevalent in language learning communities across the world (even amongst language instructors), and unfortunately, they have the potential to increase learner anxiety and deplete learner motivation to persist through challenges. It is widely documented in SLA research, for example, that achieving native-speaker-like pronunciation—colloquially referred to as “speaking without an accent”—is nearly impossible for adult learners.

In part, this is because accent-less pronunciation is conceptually impossible to define. Just consider the myriad dialects of the English language across cultures and geographies—within the United States, alone, you’ll find multiple ways to pronounce even the seemingly straightforward word “butter.” Further, the critical period hypothesis proposes that after a certain age (likely around two or three years old) it is extremely difficult for our articulatory apparatus to be trained to make sounds not already in its functional repertoire. 

This is where unrealistic beliefs can prove a hindrance to the learning process: For a language learner who expects to speak a foreign language without an accent, struggling to achieve what is perhaps not even physiologically possible can be extremely demoralizing and lead to eventual abandonment of the learning goal. As a world traveler, former language teacher and tech worker who often works alongside non-native English speakers, I’ve heard countless apologies over “imperfect” English accents. I have emphasized to these folks: No good language teacher would hold a student to the standard of “perfect” pronunciation, and we should regard speaking with an accent as something to be celebrated.

How language learner beliefs and myths impact those learning a new programming language

So, how is the inquiry into language learner beliefs relevant to learning programming languages and technologies? I strongly believe that findings borne out of the aforementioned research provide insight into the experiences of those who are:

• Learning to code for the first time

• Learning a second, third or nth programming language

• Learning a new technology stack

Here’s where the analogies are strongest: SLA studies have demonstrated that the more realistic the beliefs language learners hold on the possibility of things like perfect pronunciation and grammatical accuracy, the better their learning outcomes. For this reason, recognizing those beliefs and then analyzing their truth is necessary for both teachers and learners. 

When I was a language teacher, I devoted the first class session of each semester to surveying and then deconstructing my students’ beliefs—especially those with no empirical support or outright debunked by the research—so that they could avoid the damaging effects of those beliefs on their motivation and ultimate skill attainment.

Computer language learners should go through the same exercise. There are innumerable myths (enabling and hampering) that we new and experienced programmers hold about ourselves and the best ways to develop our skills, including:

• “I need to learn language x really well before I can be on a team that uses language x.”

• “Asynchronous code reviews are the most effective way to pass knowledge from more experienced developers to newer developers.”

• “If I’m ever going to be a senior developer, I must be an expert in all of the technologies my team uses.”

• “I’ll never be a great programmer if I don’t build side projects during my free time.”

• “As a coding bootcamp graduate, I’ll never be as good of a programmer as my degree-holding colleagues.”

Do any of these ring true for you or your team? Take a moment to reflect. 

Do you think that outside of your personal experience and mindset, there is strong evidence to support any of these beliefs? Could any of them be baseless and even destructive to your learning process? What other beliefs do you hold that may be helping or hindering you in your acquisition of computer languages and technologies?

The steps of identification and reflection have been crucial for me in overcoming those beliefs that have proven impediments to my tech skill development, as well as in harnessing those that have kept me motivated.

Takeaways for programming learners and their leaders

During my journey in learning how to code, I have discovered that I am in constant possession of beliefs about my individual potential. Sometimes my self-beliefs are positive, and sometimes they are negative. Sometimes, they are informed by external information about the world, and sometimes by my own inner thoughts. They always impact my motivation and persistence.

For example, back in 2016 when I began my coding boot camp, I truly believed that through the immersive, hands-on experience that was being replicated by boot camps across the country, I could reach a level of proficiency in six months that would make me employable as a junior developer. The evidence was all around me; the strategy had been proven out time and time again.

Yet, there were people in my social circle who were suspicious, and who even verged on discouraging me through questioning whether this path was realistic, thus suggesting that I might be embarking on an (expensive) mistake.

They were wrong, of course. If I had not seen the irrefutable evidence around me, and if I had thus not strongly held the belief that my goal was realistic, it’s easy to see how I might have failed to persevere during those months of intense, twelve-hour days typing away at the keyboard, ignoring the outside world, suffering daily failures in the process of acquiring a really hard skill.

I have also held the belief, however, that my ultimate potential as a computer programmer is limited by both my nontraditional path into programming, as well as my lack of desire to spend my personal time outside of work tinkering with side projects. And to be honest, I’m still wrestling with these beliefs. I don’t want to hold these beliefs. I understand that at times, they are demoralizing and inhibiting. But as I have continued in my career, I have encountered more and more outstanding engineers who have come from non-traditional backgrounds, and as this evidence accumulates, I am increasingly chipping away at these beliefs.

If you’re like me, and want to start drawing inspiration from SLA in order to learn a new language or help your team upskill, I think these takeaways are good starting points:

  1. Reflect on your implicit beliefs about the ideal process and conditions for learning computer languages and technologies, as well as yourself as a learner. How are those beliefs helping or hindering you? For those that hinder you, is there any actual evidence that these beliefs are true?
  2. As a manager or team lead, begin a conversation with your developers one-on-one to start exploring their beliefs and mythologies around themselves as computer programmers and the process of technology upskilling. You might find that you can unlock your developers’ latent potential by identifying and working through any inhibiting or detrimental beliefs that they hold.
  3. When designing an upskilling program for yourself, your team or your company, take the time to understand what current research reveals about the best strategies and processes for doing so. Harness these to accelerate and deepen skill acquisition.
  4. When introducing an upskilling program or initiative to your team, take the time to understand and deconstruct their beliefs that have the potential to decrease the effectiveness of the initiative.

Continuing to draw insights from SLA

There are certainly general learning theories that apply to the learning of any skill, domain or process, but I believe the parallels between the acquisition of human languages and programming languages are particularly strong. Over the last several years, I’ve perused academic literature to see if any research agendas or studies have popped up in order to empirically explore the applications of SLA research to the acquisition of computer languages and technologies. Thus far, there’s not much.

Given this lack of scholarly treatment, I invite you to join me as I continue to explore these connections between SLA and tech skill development by diving into SLA’s other subdomains in this multi-part blog series.

In the meantime, If you’re interested in diving into some SLA research, I recommend reading Patsy Lightbown and Nina Spada’s introductory text "How Languages are Learned" for a concise, accessible introduction to and exploration of SLA. If you’re feeling intrepid and want to get lost in the academic literature, check out Lourdes Ortega’s graduate-level textbook "Understanding Second Language Acquisition," and find a way to gain access to a database of scholarly articles so that you can follow the citations!


Bibliography and suggested reading

Baldwin, L.P., Macredie, R.D. Beginners and programming: insights from second language learning and teaching. Education and Information Technologies 4, 167–179 (1999).

Bluestone, K. (2015). Acculturation, Interpersonal Networks, and the Learner’s Sense of Self: The Effects of Social Relationships on Second Language Learning. Working Papers in Applied Linguistics and TESOL, 9(2), 1–30.

Dubravac, V., & Latić, E. (2019). The Plasticity of Students’ Language Learning Beliefs: The Interplay of Gender, Grade and Educational Level. Journal of Language and Education, 5(4), 36-53.

Horwitz, E. K. (1987). Surveying student beliefs about language learning. In A. Wenden & J. Rubin (Eds.), Learner strategies in language learning (pp. 110-129). London, UK: Prentice Hall.

Lightbown, Patsy.Spada, Nina Margaret. (2013) How languages are learned. Oxford : Oxford University Press,

Ortega, L. (2009). Understanding second language acquisition. Hodder Education.

Robertson, S.A., & Lee, M.P. (1995). The application of second natural language acquisition pedagogy to the teaching of programming languages—a research agenda. SIGCSE Bull. 27, 4 (Dec. 1995), 9–12.

About the author

Kristen is a software developer at Pluralsight writing code for Pluralsight's Flow product. She is a former ESL/EFL instructor who spent her early career teaching English as a Foreign Language in South Korea, as well as Academic English and Composition at Colorado State University. She transitioned into a career in software development in 2016, and through learning programming languages, has been delighted to observe the many similarities between learning human and computer languages. In her spare time, she enjoys reading and learning new things, writing, spending time in the mountains, traveling, golfing and beating her husband at table tennis.