I am sitting here thinking about what and how I am going to teach in Programming I today. We are on the third day of Visual Basic. So far everything has been show and tell on the projector. I hate show and tell on the projector for several reasons:
- Show and tell is as interesting as watching paint dry.
- Everything on the screen is slightly out of focus no matter what I do.
- The font is very small and my eyes ain’t what they used to be.
- I sit in a chair and talk, they sit in a chair and listen and everybody is bored.
- I can see the kids twitching to go sit in front of a computer and start hacking something in and I can identify. I like to hack code in to see what happens and it beats the heck out of sitting and listening.
Yes, 2, 3 and to some extent 4 are technical issues that could be solved with better equipment and some software. I do not have better equipment or software so they are issues to deal with. I wish I had the “perfect” programming lab with a high resolution projector, an interactive board so I could be on my feet moving around, a wireless keyboard and mouse, Classroom Management Software and a nifty laser pointer to play with. I do not and I doubt many programming teachers do. (Sometimes I have computer lab dreams where I do not have 3 different brands of computers, where I have lots of RAM, screens larger than an iPad or (Oh fantasy) dual monitors, and the kids can access the C drive.) The problem, and I guess it really is not a problem, is that I just do not see a better way of doing the initial start to the section other than show and tell on the projector. Show and tell may be the best way to get information to a group but the audience focus and retention absolutely sucks.
Everything I know about teaching programming I have learned by the seat of my pants. All the programming I know I have learned on my own through the internet and a few books. (OK, I had a FORTRAN course in 1971 with punch cards, and a Java course in 1980 by a guy that could not teach a duck to float so I do not count those.) I have never read (not from lack of trying) an article or seen a presentation on programming/CS teaching pedagogy. I did find an article on pedagogy for CS that might be an interesting read, too bad it cost $99 to read.
I have watched one other high school programming teacher teach. (The next nearest one I know of is 200 miles away.) He was a decent programmer I think (he actually has a degree in CS) but his approach was to give them a book and the internet and let them puzzle it out. He also had a very select group of students. I go out of my way to attract mainstream students so although they are good kids, they do not live and breathe computers and would have a tendency to wander and lose focus with this approach. I have had kids where this was a very good approach, but they were computer geeks and were smarter than I.
Every year I look through the local University’s catalog searching for something that might improve my ability to actually teach programming. Nada.
I need to get back to thinking about what I am going to do next period with my Programming I kids that will be brilliant, entertaining, comprehensive, conclusive, captivating, fun and teach a little programming on the way. No problem. I hope the projector works.