Saturday, 29 November 2014

When One Hour Means So Much More

As first published on the Canadian Developer Connection MSDN Log at:
http://blogs.msdn.com/b/cdndevs/archive/2014/11/29/when-one-hour-means-so-much-more.aspx

This coming December, http://code.org in partnership with technology companies such as Hour of CodeMicrosoft are aiming to have 100 million students try out coding during an Hour of Code from December 8th to the 14th, 2014.  Many app developers and Microsoft MVPs around the world will be volunteering their time to go into schools and other youth organizations to present a fun one hour tutorial on coding.  I am fortunate enough to be one of those volunteers.  While anticipating the adventuring of going into a local school (or 2) I started thinking about the different opportunities available to students today compared to even just 10 years ago.  It’s amazing to think about.

The Past

In considering volunteering with Hour of Code I reviewed my own start in computers.  When I entered grade 8 and saw my first computer I knew what I wanted to do in the future. Back then, computers were not as ubiquitous as they are today.  Our high school, a school in the middle of a major Canadian city, had just one computer terminal.  That’s right, we didn’t even have a computer, just a terminal connected by telephone to one at another school.  The telephone connection used a phone in a cradle and communicated by sound.  Just imagine, our terminal talked to the main computer at the blazing fast speed of 300 baud (or 300 bytes per second).  Today’s 4G wireless data can reach speeds in excess of 20 million bytes per second.  On a phone with no wires no less!  Don’t tell anybody but when the terminal was broken we used to listen to the acoustic coupler while playing Star Trek.  We could tell by the sound if we blew up the Klingons, it was just that slow!
The terminal was good enough for me.  However, even then, they had a computer science course (restricted to grade 9 and up) where you could learn basic computer theory and simple coding with BASIC.  BASIC is a simple English-like language that in many ways is at the root of many of the computer languages we use today.
Back then, and even not that long ago, a computer science course and its accompanying text books were pretty much the only source for information.  However, even with a lack of resources we found ways to learn about computers.  Those kids that were interested back then are the senior developers out there today.  For companies like mine to be able to fill the positions available tomorrow we need kids today interested just like we were.  At that time there were only a handful of us dedicated enough to learn typing, fill in punch cards and wait our turn on THE computer.  That’s not going to be good enough going forward.  The technology is there in much greater quantities than we had but are the students realizing the importance of computer skills.  Some of us knew it!  Do you?  Or your kids?

The Present

In just a few short weeks the Hour of Code will be on.  You can see details at http://hourofcode.com/.  Microsoft’s own YouthSpark program is participating in hour of code and you can find a great video on Hour of Code with some surprising guests that you would not expect to love to code.  The videos outline how far we have come and yet how far we still have to go.  In the not too distant future, we are told, there will be over one million well paying jobs in computers that will not be able to be filled because not enough schools are teaching coding to students.
For me, the first experience with code was fun.  It was not technologically all that advanced but fun nevertheless.  Fun is what it should be for beginners every time.  Coding is not just about creating accounting systems and software to control manufacturing and other boring things.  It’s about flappy stuff.  It’s about taking pictures. It’s about gems and monsters.  It’s about stopwatches and flashlights and to do lists and an endless number of others ideas yet to be discovered.
If Hour of Code comes to your school or your children’s school, find time to participate.  Encourage your schools to get more involved in coding.  Almost everything in this world involves coding in some way.  Some of the Hour of Code tutorials don’t even need computers, some use phones or tablets or just some paper.
In today’s schools they have computer labs (enough computers for a whole class) and some schools are even giving tablets to entire grades of students.  No longer are students dependent on out of date textbooks.  Now information is available that’s current and constantly being updated.  A quick Bing search and you can find what you are looking for.  What’s more, is that student enthusiasts are not required to wait until a course in computer science is available.  There are courses available from places like Microsoft Virtual Academy and any number of other educational web sites.
I would have been thrilled to have access to the learning tools that are now available.  Back in my school days even the teachers were still trying to figure things out.  However, I am in debt to the teachers that stood up and said “I’ll teach that” without knowing what they were getting into.  Thank you to all of them!

The Future

In the years to come there is going to be a massive shortage of people qualified for the huge growth in computer coding related job opportunities.  Code.org suggests there will be 1 million more jobs than students by as soon as 2020.  Computer programming jobs are growing at 2X the national average in the US and probably Canada.  We also need more culturally diverse candidates in computer science.  9 out of 10 US schools don’t even offer computer programming classes.  All of these statistics are daunting but as they say in the movies.. “The future is not set” we CAN make a difference.  Encourage companies to support education in our schools.  They need those future employees and should also be investing in them now.
I’m glad to say that my children’s school DOES offer computer programming classes.  Does yours?  By participating in your community and demonstrating that coding can be fun and fulfilling you can help balance the scales in the years to come.
Microsoft is trying to contribute to that early education too with programs like Youth Spark.  Youth Spark is participating in the Hour of Code event but many more areas as well.  They are offering over 30 programs in partnerships with more than 350 youth-serving non-profits.  You don’t need to just be a programmer to find value in learning computer programming.  Almost every walk of life and profession can present opportunities where knowing about computers can be an asset.  We should all help our youth see the opportunities and offer options for learning and exploring that will better prepare our society for the challenges ahead.
I’m going into schools in a few weeks to hopefully open the eyes of a few students to the fun in coding.  What will you be doing for your community?