Showing posts with label philosophy. Show all posts
Showing posts with label philosophy. Show all posts

Saturday, February 14, 2009

The Day it Rained Forever

The Public Library just had a book sale and I was lucky enough to find a nice hard-cover copy of The Stories of Ray Bradbury. The 100 stories in here will nicely complement my copy of a more recent Bradbury anthology of 100 stories--none of them are duplicated.

I've been in a lull. Although I have been quite productive teaching-wise, my life has been dominated lately by the difficulties my boxer dog is having. She's 10 years old and shows the symptoms of geriatric vestibular syndrome. Although her mind is still there, she lacks to coordination now to feed herself. I've been feeding her by hand, though, as it's the least I can do. She really has been a great dog--albeit a somewhat high-maintenance one. :-) She went through a difficult spell last Spring and fully recovered. We're hoping she can do so again, although this time the symptoms are much more severe. When I was a kid I used to absolutely dread the extreme emptiness you experience when you lose a pet. Not much has changed, really. Many things just don't matter as much all of a sudden, and you feel as if you're floating through life.

Sunday, January 18, 2009

Raygun Gothic: The Future That Wasn't

Today I went for my first long bike ride of the year. It's day one of our school's voluntary "wellness challenge", and I'm looking forward to getting in shape.

The weather was very windy, but warm, almost warm enough for me to be wearing the t-shirt and shorts I had on. While biking, I listened to my iPod play the first episode of the old time radio series X Minus One. It was a great example of retro futurism, as the episode (from the mid 1950s) described the "future" in the 1980s.

Now, if you were a kid of the 80s like me, you won't recognise the 1980s in the old radio episode. That's because it was the future that did not occur, the future from the forgivably short-sighted minds of 1950s writers and producers.

As I was riding along, I got to wondering: what's the term for that style? Steampunk has it's own look, as does Cyberpunk. I found myself wishing I could Google it right then and there on my bike just to put an official term to it. Now, after looking it up, I find there are really two terms: retro futurism and raygun gothic (from Wikipedia):

Raygun Gothic is a catchall term for a visual style that incorporates various aspects of the Googie, Streamline Moderne and Art Deco architectural styles when applied to retro-futuristic science fiction environments. Academic Lance Olsen has characterised Raygun Gothic as "a tomorrow that never was".
I first came across this term when William Gibson coined it in his excellent short story, "The Gernsback Continuum." That was the first time I really thought long and hard about the concept of retro futurism. I mean, of course I had always watched The Jetsons and a host of other old science fiction shows. When I first watched them I still thought they were presenting a plausible (all-white, sexist, and safe) version of what the future could be. In time, though, you notice that the "future" of those old shows looks more like our own past--albeit with big shiny fins and slidewalks.

Great examples of Raygun Gothic are all around us. The Fallout 3 video game is 100% raygun gothic. The TV series LOST is also almost entirely raygun gothic. Heck, even this great video on Youtube is Raygun Gothic, as it tried to imagine the world of 1999 way back in 1967.

The thing is, though, that every story about the future to come is doomed to become another case of retro futurism. When I was reading cyberpunk in the late 80s, it sure looked cool and exciting. Now it looks a lot like ... well ... the late 80s. :-)

[Note: All the episodes of X Minus One are now in the public domain. You can find them at the Internet Archive for free.]

[Note number two: The difference between the term retro futurism and raygun gothic is this: raygun gothic is a particular type of retro futurism that features a future that was envisioned by the (male) writers and producers of the 1950s: automobiles with big fins, blonds ubber people, rayguns, etc. Stempunk, therefore, is also a form of retro futurism.]

Why Teachers Don't Share More Often.

One thing that drives me nuts is watching money be wasted. Pretty much every institution finds ways to spend money unnecessarily, but schools are often quite proficient at this skill.

What makes this even more frustrating is that teachers are by nature one of the most sharing and willing to contribute group of people I've known. Teachers create things every day that they'd be willing to share with others. If only someone would coordinate this resource and bring a true community to fruition!

Sadly, it seldom happens. I blame proprietary formats and money-hungry businesses. Teachers have been slammed for so long by the copyright zealots of the textbook publishing industry that they simply are unaware that there can be an open alternative to the way they do their jobs. Certainly within individual schools and districts there may be a large amount of sharing going on. By this I do not mean illegal sharing. Instead, I'm talking about the plethora of lesson plans, activities, and strategies that teachers create and use in their classroom. Most teachers would love to share their creations and utilise the creations of other teachers. This occurs whenever teachers get together at a workshop--they exchange email addresses and promise to send each other their creations.

