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

February, 2006

  • Computer Science Teacher - Thoughts and Information from Alfred Thompson

    Not just what but why

    • 1 Comments

    Paul Vick has posted an interesting code question at his blog. He has a sample piece of code and asks "what should this code do?" The bold is mine because I want you to notice that he doesn't ask "what does this code do?" There is a big difference in the two questions. I point out this post of Paul's because it is a critical thinking question of the type I think computer science students need to think about.

    When a compiler is designed the designers must ask themselves questions like the one Paul is asking in his blog. A computer language with an ambiguous definition is very dangerous. Things like this much be specified in advance so that everyone knows what will happen. But as this example shows not everything is obvious. Some things can go more than one way. It is up to the designer to decide what is the one way that problem will be handled. But more than that they have to explain why it should be handled that way.

    "Why" is the question that students should ask as often as they ask "how." Teachers of course should be answering the "why" question a lot. It is not enough to know how something works. People need to understand why something works the way it does. Why do For loops check at the top? Why does using the equal operator to compare two objects with the same contents sometimes (usually? always?) return false? Why do we use the CompareTo method in place of the equal operator? And on and on.

    I think that training students to go beyond the "what is the command to use" to "why does it work this way?" may be the most important thing a teacher can do.

    So if you have some time in class, or perhaps as a homework assignment, send your students to Paul Vick's blog and ask them to answer the question "how should this code run and why?" The "why" is the important part.

  • Computer Science Teacher - Thoughts and Information from Alfred Thompson

    Bill Gates Talks to High School Students About Life Long Learning

    • 0 Comments

    Friday was Microsoft's  annual Minority Student Day and Bill Gates addressed high school students at a number of high schools, some remotely and some in person at a Seattle area high school. There is a report of it the Seattle P-I. One of the things I really appreciated was Bill's comments about still learning and about the relationships he made in college.

    One teacher, watching remotely, asked Gates what to tell students who are reluctant to go to college and point out that he dropped out of Harvard but was still successful.

    Gates described his experiences and the relationships he formed in school, and told the story of deciding to drop out of college to join Paul Allen in a fledgling software venture. He explained that he still considers himself “very much a student,” recently deciding to learn as much as he can about energy, for example.

    I think that it is important for students to understand that there is more to college than just classes. A lot of learning and relationship building takes place outside of the class room. As much as a student can learn on their own there is usually a lot more they can get out of a good education. And of course a college education does help people prepare to continue to learn long after they leave school.

    I'm glad that Bill Gates was able to give the message that people should always be working to learn new things. I hope that is something the students who heard him talk remember and take to heart.

  • Computer Science Teacher - Thoughts and Information from Alfred Thompson

    The AP CS Marine Biology Simulation Case Study

    • 2 Comments

    The Advanced Placement Computer Science program has always used a large case study as part of the materials that students need to learn. I’ve always liked the idea of a case study because it exposes students to a project that is larger than what they can create themselves. Students have to understand a more complex set of relationships. Changes to one area of the case study may require changes in a different area. Or worse, they may introduce breaking issues. This makes a case study a good learning tool.


    Over at the forums at MainFunction, an online community site for high school computer science teachers, teachers are discussing how they are using the MBS (as it is called to those in the know) in their classrooms. Students are creating interesting “fish” and really having some fun while they are learning.


    If you are an AP CS teacher I recommend you check out this thread.

Page 7 of 10 (28 items) «56789»