Without a healthy dose of resilience, it’s unlikely that any project or task will get done. In fact, you could argue that resilience is more important than talent or IQ! As Albert Einstein famously said, “It’s not that I’m so smart; it’s just that I stay with problems longer.”
Between the sheer determination that it takes to finish a new coding project through the process of debugging it when it’s done, computer programming is a great way to practice perseverance and, in doing so, develop resilience.
Kids are at a critical age when it comes to learning how to bounce back from frustrations and setbacks. They’re also quite adaptable. Giving them coding as a tool when they’re young will teach them how to persevere, instilling a resilience that will benefit them in future pursuits.
In coding, failure is normal
Learning to code is a fantastic way to acquire the soft skill of resilience. The ability to bounce back from change or adversity stems from being able to persevere and display grit. Angela Duckworth, who defined the concept of grit and brought it to life through psychological studies, defines grit as “passion and perseverance for long-term goals.”
Although the importance of resilience and grit are generally agreed upon, people debate whether or not these are skills that can be “taught.” With coding, resilience isn’t a lesson imparted in a classroom setting – it’s a natural byproduct of the learning process. When kids and teens code, they know that failure is okay and that, in fact, it can serve as a learning opportunity!
Debugging as an opportunity to learn
Debugging is essential to coding. Sometimes adding in a missing semicolon in Java resolves a compile-time error, or perhaps rearranging a few Tynker blocks makes a project work. A study by Patrick J. Casey of the University of Hartford made a great point along this line of thinking, observing that “many of the skills required for successful programming are similar to those required for effective problem-solving.”
Because of the similar skill sets, Casey found that “computer programming – and particularly the act of debugging – provides a fertile field for developing and practicing problem-solving skills in an environment that is at once engaging and challenging.” It’s the recognition of errors – and the perseverance to resolve them – that builds resilience.
Young programmers talk resilience in coding
Young coders are aware of the need to develop and exhibit resilience. At the end of each Featured Maker interview, we ask our Featured Makers to give advice to other young programmers. Time and time again, they show a clear understanding of grit and express the importance of perseverance. Featured Maker Caitlin told us:
Never give up! Even if something’s not working, there’s always a way around it or another thing you can do. If something is really giving you a hard time, just move on to something else and come back to it.
This anything-is-possible attitude is a product of resilience – the very resilience that spurs kids to begin coding in the first place, gives them the determination to figure out solutions, and builds the stamina to stick with projects. For Featured Maker Yaamini, resilience is integral to coding:
If something’s wrong, it’s fun for me to figure out; it’s like challenging myself. If there’s something wrong, it makes me more determined to fix it.
Resilience is a programmer’s best friend through every step of the process. Featured Maker Timothy demonstrated grit when he said:
I don’t know why, but my favorite project is the one I just can’t solve yet.
There’s no way for educators and parents to know what challenges their students and children will face. However, giving them the tools to build resilience through coding is a great way to prepare them for college, a career, and for life!
This article first appeared on TYNKER