Many times, though, they feel guilty doing this, or feel that it is too good to be true to be able to "steal" from other teachers. [They use that term, "stealing"! when they should be saying "sharing."] Where does this come from? Maybe from the fact that any time teachers attend a workshop sponsored by major textbook publishers, they are given complimentary copies of what often appear to be wonderful resources. As soon as they open up the book to make a few copies to share in class, though, they see the strict copyright warnings printed on every page. This is so common that they believe it is typical of teachers sharing resources: there's always a cost.

But, there isn't always a cost. Most of the resources that teachers share are not photocopied from copyrighted materials--they're quizes, plans and activities that teachers created by themselves. They should be able to enter these items into the vast network of teachers and create a free and open community of resources for any teacher to contribute to and to use.

There's one problem, though: proprietary formats. If teachers continue to use closed software like Geometer's Sketchpad, we remain slaves to the format. This is changing slowly, however, as there is no longer a stigma attached to writing pdf files or importing doc files into OpenOffice. Geometry teachers could use several of the free and open source alternatives to Geometer's Sketchpad, but few do. Why? Because the textbook publishers are like crack dealers. They know by now how to "give" (although you really don't get any rights to what you're given) teachers a free copy of their software. They also know how to make district tech departments feel like adopting their software will make their lives very easy.

So the district buys a site license to Geometer's Sketchpad and they're all set. Notice the students were never mentioned in this process? That was intentional. They are NOT factored into this process at all. Instead, decisions are made that lock students into having to use expensive software that they have no access to outside of class. Students would have access to all of the open source alternatives at home.

My district has done quite a dance with proprietary software. In the past it was acceptable to pay for access to, say, MacSchool, as it was pretty reliable and did what we wanted it to do. Since then, though, we have used expensive software that was terrible, and freeware (NOT open source) that was generally despised by all involved. Next year we switch to Infinite Campus, which I believe is a good thing. In the meantime, though, we have a semester where teachers are allowed to use whatever they want for a grading program. Really. Whatever we want. Some will no doubt just use the traditional red gradebook and only use computers for reporting final grades. Others will try to find an old copy of Making the Grade or something similar lying around.

I decided to Google "open source grading program teachers" and found Open Grade. It's simple and (dare I say) elegant. I did the Linux make, build, install and now have a pretty cool grading program with few features, but even less annoyances. It works. I can print out student or class reports into text files and fit a lot of info on one page. Also, since it's open source, you can get to the source code (in Perl) and alter the way it works.

We're lucky, as educators, that there are people like Ben Crowell, who created Open Grade. Some may scratch their heads and say, "but why would someone do that and share it for free?" I would say, however, that behavior like that is the rule, not the exception, in higher education, and I have hundreds of examples to prove that point. Here's a couple:

Jason R Briggs has written an excellent Python book for teaching Python to kids.
Dick Baldwin shares a ton of his own work for the Alice programming environment.
Allen Downey has been sharing his Java and Python books for years.
Moodle and Wordpress are used by many teachers, most of which can't believe they're free.

I just wish we had a more efficient way of sharing all these homegrown education resources....

Friday, November 28, 2008

Traffic Jams for no reason at all


If you've driven through a major traffic area like I25 south of Denver, you know what it's like to get in a jam. You come upon red taillights and suddenly you're stopping and going in little spurts that can take over an hour if you're unlucky.

Sometimes you find out why. You see a crash scene and a bunch of emergency workers. Or a lane that's closed for construction.

At other times, though, you have no idea what caused the backup. I had long had a theory that there really was no major cause: all it takes is for one person to get to close to the vehicle in front of her and she taps her brakes. Then my wife says, "hey, they're stopping up there." So I slow down a little, as does the guy behind me. Apparently that's all it takes.

When I saw this article and video I found it fascinating. Watch the video clip. All they do is have a bunch of cars driving around a big racetrack circle. Doesn't take long before someone hits their brakes and send a wave back behind them. When it's on a circle it's even cooler, as the wave comes back to get you again.

Can you tell I did some commuting this Thanksgiving break?

Thursday, November 6, 2008

Zombie reclining in the school gym!

That has got to be one of my strangest blog post titles ever, but look at the picture. That was created by a student of mine today in my Intro to Programming Class. We've completed the 9 week Python curriculum and are now enjoying programming with Alice, a great tool for teaching the concepts of programming.

