"We can't solve problems by using the same kind of thinking we used when we created them." -- Albert Einstein
We are often under the impression that it is difficult to change our position in society. Those born into poverty often have only the slimmest chances of breaking the cycle. However, there are exceptions. Currently, one of the top ways kids are finding a way out of poverty is through coding.
Coding Breaks the Cycle of Poverty Like Nothing Else
Most skilled careers require a formal education, which may be out of reach for many in poverty. There are many barriers to overcome, including the high fees of a university degree.
Coding is not like that. Anyone can learn to code with just a computer and internet access — although it is preferable to also have a teacher or mentor. In addition, unlike other computer-based skills (such as graphic design), the tools to learn coding are inexpensive.
In fact, once you have the hardware, most tools are free. Browsers and text editors are free and the most popular back-end languages, web servers, database engines, and other tools, libraries, and frameworks are free and open source
Finally, there’s the fact that students who decide to learn coding tend to enjoy it. They gain a sense of achievement when they finish a project and often have a feeling of control over their life, which they may never have experienced before. This is motivating and leads them to want to continue building skills, perhaps even through a career in computer science.
Starting Young Is Beneficial
Like with any skill, it’s beneficial to start learning to code young. However, coding also has some additional advantages for young students, including those who ultimately choose careers in something other than tech.
Critical thinking — To code effectively, it’s necessary to look at problems critically, breaking them down into smaller steps. Students can apply this type of thinking to all sorts of other problems.
Creativity — The best results from coding come from creative solutions. Seeing the results they are able to produce gives kids more confidence in their creative abilities.
Problem solving — One creative skill related to coding in particular is problem solving, since coding is all about finding new solutions.
Math skills — Math at school can often feel abstract and irrelevant. Through applied logic and data analysis, coding brings meaning back to math.
Resilience — Students will find that fail plenty when they code, but this can actually be one of the enjoyable aspects of the activity. The improved resilience this creates in kids is hugely useful for helping them face challenges throughout their lives.
It’s Never Too Late
There tends to be an emphasis on teaching kids to code — to give them more opportunities when they grow up. However, there’s no need for coding to be limited to youth; after all, it’s never too late to learn a new skill. In fact, learning to code as an adult can open more doors and lead to better employment.
The great thing about coding is you can learn at your own pace. In other words, there’s no need to have years of experience. If you’re able to put in the time, you will learn — although you will need to work hard to catch up with someone who has been coding regularly from a young age.
Why Coding Matters
Coding isn’t just useful on an individual level — it’s important for society, too. Plus, it’s constantly becoming more important. There’s always a demand for coders to work on problems that only technology can solve. This means there will never be too many coders. Even an influx of coders could only help: it would mean the chance to solve more problems and faster.
Furthermore, it’s important to gain more perspectives when striving to solve problems. Since the programming field is currently dominated by white men from a middle-class background, more kids from diverse backgrounds would mean fresh perspectives throughout the tech industry.
Barriers to Coding
Of course, it’s never as simple as just deciding you want to code, particularly if you’re a kid. The biggest challenge is finding opportunities. For one thing, many people in poverty lack a computer at home.
Plus, even if a student does have a home computer or the chance to use a computer at school or in a public place, it is difficult to learn alone. Whereas there are many videos to follow online, students require guidance from a teacher to know how to implement what they’re learning. Unfortunately, some areas of the country only have a few trained teachers, which means many students who would like to learn coding may be unable to do so.
Another barrier is time. It takes many hours of practice to become a proficient coder. Students need to receive regular training, which again requires plenty of opportunities to learn with a mentor.
Lastly, there’s the fact that coding is difficult. It requires dedication, practice, and a willingness to put in the effort to keep learning. To succeed, students need to be motivated and schedule time to learn for a few hours each week. There are always areas for improvement as well as new coding languages to learn — and it’s not simply a case of transferring your knowledge: there’s a huge amount of new information to take in.
Overcoming These Barriers
The good news is there are ever more nonprofits and other organizations offering additional opportunities, including courses, boot camps, and digital inclusion programs. These opportunities are often aimed at disadvantaged groups of the population to fill the gap left by schools that often cannot provide sufficient resources for everyone.
One project breaking down the barriers named above is OpenHub. It provides guidance on careers in tech, specialty boot camps for rapid reskilling / start for a tech career, engaging best mentors to share their best practices and proven frameworks and scenarios to learn and apply real-life skills. See more about OpenHub’s boot camps. By pairing young coders with experienced developers in the Hudson Valley and beyond, OpenHub gives everyone the chance to collaborate and improve their skills. Participants work together on real projects, which gives them a chance to see how their coding skills have an actual impact. In fact, OpenHub goes a step further than many other projects: it allows people to use coding as a way out of poverty for themselves and to help others in their community.
Coders can test and apply the skills they learned during HVTechFest Hackathons to experience real-life working scenarios in the tech and startup world.