Fluency in Computer Science
Often we remind ourselves when asked questions about curriculum, or why we teach certain topics, that we teach computer science and not just computer programming. Many of the decisions within our curriculum are prompted by that statement as new tools evolve and more algorithm based functionality is built into the libraries that accompany the languages that we use.
Helping students to become fluent in the various parts of computer science and information technology needs to move beyond assigning programs that parallel applications in the business and science communities. Students also need to talk about trends in technology, new technologies and be able to discuss applications of computer science to these fields. There are several ways that students can gain knowledge of these topics, but using current events borrows a tested model of assignments from social studies and there is a variety of continuous worthwhile sources of articles to use with classes.
Current Event Sources
There are so many information technology articles from a variety of news sources it can be difficult to pick and choose what to use in the classroom. There are however a few good places to start where the articles are collected from various new sources and often summarized so that the search can be narrowed for a specific topic. The ACM (Association for Computing Machinery) publishes a news synopsis three times a week that gathers information from a variety of sources and summarizes it. This is a great start for finding current events from a variety of sources in one place. ACM's Tech News can be found at .
Using Blogs for Current Events
Other sources for articles include several of the blogs from computer science teachers and organizations. Often when one of the authors of such a blog reads an article they find interesting they will post a link with a summary as well as some possible topics to discuss with the students in your class. I read several professional blogs on a daily basis. The first is written by members of the CSTA (Computer Science Teachers Association). This blog is posted at and is updated regularly with a wealth of information ranging from classroom activities to policy and administrative changes that are occurring at the national level.
Integration of Current Events into the curriculum
A second question is how to integrate the articles into the classroom. One recommendation is to have students read the article before the class and write a short summary of what they have read. A second possibility would be to have a class discussion of the topics contained within the articles allowing the instructor to ask questions and explain any unknown parts of the article to the students, but without a written assignment it can sometimes be difficult to judge if students have actually read the article before the class. Perhaps the best answer is a combination of both. Students can be asked to read the article and either answer questions prepared by the teacher in advance in order to demonstrate their understanding, or possibly questions that are generic to the article such as—"Write two questions you would like to ask the author after reading this article", or "Find at least one term or technology discussed that you are unfamiliar with and look up its meaning on the internet". There are a large number of possibilities and all of them can be applied depending upon the article that you choose to use.
Before they become used to the assignments students will ask why they are being asked to read about things that may not directly impact their programming or their test scores. A good answer is that they should be able to speak intelligently about anything that is a part of their life, be it computer science or any other topic they are studying. Another answer is that they are studying computer science, which has many fields and faucets as well as computer programming within this course. Whatever answer you choose to give, integrating current events into your classroom can raise interest levels and help show all students that computer science is widely applicable outside the simple programs that we do.