Having already learned loops, functions, and decision structures in Python, it has been a breeze to watch them dive into Alice. Although I do like the suggested curriculum for the Alice software, I have modified it somewhat. Here's how:

A while back--actually several years ago--I started writing math quizzes that had four problems on them. Those four problems corresponded to the four levels of proficiency that we used on the Colorado CSAP exam: 1=Unsatisfactory, 2=Partially Proficient, 3=Proficient, and 4=Advanced. There's really no point to link those to a traditional grading scale, but if you did, it could roughly translate to 1=D, 2=C, 3=B, and 4=A.

So my four math problems on the quiz were chosen with those proficiency levels in mind. The level three problem was one that if they could solve it I would consider them to be proficient in the task at hand. Level 1 problems were so easy that if a student missed them I'd know we had real problems. If a student could get to level 2 but not 3, I'd know we were getting close to our goal and I'd have to work more with those students. Of course the level 4 questions were usually pretty tough--challenging enough for those few students that can quickly complete the first three levels. [I hate to have my brightest students bored--they need to be pushed, too!]

Anyway, I've using a similar approach in my programming classes. Whether it be Python, Java, or Alice, you can go far by creating a set of four programming challenges--one for each level of the proficiency scale. For instance, our first group of challenges in Alice were simply designed to get students familiar with the positioning of objects in the 3D world of Alice. Here's what I came up with:

Level 1: Character Pyramid: make a pyramid of characters in Alice so that the characters are properly placed, with their feet on the shoulders of the people below them. [I showed them an example of this.]

Level 2: Salute! Make a character look as if he or she is giving a proper military salute. The more real it looks, the better. [Again, I showed an example for this one.]

Level 3: Shoot out at the So So Saloon. Using the Sheriff and Cowboy characters from the Old West folder, set up a scene that looks as cool as you can. Your goal is to make the scene look like a real action scene, not stiff characters in a primitive video game. If you don't like the western theme here, go ahead and choose your own scenario--a pillow fight on the moon, for instance!

Level 4: Sitting at the Table. Position at least three characters sitting as naturally as possible at a table, seated in chairs. The more you can make them look like real people, the better.

Now, that was their assignment. Nearly every group of students reached level 4, and had a lot of fun getting there. There were questions--plenty of questions. Some I answered by showing a mini lesson to the whole class (for the setVehicle, orientTo, and drop dummy object methods, for instance). These mini lessons were short, though, and often demonstrated with the help of students. As much as possible I try to let students learn from doing, and then have them help each other with their challenges.

What has worked so well with this approach, is that I actually have time to walk around and visit with pairs of students as they program--which allows me a little extra time to work with my English Language Learners. So far my ELL students have soared with this approach, and my energy level has never been higher.

Monday, October 20, 2008

A Visit from America's Choice

Today I had a visit from some of the people working for America's Choice. They came in to my 7th period IMP2A class and observed for a little while. Immediately after they moved on my students were full of questions:

"Who were those people?"
"Are they watching you or are they watching us?"
"What were they doing?"
"Do you know them?"

I explained as well as I could: our school is NOT doing as well as it could. America's Choice is going to help us become a better, more successful school, and that they (my students) deserved a better school.

Now in the past I've criticized those that leave the classroom and become consultants. Still, when it comes down to it, today we had our entire math department together talking about student achievement. That doesn't happen every day--and I believe it should.

Although our meeting with AC was relatively short, one thing they pointed out was that with our student demographics (high ELL, high number of free and reduced lunch, high minority), we'd do best to focus on the 90 minutes during class when we have the students in our room, rather than fighting the homework battle and dwelling on things we CAN'T control. That was refreshing for me to hear.

I've spent my entire career at schools like my current school. At one point in the past I had reached the conclusion that I could raise test scores by focusing my energy entirely on my classes. At one point I even gave up on the headache of homework--partly due to the fact that I myself hated homework when I was a student. I stopped wasting energy trying to police the homework situation--and I had a lot of research evidence that said it was okay to do so [and I'm well aware that someone can find a lot of evidence FOR homework]. Still, my students did well during that period, and they seemed ... well, happier.

Currently I do assign homework--and it's a struggle. I go along with my department, though, being the good soldier that I am :-) Still, I can't help but welcome the beginning of this discussion at our school.

