Thursday, August 28, 2008

All-Day Training

The image (a bit lame, I know) is the first page in a presentation I just made for my students in my IMP2A math class, for tomorrows review of the homework on counterexamples. I thought it was a funny joke at the time, but now after working on this presentation for 20 minutes it seems a bit old.

I spent the day today with a fellow ELL teacher (Oakley Rocks) getting trained on the Interactive Whiteboard software from Promethean. I got home wanting to work more and create a few things to use tomorrow in class. That may seem like a lot of work, but in reality it isn't.

The presentation I just made states several conjectures about geometric figures, like "if two polygons have their corresponding angles equal, then the polygons are similar." Students then have to, in groups, go up to the board and state whether that conjecture is TRUE or FALSE. Then, if they think it's false, they have to draw a counterexample that proves it false. If they believe it's true, they need to state why.

Took me about 20 minutes to make the presentation, and it's the first I've ever made (although I have done a lot of stuff like this using Open Office, so I'm not a total noob). Twenty minutes is hardly anything compared to what I'll get out of this in class. When you get students up at the board using the straight line tools and grid background to draw geometric counterexamples--well, let's just say it sure beats pencil and paper. The buy-in by the students is incredible compared to before, when a group would maybe make a poster or draw on the chalk board.

After creating the original, I saved it. Then, I make two copies of it for each of my IMP2 classes. That way I can save the student drawings and responses right on the presentation, export it in a variety of formats, and post it on the web that same day. Now THAT is cool.

For those of you that are regulars in the edublogosperical universe, you may find it interesting to know that Bud the Teacher did the training. You can't have Bud. He's at OUR district and we won't let him leave.

Wednesday, August 27, 2008

Just in Time!

Some teachers may resist change and not like learning something new, especially new technology. Not me, man. Despite my rant about Promethean not supporting Linux yet, I have seen the future, and it's pretty cool.

The wall panel on my Promethean board malfunctioned shortly after I started to use it. However, our ITS department was quick to respond and the panel was replaced earlier today. I had to find our school tech contact to have her update the Promethean drivers (I don't have the proper access rights), and a few fellow Interactive Whiteboard Teachers (IWTs, I guess) also helped out.

The result: Back to School Night starts in less than an hour, and I will be able to wow my students' parents with the IWB. It really is an impressive tool when it's running correctly. In fact, having to step back to a normal projector (with no interactive element) was downright depressing.

Tomorrow I'll attend an entire day of training on the IWB. I hate to miss school and would prefer the training be after school or on a weekend. I have to miss teaching my AP Computer Science class, which is my favorite class :-(

Monday, August 25, 2008

Freddie and Me

I'm a sucker for graphic novels.

Something about the immense amount of work that goes into making them means I just can not resist them. My favorite graphic novels are those that are blatantly honest and biographical in nature.

Freddie and Me
is a prime example. Mike Dawson tells his life story through a filtered lens that sees the world in terms of the rock group Queen. Childhood memories are told in reference to Queen. Some memories are even rewritten with Queen in them. Everywhere throughout this book you can see the influence of Queen on an impressionable fan.

And yet, I recommend this book to people who couldn't care less about Queen. Really. Read this to laugh and enjoy Mike's funny childhood. Mike moves from England to the U.S. and experiences some culture shock. He finds friends where he can and never loses his overtly optimistic view of life. This book made me feel good. Mike is just darn likable.

On the other hand, if you are a Queen fan, this book can only make you nod your head as you read it. You know how it feels to think Queen is THE GREATEST BAND IN THE WORLD (or at least in the top ten).

Saturday, August 23, 2008

Oil Change Saturday

Sometimes it's nice to leave the high tech world behind and get your hands dirty. That's what I did today, changing the oil in both of my Toyota vehicles. To be honest, there was something downright soothing about working on something so simple and basic and ... uncomplicated. You drain the oil, replace the filter, replace the drain plug, and put in the new oil. Not too much to go wrong there.

In my classes this week, it was a bit different. Having finally bit the bullet and decided to just use the Windows XP laptop ("lil crappy") with the Promethean board, I had a rather disturbing result. For about 15 minutes it was pretty nice. I was showing my students the web pages I had created as resources for them (on Firefox, of course--can't stand IE), when suddenly a student said, "hey, Mr. G, that looks like a disco over there!" She was referring to the wall interface for the Promethean board, which has a series of push buttons for selecting combinations of input sources and other parameters. All the buttons on the panel were rapidly flashing. It DID look like a disco floor. Then, it all went black. My Promethean board blinked out and ... well, hasn't been back since. Sure was nice to use during its 15 minutes of fame, though. I wonder if this happens with Smart Boards.

Meanwhile, all the free and open source software was finally installed in our computer lab. Of course I would have done this a year ago, but I don't have the right install privileges--something that drives me nuts every day of my teaching career. The software was installed, and it was even checked to make sure it worked. The only problem was this: when students tried to use it, they didn't have the proper security clearance for sections of the hard drive that the software had to use. Half of the eight applications installed simply won't run for students. Kind of hard to teach AP Computer Science when your students have to do all their Java compiling at home.... :-(

Ah well, at least Python is working.

Tuesday, August 19, 2008

Migrant Blog About to Launch

With thanks to the AILF and MESA, who are helping with funding, I'm almost ready to launch what I believe will be a major undertaking--we're about a week or two away.

Using Wordpress and Dreamhost, I've set up a blog for migrant students and other English Language Learners to tell their stories. Right now the working title is Lost in Translation, but the students will be able to change that and also change the look and layout of the blog. It's their blog. You can find the blog here, but it will soon change greatly when the students take over.

The funding so far has been used to purchase two Acer Apire One netbooks that the students can use for their writing. These are ultra-portable little laptops (yet the keyboard is 95% the size of a regualr laptop keyboard) that run on Linux and are very easy to use for web applications. Once you hack them a little, it's easy to modify them even more for your student needs, opening access to many open source software packages that are not enabled by default.

So far I have five students committed to this project, and each one of them alone could write a spectacular blog about their lives. I will get more students in time, but I'm also limiting it to students that will be dedicated to the blog. I'm going to try to get more laptops, also, and also revamp some older laptops with Ubuntu.

I envision the blog being about the individual students' lives. They can write what they want to, but the focus is on telling their stories--what matters to them. Each entry will be tagged with their "name", so that a reader can filter out all the blog posts by that particular student and read just their story. Although I do have several prompts, I'm going to let this one evolve on it's own a bit and we'll see what happens. Part of the fun will be watching the data from Google Analytics as more and more readers are found. I'm leaving it up to the students to promote the blog after it's launched.

If you have suggestions or comments, please leave them here, as I will pass them on to the students.

Monday, August 18, 2008

Report from the Trenches.

Today was the first day of school. I have a full teaching schedule, which is something to wear with pride.

One of my major annoyances with the education field is that too many good teachers leave the battlefront right in the middle of the war.

This can happen in several ways. They can become professional mentors and help new teachers do do their new job. They can become consultants of types, traveling around and basically telling other teachers how to do their jobs. Or, they become administrators and enforce that teachers actually do their jobs--or something like that. :-)

The point is: they leave the classroom. The second they do, they are no longer on the front line, and their impact on students immediately is diminished. I know, we try to justify these moves, saying things like, "but this way she can help other teachers improve their classes and, in turn, help a lot of students." I think that's pretty much a load of crap.

The minute they leave the responsibilities of the classroom, their impact on the lives of students takes a huge nosedive. Something changes in their heads. They become one of "them" and not one of "us". They've left the front. They've been discharged. They've become brass.

My father retired a teacher, which is really amazing, as he's now the Village President in my hometown and seems to do well in the administrative role. He never considered leaving the classroom prematurely, however, nor will I.

Today I had three full 90 minute blocks of programming classes. That was 75 students or so--my numbers will no doubt increase to 90 by mid semester. Not all of them are easy students to teach. Not all of them are really thrilled to be in my class (yet). But, they are all MY STUDENTS. Those who leave the classroom behind can't say that anymore.

Teachers, if you are worth your weight in gold--like any excellent teacher is--please stay in the classroom. Your students need you.

Wednesday, August 13, 2008

We're waiting, Promethean...we're waiting....

This year I was awarded an Interactive Whiteboard made by Promethean. Sounds great, huh?

Not so fast.

Promethean is a for-profit company. Their products run on either Windows or Macs, but not Linux. The Linux community is frustrated by this, especially since Promethean has supposedly been on the verge of releasing a Linux version for several years now. Here, I'll show you what I mean....

Back in 2004 Promethean announced they were working on a Linux version. These rumors continued for a while, but with little detail.

This is what Stephen Walder blogged about in October of 2007:

"It's been almost a year now since Promethean revealed that they're working on Linux drivers for their range of ActivBoards and still no news of when and if it's to be released to the public."
Then, in January of this year, ACTIV employee Stuart Collins wrote this in a forum:

"Well I'm posting this from Ubuntu, which is on my main work laptop. So that should tell you that yes, we're taking Linux seriously. From what I've seen of the software so far it's looking good."
Wonderful, Stuart. It's now friggin' August and the best I've ever heard is "we're working on it!" Then you hear the usual excuses: there are far too many different distributions of Linux to work on, we want it to work on all of them.

Do you really think any Slackware users are going to applaud you for including them in the great world of interactive whiteboards? Or how about Yellow Dog--be nice to run Promethean through a PS3! Will it run on Damn Small Linux or Puppy? Will you have support for the Khmer language?

Here's a hint for Promethean: Just go to Distrowatch and pick some of the top distros. Hell, even Stuart has been charmed by Ubuntu, so pick Ubuntu. Pick Debian. Pick something like, say, Mepis or Fedora or Open Suse. Or just pick any two of those. If you get your software to run on them, I'll install one of them.


So I begin the school year with two laptops. Old Faithful, running Ubuntu Linux, which I use for EVERYTHING, and Little Crappy, a Dell running Windows XP that ... well ... I don't use. However, Little Crappy is the only choice I have for my Promethean board software.

To be honest, I'll probably just connect Old Faithful most of the time and use the whole setup as a glorified projector.

The sad part about this, though, is that Promethean is too wrapped up in its proprietary ways to realize that there is a community of Linux users that could help them to actually develop the Linux version. But Promethean won't budge. Smartboards have Linux support.

I think askvictor made the best statement about Promethean:

"With all due respect, I've heard it before, and it'll be too late by then. You've been saying 'real soon now' for well over a year... If the linux driver that is supposed to be in development actually exists, release it now and let us linux geeks play with it... Linux development works very differently to windows and mac development (at this stage anyway) - many linux users are OK with drivers or apps that don't quite work perfectly all the time - it doesn't give a bad impression of your product. What does give a bad impression of your product is not releasing anything (driver/specs/etc)."


P.S. If you really explore all the links in this post, you get an A.

Tuesday, August 12, 2008

The Joys of a nice Programming Environment

If you click on the image for this post you can see a full size screenshot taking by me while programming today.

One thing that strikes me about programming is how important it is for the student to feel comfortable in their programming environment.

This was made very clear to me when I attended the AP Java workshop at Carnegie Mellon a few weeks ago. I left my Ubuntu laptop at home and used Macs exclusively that week. The first day I was feeling shell-shocked trying to code there. Things that I never think about were so hard to figure out. I use multiple desktops on Ubuntu and can quickly jump from my IDE to Firefox if I need to look something up. Of course I have Amarok playing in the meantime.

Now, all of that is absolutely easily done on a Mac--it just takes a while to get used to the new environment. By the end of the week at CMU I had developed a new like for Macs and I kind of miss using one at times. I've never really liked the Windows environment for programming, although I'm sure some people do.

The point is: students need time to adjust to the environment you use in class. This is even more true when you are using IDEs that students are not familiar with--like Eclipse.


The program I'm writing there on the screenshot is one of the programs from Think Python: An Introduction to Software Design by Allen B. Downey. If you have not read any of Allen's books on programming, check it out. Think Python is the main textbook for my Introduction to Programming class.

Student Artwork

The image you see here was just sent to me by one of my students. One thing I love about digital art is how free it allows the artist to be. I can see great variations in my own creations, and yet none of them look anything like this image. You never know what you'll get when you let students go with the flow. This image is by a student codenamed "Cloudy".

I came out of the DIY movement of the 80s. I think we have the means to create our own art and music and writings like never before.

Saturday, August 9, 2008

The Ruins by Scott Smith

I really wanted to LOVE this book. I wanted to be totally engrossed in a fast-moving story of terror and dread in rural Mexico. This one had all the makings of a great read. Five twenty-somethings decide to take a detour in their Mexican vacation and wind up outside a creepy Mayan village, on some old mining site that seems to be hiding more than a few secrets.

Smith writes in a very straightforward style, although his paragraphs are a bit long and dialog just gets thrown into them. There are no chapters in this book, it just rolls along from start to finish. You get the feeling that you should just read the whole thing at once, and, more or less, I did.

What I like about this book is that it keeps moving forward. Although there are a few flashbacks, you really feel like you're reading the book in real-time. It reminded me of Stephen King's excellent short story The Raft. It had that oh-crap-we're-in-over-our-heads sense of dread that just built itself up steadily. The characters make some dangerous choices in the book, but none that seem all that dangerous at the time. Each next step seems...well, justified. Before too long, though, you know they are in a lot of danger.

To be honest, this will be the type of book that I'll grow to like more after reading it, as time goes on. You have to appreciate a modern suspense/horror novel that is not too cleverly plotted. If there's one thing that can quickly get me out of an interesting story, it's feeling that I'm being manipulated by a writer that feels the need to have a whole lotta plot twists. Smith doesn't do that, thankfully. This book is not predictable, the characters are interesting, and he doesn't blow the ending. The best part of the book, however, is the setting. That little hill back in Mayan country is pretty memorable.

I'll watch the movie, I guess, although I have my doubts that they're gonna get it right: for one thing, the hill looks too dry--where's all the vegetation?

I'm going to hide my main complaint in the comments, as it contains some spoilers and you may want to read this one.

Final grade: B- (but rising).

Thursday, August 7, 2008

Emergent Properties

I remember first learning about emergent properties from Elliott Sober at the University of Wisconsin. Of course back then the focus was on emergent properties in biological systems.

Like any great concept, however, it easily applies itself to other areas, like education. I've pretty much made a career out of harnessing the emergent properties of a classroom--those seemingly unpredictable results of 25+ students interacting as a group--let's call it the "personality of the class at hand."

Well, I'm learning a lot about emergent properties in web hosting. Taken apart, I feel like I can grasp PHP, MySQL, and an application like Moodle. Host all of them on a Debian Linux server and you'd think it was all black and white.

Enter emergent properties. Suddenly the web host's PHP configuration and Moodle decide that I can't upload files. Or rather, I can, but then I can't access them--which is not a good thing on a Moodle class page. :-( I'm trying to find the problem, but spending five hours on this has only made me want to just delete the whole mess and start over. At lease I've got Wordpress working correctly for the new migrant/ELL blog I'll be hosting.....

Wednesday, August 6, 2008

Baby, You're the Greatest!

Spent most of this morning working on Alice. The image you see is from the classic FirstEncounter scene that is used in the Learning to Program with Alice book.

What's so cool about Alice is how advanced you can make your programs become. Rather than merely doing the scene as asked for in the text, I introduced for loops and turned the robots motion into a much more complex and realistic set of instructions. [He now lifts up his back middle leg, walks on his other four legs, then lowers the back middle leg down for support after walking.] That would not have been easy to do without Alice's awesome interface, which lets you click, drag, and drop various methods of the various objects. Oh, and I added the penguin just as a shout out to Tux.

Last year I used Alice while teaching the IMP Math unit All About Alice, which teaches students exponential functions. It was remarkably easy to have my students program the examples from the text into scenes using Alice, so that when Alice doubled here size ten times in a row, students got to see just how big that would make her.

Alice is a free gift from Carnegie Mellon University. If you haven't played around with it yet, give it a try.

Tuesday, August 5, 2008

Designing programs in Java

I've done my fair share of complaining about Java, and I still believe that the AP Computer Science exam should be in Python--a more flexible language with cleaner syntax and the ability to use Object-Oriented design if appropriate.

Truth is, though, that Java has a special appeal to my obsessive compulsive tendencies. There's something cozy about sitting down to write a relatively simple Java program. With Python I'm tempted to just start writing--and the development time in Python really is super fast. With Java, though, you need to plan things out ahead of time a little more. Of course that's a good idea in Python, too, but it's not enforced in the way Java enforces program planning.

Since I only have a week or so before school starts, I'm practicing my chops and staying sharp by writing a few programs here and there. Today I decided to write a Java version of the classic Hi-Lo Guessing Game. Rather than just starting to code, however, I thought about the program in detail beforehand, and made a few design choices that would help make the program something I may use in my programming classes (as an example of design). Let me elaborate.

The basic Hi-Lo simply has one playing guessing a number between two set values, like one and one hundred. The other player guesses a number, like 42. The first player than says "Higher" or "Lower" depending on the secret number. You know the game.

What I came up with, however, were three classes to use in a program:

1. ComputerPlayer
2. HiLoGameEngine
3. StatsKeeper

Now, each of those classes will have specific attributes and methods that they are responsible for. Using a procedural approach it would just be the one program and the human user, with the program responsible for all three roles that I've delegated to individual classes. Why do this? Because it's good design. Suppose I want to improve the AI of the ComputerPlayer class. Rather than tweak that class, I can extend it with a CleverComputerPlayer class, or even a CheatingComputerPlayer class. The StatsKeeper class may be reused in another program in the future--in a tic tac toe game, for instance. You can see the possibilities of Object Oriented Design in the long run; software can be reused for other applications.

Bringing this into the classroom will be fun. One of the weaknesses in the AP Computer Science curriculum, I think, is that it focuses on solitaire coding. In reality, especially in open source, but also on development teams, a programmer needs to know how to work on a team.

By the way, in my program the computer and human players switch roles and compete in a series of games, with the StatsKeeper recording all the results.

Sunday, August 3, 2008

Reflections on the 2008 AP Java Workshop at CMU

Last night I flew home from the 2008 AP Java Workshop that I had been attending all last week at Carnegie Mellon University. Although I'm happy to be home, I'm also a little sad that the workshop is over. (Yes, I do appear in these pictures of the workshop--not sure why it's called a picnic, though.)

Leigh Ann Sudol
ran a great workshop. In particular, I was interested in her views of women and minorities in computer science, as my programming classes have a large number of female and/or minority students.

Don Slater
gave us some top secret looks at Alice 3.0, which was perhaps the highlight of the workshop for me. Alice is really a special program, and having EA come on board can only help make it even better. Although I would prefer Alice to be a full open source project, I think including the EA models from the Sims 2 game is probably a very good thing.

Randy Pausch passed away a couple days before the workshop, so CMU had a somewhat somber feeling throughout the workshop. He will be missed. I also got to meet Wanda Dann, another main member of the Alice team.

All the presenters at this year's workshop were excellent. I was especially amused by the humor and energy that Dave Feinberg brought to mix. The world needs more teachers like Dave.

Now the hard part: applying what I've learned. Our school is no modern technological wonder. I've already found out that adding 15 computers to my classroom is just not possible, according to the district electrician. That leaves me either using a mobile lab of laptops in my classes (hoping the batteries hold out), or taking my classes into a nearby computer lab that is anything but cutting edge. The irony here is that more and more the advances in open source are making it possible to reach students like my students, and yet there is always something that seems to hold them back, like when I asked to have Alice running for my students last year and it never happened.... :-( Teachers who use open source software must have their own installation privledges, something I don't have at all in my own classroom--except for on the IBM-donated MESA laptop that I have running Ubuntu.

On the brighter side, however, I have used Dreamhost and set up plenty of space for a new school web page and more than enough room to house all the STEM teacher's Moodle class pages. The computer programming club also has free use of my site for their own web page, along with any students in the club that want to host on my domain:

Not a commercial site, but EVERYONE thinks ".com" nowadays. Anyway, you can watch the site develop over time, if you'd like. Right now it's pretty sketchy.

In conclusion, it was a good week. I was especially ammused by the discussions I heard of two very deservedly hot topics: Python and Ubuntu. From the short time I got to talk to these other computer science teachers, I'm convinced that in almost every case a Python user is a Python fanatic, and an Ubuntu user is an Ubuntu fanatic. I heard of more students using Ubuntu than teachers using Ubuntu, but teachers are slow to change.

I also must say that I have a new level of respect for Macs, after using Macs exclusively the whole week. May have to get me one of those someday to complement all my Linux boxes.

Friday, August 1, 2008

Praise for Ubuntu from a Java Education Expert

Cay Horstmann is almost a legend in the AP Computer Science field. While reading his blog recently, I came across this paragraph:

"Ubuntu is a great platform for software development. We covered a lot of ground in a short amount of time, and the students who used Ubuntu instead of Mac OS X or (gasp) Windows were way more productive. We particularly loved the feature where you type in a command (such as aclocal) and Ubuntu tells you to run sudo apt-get install automake if the command isn't yet installed. What could be better?"

The AP Java Workshop here at Carnegie Mellon is winding down. I got a sneak peak at the new version of Alice last night from Don Slater. I'm trying to get my school to be a pilot school for the upcoming version this next year.