Periodically I check the list of searches that lead people to this blog. And there are a lot of different items. I’m always surprised at how many people are searching on my name for example. But most of the searches are what you might expect – looking for resources on the topics I blog about. It never fails though that at least a couple of times a month that someone is searching on “high school computing is boring” or some variant of that. “computer science is boring” is another common search term. It makes my wonder – why are people searching for that topic? Are they looking for people to agree with them? Are they looking for a fix to the problem of boring computer courses in high school? or something else? I’m really at a loss here. I do think that at many schools or at least for many students “high school computing” is boring – at least for those students. Me? I find computing, computer science and the teaching/learning of computing in high school to be endlessly fascinating. Is that because I am an uber geek? Not necessarily.
I think that part of the problem is many schools is how they define “computing” or even “Computer science.” Many adults think of learning applications as learning computing or computer science. Really they do. And then they make it all about learning the specific tool without providing relevant context. Learning computer applications can be a lot of fun. Now I confess that I didn’t always do a good job of making learning computer applications fun. That is something I regret. But I’ve learned a lot in the last few years and I think I would do a better job of making it fun, interesting, relevant and in general not [as] boring. It would still not be a computer science course and arguably not even computing. Though computational thinking can and should be a major part of an applications course.
Web development is a lot more computer science/computing than applications but even there a focus on the tools can get in the way of interesting. That is why the web development course Microsoft hired teachers to develop focuses first on concepts and also includes projects that can be used as part of curriculum integration. Yes, it uses Expression Web as the tool but it is not a course about Expression Web. It’s aa course about web design and development concepts.
Now programming and what I think of as “real computer science” is where I really get stirred up about. There is no way a course involving programming should ever be boring. I know that sometimes it is though. Sometimes the teachers fault, sometimes the curriculum’s fault (it’s easy to make AP CS boring I’m afraid), and sometimes it is just frustration with the picky syntax of programming languages. But it is easy to make projects that are fun and relevant (TO STUDENTS) and teach the important concepts. One of the things I like about Visual Basic and C# is that they support drag and drop form design for creating Windows user interfaces that look like “real” applications. Well they are real applications but it helps a lot that students see them that way. Intellisence allows students to discover even more things they can do than they learn in class. This leads to almost constant discovery which reduces boredom.
If you are looking for more interesting projects or to bring more fun into high school computer science (or computing) please check out the blog posts listed by the Projects and fun tags. I think you’ll find some of these projects helpful. I’ve got some links for Microsoft Office as well BTW. And if you have suggestions for reducing boredom in high school computing let me know. I’m always looking for good ideas.
Note: I am on vacation this week so this post was prepared in advance for appearance now. To subscribe to this blog please use http://feeds.feedburner.com/ComputerScienceTeacher as the RSS feed source. Thanks.
Programming is boring, if you do the projects in the end of most introductory text book chapters. It is pretty obvious most authors were not into programming with a turtle or writing silly little games. The kids do like playing with the turtle and writing silly little games. When I can get eight non-geek programmers asking and arguing about ways to improve their game, all of which requires they know some more programming, I think I have hit the jackpot.