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

January, 2007

  • Computer Science Teacher - Thoughts and Information from Alfred Thompson

    Taking the Computer Teacher (and their lab) For Granted


    Kathy Weaver reports on an all too common occurrence for school computer science teachers. In the middle of teaching a class another teacher came into the room to interrupt with a computer question. In the middle of teaching a lesson! Can you imagine interrupting a math teacher during their lesson to ask how to computer Pi or something? Or stopping a history lesson to ask what year the last election was? Of course not. When a teacher is in the middle of a lesson you let them do their job.

    But not computer teachers. No sir. Teachers and administrators feel free to jump in anytime to get help with their computer/technical issues. I know one teacher who as also doing tech support who was pulled out of class so often her students were practically independent study students. That would never happen in other subjects.

    Oh and then there is using (abusing) the computer labs. I remember a number of teachers who used to send their students to the computer lab to use the computers. Not during periods the lab was free but during periods when I or one of the others in my department were teaching a class. If the students were well behaved and I had free computers I didn't mind a whole lot. But still it was occasionally disruptive and a real imposition. Class room management is a fragile thing in the best of circumstances. In a computer lab it can be even more difficult as the computers themselves can provide a distraction. Adding other students not in the course can be a disaster.

    There were times I was tempted to send some of my students who had finished their work to the classrooms of regular offenders. "Why don't you go to so and so's room and tell him I sent you to read the new magazines he has?" Can you imagine the reaction? I sometimes wish I had done it but frankly it seemed petty and unprofessional and I could not bring myself to do it.  The Golden Rule seems to apply here. Do until others as you would have them do unto you.

    There is one other situation where I have seen this sort of thing. The library. I have seen teachers send students to the library when it was being used for a class or lecture. Or seen teachers interrupt a presentation by the librarian. Teachers who would be furious if you even entered their room will walk though a library or a computer lab, ignore the librarian/teacher, and talk to students as if there were no other adult in the room.

    Why are people like this? What is it about the library and the computer lab that makes so many teachers act as if nothing important was going on there?

  • Computer Science Teacher - Thoughts and Information from Alfred Thompson

    Visual Studio Keyboard Shortcut Posters


    Are you a keyboard shortcut sort of person? Do you like to keep your hands on the keyboard and bypass the menus? I admit that I am one of those people. So when I saw that Microsoft has made available some reference posters for Visual Studio keyboard shortcuts I knew this was something I needed to share.

    There files are designed to be printed out on larger sized pieces of paper and used as references. Younger eyes than mine may find them usable on standard 8.5 x 11 (or A1) size paper but the print is a little small for me.

    The links for language specific shortcut keys are:

    Just the things for classroom reference especially if you have a large scale printer.

  • Computer Science Teacher - Thoughts and Information from Alfred Thompson

    Variable Constants and When Things that Never Change Actually Change


    One of the great learning experiences of my professional career was working on a project that would test up to 16 computers in a cluster. We were told that 16 was the maximum number and that for performance reasons that number was not ever going to change. We believed them. They were wrong. The number changed. Now the learning really began.

    We had to go back and fix our code to work with the new number which was 32. It turns out that you can't just do a global chance of 16 to 32. For one thing because of off by one issues we'd used 15 in a lot of places. These numbers occurred in a lot of places. This was code that up to 7 people had worked on for over a year. We did get a little smarter of course. This time we defined a global constant and everywhere that a hard coded number was we replaced it with a reference to that constant. Why did we not do that in the first place? I'm not sure because none of my code, as best as I can recall, was effective.

    In any case, when the no it is never going to change number of 32 went to 64 and later to 128 all we had to do was change one line of code and rebuild the system. Much nicer.

    Rule number one: When someone tells you something will never change take that as a promise that it will change.

    Corollary to rule number one: Avoid hardwired numbers and limits. Plan for constants to change.

    I'm sure I am speaking to the choir here of course. You all know this stuff. I have an interesting example of constants changing that is more contemporary though. Something your students may be able to relate to. Some values are difficult to change. One of them that actually takes an Act of Congress (or the local equivalent) to change is the start and end dates of daylight savings time. Congress actually did that recently and it sure has had an impact on a lot of software. In case you are interested here is a link to a bunch of articles about how this change impacts some various software products.

    Date and time issues are an example of things we don't always think about until they go wrong. Of course when they do go wrong they can go very wrong. Anyone can learn from their own mistakes but I think we owe it to others to help them learn from the mistakes of those who made them earlier. I think this is an interesting topic of discussion if only to get students and beginning programmers to think about what sorts of things are involved.



    Technorati tags: , ,
Page 1 of 9 (26 items) 12345»