What would be cool would be to put it all on the line and base teachers' pay on their students' achievement, measured by a fair and accurate test. How different would our methods of instruction be if that was the rule? Teachers are darn influential on the lives of their students, and perhaps it's a bit too easy to just coast along, rather than pushing ourselves to constantly improve.

Doesn't help that we don't earn much, though....

I recently found these articles here to be really helpful. They're a little dated, but still very relevant.

Wednesday, October 15, 2008

Not Your Best Moment, Bocephus....

I just heard about Hank Williams Jr. singing praise for both McCain and Palin yesterday.

I had to read all about it. At first I thought, well, maybe he just made an appearance and showed some support. Nope, he kind of made a fool of himself. Which is too bad, really, as I must admit I like a lot of his music. Since I heard "Dixie on my Mind" back in 1980, I've been a Bocephus fan. I own more than 30 of his albums in various forms, ranging from vinyl to cds. Some of my favorite songs are Hank Jr. songs.

Now at times Hank has seemed like a big dummy of sorts, like when that mugshot was taken, but I try not to be a jerk and judge other people. Mostly, I like to give them the benefit of the doubt. I have students of all types in my classroom and I've never been accused of being unfair to them, whether they are Black, Hispanic, poor, athiests, overtly religious, or...well, fans of hickish-sounding music. So I'd look past Hank's negative aspects and enjoy him for being one of the best entertainers of our time.

But today I was pretty dissappointed. That song is just plain dumb. I've probably bought more of his albums than 95% of his "fans", my parents went and saw him perform live, and now he blasts me because I don't support a political platform that has just resulted in eight years of embarassment for our country. I looked past his flaws in the past and will again, I'm sure. However, I edited my Google profile when I realized that I had him listed in my favorite music category. I like a lot of music, after all. So I deleted Hank Jr. and put in another one of my favorite musicians: Thelonious Monk. Monk's music is friggin' awesome.

