Computer Science Teacher
Computer Science Teacher - Thoughts and Information from Alfred Thompson

April, 2007

  • Computer Science Teacher - Thoughts and Information from Alfred Thompson

    Do We Really Need Computer Applications Classes?


    Right now I think we pretty obviously do. In the long run I think we'd be better off without them though. David Warlick asks a similar question in his blog and a companion poll. The way he asks it is “Are computer applications something that should be taught in a class, or something that should be learned by the students, independent of a class curriculum?“ (A summary of the comment discussion of his post may be found here and is worth reading.)

    Kids today do figure out a lot of "computer stuff" on their own. They certainly could figure out a lot of the things we generally teach in computer applications courses. The problem is that they don't. I gave placement exams for a computer applications course for years and very few, perhaps 10%, of those who thought they "knew it all" actually knew enough to test out of the course.

    I'll never forget overhearing one know it all tell a classmate "I wish I had known this stuff last year!" There is a lot that students generally do not learn on their own. In word processing few figure out automatically page numbering, headers and footers or footnoting. Doing it manually makes for quite a mess so you'd think they'd have incentive enough to learn it but for some reason few do. Perhaps it doesn't occur to them that it is possible.

    In spreadsheets few students learn any but the most basic and simple of formulas. Graphing? Again generally only the most basic features. Almost no one learns databases. The one application kids do tend to learn a lot about is presentation software like PowerPoint. Even that is not all good though as they learn the features but not how to use them wisely. I've seen some feature rich presentations that fell apart on content and readability.

    But to me having a special course in learning these applications is a waste of time. I believe that it is much better to teach these tools in some sort of context. Teach word processing features as they are needed in English so you can focus on concepts with the mechanics being secondary. For example use a word processor to teach outlining. Use the word processor to teach footnotes, end notes and bibliographies. Let the software handle the mechanics saving enough time for more repetition in different contexts.

    Teach graphing in math courses and let the students use a spreadsheet to draw the graphs. Is it really useful for students to spend a half hour with a ruler and crayon to draw a bar graph and them spend another half hour taking the same numbers and putting them in a pie chart? Why not use the whole hour to show different kinds of data in different types of graphs? That way you can focus on the important concepts of picking the right sort of chart for the data. And you can spend time talking about why different graphs work and others do not and how the data matters.

    Christy Tucker argues that a mix of integrated and separate is the way to teach computer applications and she has some good points. Her main point is that students should be given a solid base in a dedicated course but then what they learn must be integrated into the general curriculum. I don't disagree. I do think that the base should be taught as early as possible. Think reading.

    In first grade reading is a specific subject. By second grade reading is a part of just about every subject. Long before high school reading is long gone as an independent course but students still learn new words and use reading in every course they take. That's the model we need to follow for computer applications.


  • Computer Science Teacher - Thoughts and Information from Alfred Thompson

    Are High Schools to Blame for the Downturn in College Computer Science


    The New York Times had a very interesting article on the down turn in women in Computer Science. At one time women made up 38% of the CS degree graduates while today they are only about 28% of them. The article quotes people blaming various causes but role of high school computer science including the AP CS exam worries me the most.

    Jan Cuny of the University of Oregon says:

    “The AP computer course is a disaster. It teaches Java programming, which is very appealing to a lot of people, but not to others. It doesn’t teach what you can do with computers.”

     Barbara Grosz, a computer scientist and dean of sciences at the Radcliffe Institute for Advanced Studies at Harvard, says that once

    "students entered college with little idea of what computer science involved, so they would try it and find out how much fun and how interesting it was, women included. [Now] they get the wrong idea in high school and we never see them to correct the misperception.”

    These are not new complaints. I have heard more then a couple of university CS faculty say they preferred to have students who had no exposure to computer science in high school. They complain that they have to unteach bad habits before they can teach good habits. Yet universities want high schools to send them students who are interested in computer science. How does one create interest in computer science without teaching some of it? It's a complex issue.

    I do agree that the AP program is part of the problem BTW. Not because it uses Java although I do believe there are better languages. And not because it teaches programming because I think programming can be fun and interesting. Rather I think the AP curriculum tries to teach too many concepts in too short of a time, is too involved in teaching to a test, and fails to cover concepts and information about computer science as a field that would make it more interesting for students. The idea that it realistically matches any real college courses is just not credible. It crams much more into one course than any reasonable college course does. Also the test is so complex that students need almost as much practice taking those kinds of questions as they do learning the concepts it tests. It's no wonder the course turns many kids away from computer science.

    I've had a surprising number of students go on to study computer science in college who only took a first course (based on Visual Basic) but found computer science to be interesting and fun. In that course the big goals were to provide an understanding of the concepts and, perhaps most importantly, to allow students some early success. Oh it was a reasonably rigorous course but not crushing. There were of course no pretensions of being a college level course. Rather the goal was to develop that interest with understanding of what computer science is.

    I think that we need is high school courses that build interest. They must allow students to demonstrate success with reasonable tasks. They must provide an understanding of the many areas where computer science can literally change the world for good. And they must provide a base of vocabulary and basic concepts so that students who decide to continue in computer science will have a running start towards success. If the AP program doesn't do that than schools should look for alternatives.

    One last thing - we are really not doing enough to understand and teach better ways to teach computer science. If the universities really want to help they will get the CS and education faculty together and figure out how to better prepare high school and middle school teachers to teach the subject. They should be part of the solution rather than just whining about poorly prepared HS CS teachers.

    Now I know that many university CS departments do train teachers  but most of the time they are teaching the concepts and not spending much time on how to teach them to students. Example is not enough because what works to teach something to a teacher may not work with a 16 year old. Note that the CS4HS program at CMU is a rare exception there. Kudos to them! But in general can you name a university that teaches a course on teaching computer science? Not many out there are there?

    [Thanks to Kathy Weaver whose blog post sent me to the NY Times article.]


    My site was nominated for Best Education Blog!


  • Computer Science Teacher - Thoughts and Information from Alfred Thompson

    Vote For Me


    Sorry but this is a shameless plug. If you like this blog and it has proven useful to you then please vote for me in the Blogger's Choice Awards. I figure that if Southwest Airlines can ask people to vote for their blog so can I.

    Vote here

    I thank you for your support.

    My site was nominated for Best Education Blog!

Page 1 of 7 (21 items) 12345»