I recently had the opportunity to mentor at a coding workshop hosted by Canada Learning Code — a nonprofit organization that teaches people basic coding skills necessary to thrive in a digital world. The workshop itself was fairly simple and walked students through building their first website. For a lot of students, this was their first exposure to any form of programming.

The event brought together a very diverse group of people from varying backgrounds, each with their own rationale for spending an evening learning how to code a computer instead of doing literally anything else. Some of them wanted to start their own business, while some were hobbyists who simply wanted to pick up a new skill. Others, still, were looking to kick start their careers in software development and wanted to learn some of the basic skills needed for doing that.

Regardless of their individual reasons, what I felt most inspired by, was the effort put in by each and every one of them towards achieving their goals. Taking the time and energy out of your day and going the extra mile to work towards improving yourself and work on your goals is truly remarkable.

We often talk about how the future of work lies in job automation and how technology is going to make many job functions obsolete over the coming decades. But to see real people trying to keep up with those changes is a quite different experience. It is interesting to see how the changing job landscape is driving more people towards software development than ever before.

In the U.S. alone, it is predicted that technology related jobs will grow at a rate of over 25% over the next 10 years, easily outpacing the rest of the job market (which is currently predicted to grow at 7%), while also offering higher than average wages. With those numbers, it isn’t very hard to understand the influx of talent into the tech industry. At least for now, software development as a profession offers relatively secure job prospects immune to the powers of automation.

But what’s even more interesting is the number of people who turn to programming as a way to augment their existing skill sets. An increasing number of people are looking towards programming not as a profession in its own right, but as a way to excel in their existing careers. I happened to come across several individuals who were looking to start their own businesses. To them, building a website and learning some basic programming skills seemed like the obvious first step.

This is somewhat true in the sense that businesses are no longer purely online or offline. Even if you leave out businesses that are built for exclusively the internet age — selling digital products for example — small businesses too are forced to have at least level of online presence in order to be successful. It also helps that building businesses on the internet seems a lot easier because theoretically all you need is a computer along with some coding chops and you’re good to go.

But the number of people turning towards technology related careers also raises some questions about the value of basic programming knowledge and whether or not every person should possess at least some training in computer science. The whole situation seems analogous to where we were a couple of decades earlier when computers were first beginning to take off.

No one could have predicted then that these clunky machines would revolutionize the world in the way that they did. Not everyone knew how to work their way around a computer. Working with spreadsheets and word documents required specialized skills and training. And yet, today, these skills are hardly a thing to brag about.

Nonetheless, regardless of which side of the debate you fall on, the larger point remains that as technology evolves and the job market becomes more unpredictable, more people are going to be forced to reinvent themselves in order to adapt and stay ahead of the curve. Props to organizations like CLC, and others, that are actively trying to help folks do exactly that.