Breaking the Mold

Last week, Dec 9th to Dec 15th, was the Computer Science Education Week and more than 15,000,000 students helped write over 509,000,000 lines of code using the Hour of Code, an effort to get all students at least an hour of computer programming experience. The idea behind all of this is that the world is changing rapidly, and within 7 years, the amount of computer programming jobs will outnumber the workforce by more than a million! That is over $500 billion dollars worth of available jobs. On top of that, the field lacks diversity which leads to stagnation and a lack of new ideas. I highly recommend checking out this amazing infographic by Code.org which details all of this out extremely well.

In my experience, younger children seem to have this association in their minds between programmers and geeks. The idea that just because you can write an application, that you are most likely out of shape, socially awkward, wear some combination of coke bottle glasses and a pocket protector, and play Dungeons and Dragons in your free time. As with most stereotypes, as people grow they tend to learn they are exactly that, just stereotypes, and stop judging based on that fact. Unfortunately, by the time that happens, many students are leaving high school and entering a different field through either college or simply entering the workforce. So the question comes back to exactly what Code.org and Computer Science Education Week have been trying to solve with the Hour of Code. How do you get children involved in programming at an earlier age?

In my opinion, the best way to do that is to change how everyone views programming. Programming can be beautiful. Programming can be elegant. Developers today are more focused on visually stunning, groundbreaking applications on top of vastly expanding platforms rather than building a kernel that works directly with hardware. As programming languages expand, application development becomes quicker and more about the solution rather than the process.

Take Salesforce (Apex/Visualforce) for instance. Salesforce has provided a solution first platform. At Dreamforce ’13, I had a very interesting conversation with some of the leading Salesforce StackExchange members. One topic that came up is how Salesforce is really changing the game for the developer. Every person who develops on the Salesforce platform is really much closer to an architect than a traditional developer. When working with the Salesforce platform, you are more concerned with actual functionality that will solve a problem rather than the tedious parts of development such as writing copious amounts of code to handle memory management, implementing frameworks to deal with data layers, server configurations, multi-threading, or even having to write simple data beans. There are arguments to be made that this abstraction can be viewed as a negative as it takes control away from the developer, but having written more than enough dependent picklists using the standard AJAX method, I much prefer simply hooking it up through the Admin and never having to worry about it again.

So, how do we go about breaking these stereotypes? Well, I think it starts at a young age. Realistically, we need to make programming cool. Learning the guitar and joining a rock band is usually considered rather cool. Why can’t learning a programming language and creating a new application be cool as well? We need to create new avenues for these students to express themselves with their code. Adding school sponsored hackathons or creating some developer clubs can add some competition and camaraderie that traditional clubs/teams have. On top of that, we need to find new, innovative ways to get children to have fun while programming. Creating a simple game will have a bigger effect than creating a “Hello World” app for instance. All of this falls on the developer community. An Hour of Code was a great start, but a single hour isn’t even remotely close to enough. We need many more events that will inspire children to gain interest in application development. There are so many opportunities in this field right now, it would be a disservice not to at least try. It could change lives and the entire industry. Let’s do it! Let’s all get involved!

Important Note: It is important to remember that this is my personal opinion. As with any opinion, it may or may not reflect the opinion of any organization I am associated with.

Very thoughtful post, Jesse. Thanks. I am hopeful that as tech becomes more and more relevant and ubiquitous and companies like Google, Facebook, and, of course, Salesforce.com continue to push the boundaries of what’s possible computer science and other STEM disciplines will be thought of as less “nerdy”. I am also hopeful that through more action s like this our field will attract a more diverse group of people to better and further advance our profession.

Great points Peter. Our industry is changing. The barrier for entry is much lower than it was years ago. There is so much information available and so many cool things you can do very quickly. At this point, every child is growing up around extremely powerful technologies. The intrigue is growing and providing the ability to learn some quick, cool things will allow this field to grow to new levels.