Philip Guo (Phil Guo, Philip J. Guo, Philip Jia Guo, pgbovine)

Older Adults Learning Computer Programming: Motivations, Frustrations, and Design Opportunities

research paper summary
Older Adults Learning Computer Programming: Motivations, Frustrations, and Design Opportunities. Philip J. Guo. ACM Conference on Human Factors in Computing Systems (CHI), 2017.
(Honorable Mention Paper Award)
Computer programming is a highly in-demand skill, but most learn-to-code initiatives and research target some of the youngest members of society: children and college students. We present the first known study of older adults learning computer programming. Using an online survey with 504 respondents aged 60 to 85 who are from 52 different countries, we discovered that older adults were motivated to learn to keep their brains challenged as they aged, to make up for missed opportunities during youth, to connect with younger family members, and to improve job prospects. They reported frustrations including a perceived decline in cognitive abilities, lack of opportunities to interact with tutors and peers, and trouble dealing with constantly-changing software technologies. Based on these findings, we propose a learner-centered design of techniques and tools for motivating older adults to learn programming and discuss broader societal implications of a future where more older adults have access to computer programming -- not merely computer literacy -- as a skill set.
@inproceedings{GuoCHI2017,
 author = {Guo, Philip J.},
 title = {Older Adults Learning Computer Programming: Motivations, Frustrations, and Design Opportunities},
 booktitle = {Proceedings of the 2017 CHI Conference on Human Factors in Computing Systems},
 series = {CHI '17},
 year = {2017},
 isbn = {978-1-4503-4655-9},
 location = {Denver, Colorado, USA},
 pages = {7070--7083},
 numpages = {14},
 url = {http://doi.acm.org/10.1145/3025453.3025945},
 doi = {10.1145/3025453.3025945},
 acmid = {3025945},
 publisher = {ACM},
 address = {New York, NY, USA},
 keywords = {computational literacy, learning programming, older adults},
}

There's now tremendous momentum behind initiatives to teach computer programming to a broad audience, yet many of these efforts (e.g., Code.org, Scratch, ScratchJr, Alice) target the youngest members of society: K-12 and college students. In contrast, I wanted to study the other end of the age spectrum: how older adults aged 60 and over are learning to code.

Why study older adults? Because this population is already significant and also quickly growing as we all (hopefully!) continue to live longer in the coming decades. The United Nations estimates that by 2030, 25% of North Americans and Europeans will be over 60 years old, and 16% of the worldwide population will be over 60.

To discover older adults' motivations and frustrations when learning to code, I created a short online survey that asked about their employment status, why they're learning, and what's been the most frustrating part of their learning experience thus far. I deployed this survey to my Python Tutor website and collected 504 responses. Respondents were, on average, 66.5 years old and came from 52 countries:

Motivations

Why were our respondents learning programming? The most common age-related motivations were:

  • 22% wanted to learn to make up for missed opportunities during their youth.
  • 19% wanted to keep their brains challenged, fresh, and sharp as they aged.
  • 5% were directly motivated by younger relatives such as children or grandchildren.

Here's a great anecdote about learning to make up for missed opportunities during youth. A 67-year-old retired Chief Information Officer (CIO) wrote:

I did a little programming when I was in school, and when I first started working. However, I got "kicked upstairs" [into management] quite quickly, and was never able to program professionally. [...] I always wanted to be able to create programs but between work and family, never took the time. Now that I am retired, I am trying to fulfill the dream and learn.

Frustrations

What got our respondents frustrated as they were learning? The three most common age-related frustrations were:

  • 14% were frustrated by perceived cognitive impairments such as memory loss and difficulty in concentrating.
  • 11% were frustrated by lack of free time since they often had other duties such as being a spousal caretaker.
  • 10% were frustrated by lack of human contact with tutors or peers, since they must learn online and do not have convenient access to in-person classroom environments.

A 71-year-old retired I.T. technician humorously wrote about his own perceived cognitive impairments:

Given that I was a VERY early adopter of microprocessor/microcontroller technology, I have NO fear of the equipment or the concepts. But things that were "automatic" a few years back seem to take a lot more time and effort to digest and store than they used to. Early onset Alzheimer's? Probably not. ACS? (Advanced curmudgeon syndrome) - Probably some of that.

Design Opportunities

Inspired by the findings from this study, I applied the Learner-Centered Design framework developed by Mark Guzdial to propose design ideas for improving the learning experience for this older adult population. Three main themes emerged:

  • Targeting: Like everyone else, older adults want to feel that programming curricula and tools “look like they're for me” – i.e., that they are properly targeted to the motivations, needs, and aesthetic preferences of this population. They do not want to be patronized, to be talked down to, or to play with “kids' toys.” Several survey respondents mentioned brain training games (e.g., from Lumosity) as being popular with their peers, so perhaps framing programming education in terms of brain training games could work well for this audience.
  • Contextualizing: It's also important to ground learning materials in contexts that engage this learner population rather than trying to find a generic “one-size-fits-all” solution. Examples of relevant contexts here include structuring curricula around coding projects to help older adults curate digital media, to perform genealogical and historical storytelling, and to organize their personal healthcare data.
  • Universal Design: The promise of universal design is that designing for the specific needs of a target population (e.g., older adults) can lead to designs that benefit everyone. In this case, we may want to design next-generation pedagogical programming environments that mitigate the effects of both cognitive and motor impairments, which will hopefully make it easier for older adults to learn to code without as many frustrations. If properly designed, these environments may actually end up benefiting learners of all ages.

Parting Thoughts

The tech world is notoriously youth-centered: popular conceptions of who learns and does programming are filled with images of young people often under 30 years old. Also, age discrimination is an all-too-common reality in the technology sector. To counteract these prevailing trends as people keep living longer in the coming decades, it's vital for older adults to have equal access to high-quality computing and programming education throughout their lives.

We've already made great strides in broadening participation of computing to traditionally underrepresented groups ... but there's still much, much more work to be done. Efforts to spread the power and joy of computing for all should also include people of all ages.


Read the full paper for details:

Older Adults Learning Computer Programming: Motivations, Frustrations, and Design Opportunities. Philip J. Guo. ACM Conference on Human Factors in Computing Systems (CHI), 2017.
(Honorable Mention Paper Award)
Computer programming is a highly in-demand skill, but most learn-to-code initiatives and research target some of the youngest members of society: children and college students. We present the first known study of older adults learning computer programming. Using an online survey with 504 respondents aged 60 to 85 who are from 52 different countries, we discovered that older adults were motivated to learn to keep their brains challenged as they aged, to make up for missed opportunities during youth, to connect with younger family members, and to improve job prospects. They reported frustrations including a perceived decline in cognitive abilities, lack of opportunities to interact with tutors and peers, and trouble dealing with constantly-changing software technologies. Based on these findings, we propose a learner-centered design of techniques and tools for motivating older adults to learn programming and discuss broader societal implications of a future where more older adults have access to computer programming -- not merely computer literacy -- as a skill set.
@inproceedings{GuoCHI2017,
 author = {Guo, Philip J.},
 title = {Older Adults Learning Computer Programming: Motivations, Frustrations, and Design Opportunities},
 booktitle = {Proceedings of the 2017 CHI Conference on Human Factors in Computing Systems},
 series = {CHI '17},
 year = {2017},
 isbn = {978-1-4503-4655-9},
 location = {Denver, Colorado, USA},
 pages = {7070--7083},
 numpages = {14},
 url = {http://doi.acm.org/10.1145/3025453.3025945},
 doi = {10.1145/3025453.3025945},
 acmid = {3025945},
 publisher = {ACM},
 address = {New York, NY, USA},
 keywords = {computational literacy, learning programming, older adults},
}

(This article was adapted from my CACM blog post.)

Created: 2017-05-15
Last modified: 2017-10-02
Related pages tagged as computing education: