Teaching programming is by far the most difficult topic I have ever taught. As a math teacher I usually have a textbook full of homework problems to choose from, supplementary materials, pre-cooked texts and quizzes and the material is all designed for the grade level of the course. Programming typically has diddly-squat written for the high school classroom. The textbooks I have found are as exciting as watching paint dry. If a kid was excited by programming at the start, after the first chapter they are definitely bored.
Archive for December, 2010
The best-laid schemes o’ mice an’ men
Gang aft agley,
Or in other words, it was a good idea that developed issues. I had the kids working on the Windows 7 Phone for Absolute Beginners for about 2 months now. The videos were working out fairly well and I had started to build a reference document for the videos just to make life easier for the kids. So we would have a device to fiddle with I had planned to replace my present antique phone, a five year old Windows Mobile the size of a thick deck of cards, with the latest and greatest Win 7 Phone. Imagine my surprise to discover Verizon is not going to do Win 7 phones and the advertised provider, AT&T, is sort of non-existent in Missoula, Montana. Therefore I plan to end the Win 7 Phone programming at the end of the semester. This is actually kind of nice; it will give me time to write up materials for the course for next year. I can spend next semester writing up the reference document and figuring out how Rob Miles’ videos can fit in. I also want to write up a quiz/project for each video. The kids have a tendency to skim over the videos at times. A small project at the end of each (or most) videos will slow them down and do some reinforcing. By next year there might be a few Win 7 phones in the kids’ hands to use as experimenting devices. The emulator is nice but it lacks the cool things in a modern phone, in particular the accelerometer. I did find a decent book,” Professional Windows Phone 7 Application Development” by Randolph and Fairbairn. By decent I mean I can read the first couple of chapters without having 10 years of C# background. I also found one not so decent book, “Beginning Windows Phone 7 Development” by Lee and Chuvyrov. The word “Beginning” does not apply.
Windows 7 Phone programming is too good to abandon. Lots of good free material, lots of interest in the platform and the Silverlight/XNA/XBox/C# game connection is a good attractor for kids. The access to decent videos fits my requirements nicely. I am the school computer tech so half the time I have to abandon the kids to their own devices while I go fix something.
Next semester I am going to have the kids work with the Lego robots for a month or so. As a language, NXT-G is pretty poor but I really like the logical thinking a robot project requires from the kids. It is also a lot of fun for them. While they are tinkering with the robots I am going to brush up on my Java and get some materials gathered on Droid programming. There are a lot of Droid phones in the school so device availability will not be an issue. It is also somewhat important that they see a little Java programming. Since most of my advanced kids will probably do some university level programming, and most U.S. universities seem to be hung up on Java, it will be a good direction.
This summer I will attack the Objective-C and iPod Touch project. Being able to write an app for a device that does not have a phone bill attached is just too tempting. And the school has Touches.
I just had one of my classes do the first assignment in the Windows 7 Phone for Absolute Beginners video series. Not having a reference document was a major, major issue. “What video did we see that in?” became the issue. I did not remember how to set the focus to the text box so it took me three videos of scanning to find it. I am thinking that they need to take some serious notes as they watch these things. I have started to write up the videos in a document but it takes a lot of time I do not have. Of course having the kids look through the videos trying to find things was not all bad, there was lots of review. I still like the videos but I definitely have to get a reference built for each. Something as simple as the key topics covered in each would probably be enough. It definitely is not going to happen this weekend; there is a lot of fresh snow and the snowboard is crying to be ridden.
The kids are still wading through the Windows 7 Phone Development for Absolute Beginners videos. You know a video series is an absolute success when the kids say it is not as bad as they thought originally. It is still a bit of a struggle to sit and watch but they are sitting and watching. I am going to have to dream up a simple game project here soon to keep them from burning out. I was considering a simple Tic-Tac-Toe but then I saw Rob Miles has a series going on writing the old Battleship game. Since whatever they write has to be text based (the videos do not hit on graphics) that might be a good start. His Battleship is written in C# but it is not designed for the phone so there will be a little challenge to modify the game. Designing the game to fit the phone format will make it interesting and then getting some kind of visual game play on the screen, i.e. a grid of some kind with hits and misses for each player, should present a good problem to solve. Wikipedia outlines the game nicely. We will have to see how the two grids per player will fit on the screen. As usual I think the coding will be the easy part of the project. Designing the game play and logic will be the hard part, which is as it should be.