This is not really about programming, per se, but is part of my thirty year project on teaching myself to teach programming. I am guessing thirty years is about when I retire or die of old age. I was and am a math teacher along with being a programming teacher. As a math teacher I sort of follow the latest and greatest trends in math teaching techniques. If you look at the way math is taught today it really is not that different in the way it was taught 100 years ago. The teacher stands at the front of the room at a board (it is now white instead of black); students sit at desks in rows (not always, but usually) and (sometimes) take notes. Techniques really have not changed in most math classrooms. Then technology started to takeover. The Smartboard was invented and everything changed. I can go through the text provided Powerpoint slides much easier just by touching the board. I can operate a virtual TI-83 to demo the key presses required to solve a computation on the board which is kind of cool. But really, has the actual teaching dynamic changed? The teacher stands at the front of the room at a board (it is now small and white); students sit at desks in rows and (sometimes) take notes. I see the same thing happening in computer programming. When I started this programming teacher journey in ’82 I would introduce a new topic at the board and the kids would sit at a computer and enter practice assignments. The language has changed and the computer has changed but has the methodology changed? I look at the assignments the kids work on today and they are basically the same assignments from 20 years ago. The assignments may be a little more graphically based but overall they are teaching the same processes. Each year I am thinking it is like déjà vu all over again. I have all this high speed technology and I really do not use any of it to teach with. Here are some ideas I have to bring tech into the teaching of programming.
1. Dual monitors for the students. One screen for the IDE, the other for the text or help files.
2. Software that will allow me to project any computer in the lab on the wall. This way the kids will get more experience debugging programming issues. They can participate in more that their own bug problems.
3. A projector in the lab.
4. An eInstruction Mobi touch pad so I am not stuck at the front of the room at the board. It is a glorified RF mouse.
Will these aids guarantee the kids learn better? No, but they may give then better opportunities to learn. I hopefully will have this lab up and running next year. It is a beginning.