Monday, February 16, 2015

Is an Hour Enough? Programming in Public Schools

Computer Science Education Week is the second week in December, and only now that I am in college and studying computer science am I aware of its existence. Before college, my computer classes focused more on how to use a start menu or wield the tools in Microsoft Office efficiently. We never learned about what exactly computers were or who it was, really, that made the software we were using. I didn't grasp the concept behind the term 'software engineer' until middle school, and I hadn't begun to believe that I could grow up to be one until I was in high school.

I remember not being able to take keyboarding, a required class in middle school, because it didn't fit into my schedule. The administration told me "not to worry about it. You grew up with this stuff, so you probably already know how to type faster than most of the faculty at this school." It was true for almost all of us. I heard from my friends that the course was the biggest joke in history. We were all on MySpace and GaiaOnline and AIM pouring our hearts and souls and crappy Middle School Feelings into typing lines and lines of nonsense no one would read. There was no need to waste our time with that during school hours.

High school wasn't much better. Our computer science curriculum was optional and only covered HTML, CSS, and JavaScript or, in other words, tools I had already been working with since I was ten (although not well, mind you. If you take a look at this ancient artifact you will find that I was always meant to be a programmer, not a designer).

So, when Computer Science Education Week was upon us, I contacted my old high school principal and asked him if he had any plans to participate in Hour of Code (he didn't answer). The program encourages schools to teach their students the basics of programming for just one hour. I think it's an amazing thing, but one hour isn't enough. One hour is enough to pique curiosity, but to reap the real benefits we need to reinforce that with hours, plural.

I want children who learn to format their Word documents and add awful animations to their PowerPoint presentations to also learn how to format a good, clean website. I want middle school students to stop wasting time playing Type To Learn 3 while their teachers scroll through Facebook and start working with some Raspberry Pis. I want more kids taking the computer science AP exam. I want "Selection sort runs in O(n^2)" to become the new "Mitochondria is the powerhouse of the cell."

Besides the obvious benefit of learning a useful skill, children who learn computer science can benefit in a lot of ways. They'll develop problem-solving and logic skills. They'll be encouraged to think about solutions in a creative way, but they'll also be encouraged to create, period.

Keyboarding teaches students to adapt to ever-changing technology, and that's a useful skill for 2015. But if you leave it at that you are teaching students to be complacent in their inability to understand that technology. If you teach children how to program, you can take them that step further. You can reinforce the idea that humanity should shape computers, not the other way around. You can teach children to be more than consumers, and that might be a lesson more important than anything I learned in public school.

2 comments:

  1. Natalie, I thought that this was a really well-written view on the importance of computer science education in schools. I went to a rural public high school that didn't receive a lot of funding past what was required of the state, so there was no mention of a computer science curriculum at all. My first exposure to anything programming-related was at Stevens during the required freshman programming course in the engineering curriculum, where I quickly learned that this was something that others were previously exposed to. However, most of my non computer-science friends also didn't possess anything more than a very basic understanding of what programming was, much less how to actually produce anything. For whatever reason, it does seem as though there is not of importance placed on programming at the high school level, which is surprising when you think of how many career paths are, in some way, linked to technology.

    In one of my classes last year, we were discussing start-ups, and I learned about the Kano (http://www.kano.me/), which is basically a kit that allows you to build and code your own computer using what is supplied to you. This automatically intrigued me because I imagined how something like this would impact a high school student that may not normally ever be exposed to anything in regards to coding. An item like this isn't ridiculously expensive (it sells for about $150), so even schools on the tightest budget could probably afford a few.

    I think, for at least when I was in school, that one of the main problems with introducing a computer science curriculum to a high school comparable to mine is that there are not many computer science experts in the area, so there is really no one to vouch for the importance of coding. Unfortunately, many schools are forced to spend their time and money on educating students on what will appear on standardized tests. And while this is important, it's not the only thing that should be important.

    I agree that there are many underlying benefits to acquiring computer science skills, and hopefully that as technology continues to be more and more commonplace, programming will find a more permanent place in high school education.

    ReplyDelete
  2. I really enjoyed your post. Here at Stevens I feel we take so much for granted with the amount of knowledge we obtain for working with computers and coding. When I went through middle school and high school I do not even think that was an option. This lead me to try and investigate the courses my public high school had to offer or even the clubs that revolved around coding. Of course I could not find anything on the website. I ended up drafting an email to my old guidance counselor, who I kept close ties with, to ask about the different programs at Columbia High School.
    In summary my email stated the importance of computer knowledge. I discussed how as we become more technologically advanced the workforce will have an even higher demand for individuals who know how to read and write code on various platforms. I asked to see a list of the classes offered at Columbia just to get a general idea. I am glad I read your post, it made me want to get involved with Columbia and try to encourage more computer skill based classes.

    ReplyDelete