[Update Oct 17th: After watching the videos on Youtube of this incident, it appears almost comical and not nearly as mean-spirited as the lyrics are read by themselves. Besides--no one really thinks Hank is going to decide the election. It's probably even debatable whether this was a positive incident for the McCain campaign or not. Kind of like having Ozzy endorse you, I guess. Do you really want his endorsement?]

Saturday, October 4, 2008

My Three Name Tags

I've now been teaching long enough at my school to have accumulated three name tags--all different in their job titles.

Although all are for teaching roles, one is for MATH, one COMPUTER SCIENCE, and one is for ELL (English Language Learners--formerly called ESL).

Each one of those name tags is special to me, and I still wear them all--not at once, though.

Teaching computer science is the most recent role of the three. Still, my background teaching math is clearly on display when I have students writing code. Recently we've been having fun with the classic number theory problem "Getting Down to One." Also, my programming classes have a large number of ELL students in them. My graduate research was specifically aimed at teaching ELL students to learn programming languages. During the research, though, I was able to calmly calculate and plan various tactics and strategies for supporting ELL students in my programming classes.

That was the plan. Now, the reality is a little different.

Even though I have filled quite a toolbox of ELL techniques through the years, I'm still amazed at how challenging it can be to shelter instruction properly for ELL students to have the same chance at success as mainstream students.

Case in point: Mayra (not her real name). Mayra's English level is clearly lower than her peers. She's at level 2 in our school, which means she's just starting to use conversational English at a basic level. Her academic English level, however, is much lower. Still, she has a great attitude and never complains.

Still, it ain't easy. Python is one of the easiest languages to learn, and yet syntax errors are so much more numerous for Mayra and my other ELL students. Then, Mayra had a little bad luck of sorts. Although she had virtually the same code as the students next to her (they were programming in pairs), Mayra's code wouldn't run. It was driving her nuts and I couldn't figure out the problem either, as all her code looked fine. Then, I realized that she must have named her program the same name as a built-in module in Python that she was importing in the code itself. This makes Python import the program itself, rather than the module she was trying to import. A simple change of name for the program fixed the problem, but it was unfortunate that it had to happen to Mayra, when syntactical errors are tough enough without a little bad luck thrown in.

Teaching ELL students at the high school level can be really tough. As much as you love the students, you realize that they are somewhat caught between worlds. Their literacy skills in both English and their native language (usually Spanish in our school) are often low. Their thinking skills may be advanced, but literacy problems often trip them up. They have so much to say, they just have a tougher time saying it.

So I guess in many ways I'm most proud of my ELL teacher name tag. I may not feel successful as often with my ELL students, but that's only because the challenge is so much more difficult. The successes we do share, we share in our hearts and our minds.

[This post's image is a GIMP original.]

Tuesday, September 16, 2008

A Strange Sense of Foreboding

Today I had a two hour annual meeting for the mentoring program that I'm part of here in our district. If you are a teacher, consider being a mentor to a new teacher. Not just to help out the newcomer, but also to help keep your own teaching fresh. I'm always surprised by how much mentoring (and that's with me as the mentor) makes me reflect about my own teaching.

When asked to pick one word that described my day today, I chose "foreboding." Why? Well, teaching is tough enough as it is, but this week is especially brutal. Tonight was the 2-hour mentor training, and tomorrow I have parent/teacher conferences from 2:45 until 8:00 pm. Now, both the mentor training and the conferences are good experiences and I enjoy them. Still, to lose two nights in a row has an effect on a guy. So today when I'd get done with a class or be sitting at my desk and feeling good--well, something in me always snuck up to say, "don't feel too good--it's hellweek."

Foreboding. It's why Saturdays were always so much cheerier than Sundays when you were a kid. It wasn't just the cartoons. It was because Sunday meant Monday was coming.

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.

Okay.

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)."

Amen.

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.

NOTE:

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.

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.....

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:

www.FutureSkyline.com

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.

Saturday, July 26, 2008

Chicken or the Egg--Algebra or Geometry?


I'm going to do what a lot of edubloggers do: blog about other blogs.

Jackie from Continuities has started a good conversation on the order that we teach math in high school: must algebra come before geometry?

My gut reaction is: nope--we just do it that way because of tradition, and tradition is a dangerous thing to cling to. I guess it would be interesting to do a historical analysis of this issue.

I don't know why, but I'm always excited about change. If someone tells me tomorrow, "Hey, we're thinking of teaching Geometry before Algebra 1 at our school, would you like to come and try teaching with us?"--well, I'd probably sign up just for the experience.

Of course there are many types of change I don't like. If someone tells me tomorrow, "Hey, we're thinking of teaching 50 minute classes of about 30 students each class and we're gonna go with a good 'back to the basics' approach with either Saxon or Glencoe books, would you like to come and try teaching with us?"--well, I'd probably run the other way.

The change should at least hint of progress, whatever that is.

Thursday, July 24, 2008

More about the power of a good book.


My last post really was not about The Mist so much as it was about how incredible the act of reading is.

The picture for this post is about a memory implant, but I like to think of it as an interface between the brain and a computer.

You see, I've always thought early attempts at virtual reality were way too dorky. I mean, the goggles and gloves phase just did nothing to thrill me.

Nope, I wanted a simstim that I could plug right into my brain stem (and then plug the other end into a Quake video game or something). Maybe I'd be in one of those sensory deprivation tanks like in Altered States. Somehow I wanted the data going directly into my brain. Any tangle of wires and goggles or foamy gloves would just get in the way.

Well, today when I took a long bike ride in the 100 degree heat, it hit me: plain old reading is a closer, more intimate interface than any movie or video game could hope for. Really, the data just goes right from the page into your brain.

Or maybe the heat was just making me silly.

Book Versions vs. Movie Versions

Reading is such an incredible thing.

Although reading may seem quite basic, the fact is that reading a good story is a much deeper experience than any high def TV and 5.1 surround sound can deliver.

How else can you explain why there are so few movies that turn out to be as good as or better than the prose version?

I believe there are examples where the movie turned out to be better than the book--I just can't remember any of them right now. However, it's all to easy to recall a great piece of prose turning into a pile of crap on the big screen.

Take The Mist, for example. That was one of Stephen King's best novellas. The entire experience of reading it was like watching a mind movie that featured almost total immersion. Then I rent the movie, turn out the lights, and make a serious attempt to enjoy it.

Right away things start going wrong. The characters don't react like real characters, something I don't recall from the book. No, there's something wrong with the logic of their interactions early on in this one. Here's a couple examples:

1. When the mist first arrives, a guy with a bloody nose runs into the supermarket and says terrible stuff's going on. Just from that, and apparently the mist itself, all the people in the supermarket are convinced they can not leave the store. WTF? At least tiptoe out a few feet into the mist, ready to rush back into the store if necessary. Don't just accept the fact that you're stuck inside, no matter what bloody nose guy says.

2. When Ben and a few of the locals try to convince Brent that there really are large creatures out in the fog, the resulting argument is--somehow completely wrong. Brent becomes paranoid and they keep trying to convince him, when they could just go back into the back room, grab a shovel, and bring out the friggin' tentacle appendage that they chopped off the monster. This is the equivalent of keeping the blinds closed and trying to convince your lover that it's stopped raining outside. Try opening the blinds and showing him/her!

Oh well. Some people prefer movies and never even read a book. Can't imagine living that way. The monsters in King's novella were much more convincing than the computer-generated denzians that were in the movie....

Monday, July 14, 2008

Spaying and Neutering should be free.

Today we took our little Hubbles (a yorkipoo) and got him neutered at a low-cost spay/neuter clinic near Fort Lupton. There are other alternatives all over Colorado for this.

I think it's funny that we live in such a strange county. The western side of Boulder county has Boulder, where some people will pay an arm and a leg to have their special pet pampered and fixed in comfort. Go east and cross into Weld county, though, and you see all these people taking animals in to be fixed in an RV trailer in a dusty parking lot.

Animals have all sorts of owners. I'm sure some of the pets that are fixed in the trailer have wonderful lives--like our Hubbles, for instance. In fact, none of the other pets brought into the low-cost clinic looked uncared for. Maybe that's the whole point: good owners will take their pets in to be fixed, whether they take them to the Taj Mahal or the RV trailer. It's the other pet owners we need to worry about.

If aliens did an anthropological study of U.S. culture, I'll bet they'd be pretty shocked at how inconsistent we are towards our pets. Some live like royalty. Others are abused and neglected.

Somehow, something like this should be a free service--and it almost is. I only wish that some of the money from those that choose to spend a thousand on their pampered pet could be redistributed to the less fortunate pets in our society--not to the owners, just to the pets.

[Note: we were a bit nervous about the low-cost alternative we opted for. However, we are quite impressed so far with their service. One nice thing is that, to keep costs down, you don't have to have your pet stay with them overnight. You have to take them in early in the morning and pick them up in the late afternoon. It's nice to have Hubbles here at home and comfortable as his groginess is wearing off.]

Thursday, July 10, 2008

The current stat of edublogging

I don't know what to think of edublogs. I sure seem to have a love/hate relationship with them, though.

My online personality has many facets. I'm one person to the Digital Comic Preservation group--generally a very thankful and amazed supporter of their goals. On the Ubuntu forums I'm a source of information on what I know about Ubuntu and open source applications--especially as to how they can be used in an educational setting. The Ubuntu code of conduct pretty much assures that we all get along, even when arguing. On the Python in Education special interest group I'm also very polite and thankful for the expertise that is so freely shared. It's on the edublogger front, though, where I've pissed people off in the past.

Part of the problem is the rate of change in different spheres. Most facets of my internet personality hang out in areas where change happens quickly. If a problem comes up, it's dealt with and all are welcome to jump in and help solve it. This is true of the DCP and just about any gathering of programmers.

As some have noted
, however, change in education takes a lot of time, and the edublogger community deals with this all the time.

Bud the Teacher
is a busy man. My job puts me in contact with him personally at times, but I know him more from his online persona than I know him personally. Still, what I'm always amazed at is how downright polite he is online (and also in person).

Me? Well, I've posted comments here and there that have done more harm than good, and that wasn't my intention. I'm still trying to figure this whole edublogger thing out. My positions in other online communities of programmers and Linux users really didn't prepare me well for the edubloggersphere. I'm still trying to determine what the purpose is. I guess I'm a bit too task-oriented and want to tackle a problem. In the edublogosphere I'm not really sure what the current task is.

Theres always a lot of talking about the importance of collaborating and sharing (which reminds me a lot of open source development priciples)--and yet there has to be more than that. I also read a lot of posts about a certain web application or product that teachers are really happy with. I've noticed that more and more these are open source applications, although the edublogger often will make no mention of that in their post. That's where I usually jump in and say something like, "...and the nice thing is that this is an open source application, made possible by a lot of hard work and collaboration among programmers with a common philosophy..." But then I blow it and say something like, "...and it sure beats the proprietary crapwhere Dreamweaver that too many teachers still use only because their district chose to waste a ton of money..." See? I write those things all the time.

My solution? I guess I'll just pretend the Ubuntu Code of Conduct also applies in the edublogosphere--whatever that is.