Computer Science Education in the 21st Century
March 9th, 2006In this edition of “blog about an peer reviewed journal” we take a look at the latest Communications of the ACM. The “President’s Letter” by David A. Patterson regarding Computer Science educations, “Computer Science Education in the 21st Century” will be the focus. I am an Oregon State University (OSU) Computer Science (CS) major, in the 21st century, so this article was extremely relevant. As I read this paper in the Library, I could not keep myself from raising my arms and shouting. The essay touched on topics that have been advocating for years, theories that I have been discussing with my friends, and classes that I am actively considering purposing to my CS department. Even writing this post I am amazed by the pertinence of this paper.
The letter starts with the bold phrase, “To draw students to CS, we must first look to create a curriculum that reflects the exciting opportunities and challenges of IT today versus the 1970s. Future students and faculty would greatly benefit from an reinvigorating CS curriculum. (pg 1)” I could stop reading right there. Those two sentences sum up the problem with computer science in its entirety. To put it in my own words, CS is a field that changes so rapidly it would be foolish if the education did not shift with it. The first raised point in the article is that we should be using more current tools and software libraries. I could not agree more. The paper uses an example in which schools that use the Java programming language should use current development tools like Eclipse and JUnit. My computer science peer circle has been doing just this (even using those tools) and it has contributed directly to our success. We could go even further by encouraging OSU undergrads to use the contemporary languages to complete homework assignments or offer a “Trends in Computer Science” class highlighting current movements in our field. It would be so easy to supplement the piles of traditional CS curriculum with a few relevant hot topics.
Dr. Patterson goes on to talk about “Course I would Love to Take #1, Join the Open Source Movement“. At this point my exclamation in the library was audible enough to turn heads. I have a reason to be excited, the President of the ACM is advocating the exact cause I have been talking about for the past two years. This shows that I am not completely off the rocker. He elaborates on the example of using open source software to help learn large systems. The pitch to incoming undergrads would be that you could work on something relevant. Why do I love open source software? I can contribute to something relevant. With relevance comes practicality, and we are put in a situation where students are learning their discipline by doing. This is a feature of Computer Science. A civil engineer is going to have a hard time building a bridge in class, but a CS major can write a patch and contribute to a real system, even while they are learning.
The Oregon State Computer Science program is in a unique position to adopt open source software into education and successfully become leaders. This paper is further evidence that this is a practice worth pursuing.






