Wednesday, February 27, 2008

Teaching Programming

We started the programming unit yesterday.

This year I'm switching from Perl to Python. I'm also hugely overhauling my teaching style. I was convinced by Vern Ceder (and various other sources, I'm sure) to get to graphics as fast as possible and skip the endless pedantic slog between here and there. In nearly all of the books I have used as resources, graphics are late, late, late. I decided to take a page out of the media computation book (not literally, but mostly only because I don't have a copy), introduce graphics as fast as I can and do lots of Just In Time teaching to backfill what students need as they care about it.

I want to mention my incredible gratitude and luck at the support I've received. Vern's presentation at NECC 2007 was transformative in my thinking about this unit. Getting to participate in the Chapman University workshop about teaching Python gave me the basics of the language. And most amazing, I have been meeting with Guido van Rossum regularly this fall and winter. He has reviewed my code, explained concepts without demeaning my lack of knowledge, and regularly reminded me what beginning programmers are like when I waver about presenting the material in this unusual, out-of-order way. He might be the nicest super-geek I've ever met, though Tom Zeller is right up there.

Day one went great! I started the students out in IDLE in interactive mode. We walked through print statements with strings and then numbers. It was great - the kids let right to the places I wanted to go, like learning about a syntax error when
2x2
didn't work the way they thought it should and testing what happens when you put math into quotes. I introduced variables super-quickly - in the past, variables would have taken an entire period, this time it was almost an aside, as a way to do math. Similarly, I introduced for loops and the range() function in about 3 minutes because I was up against the end of the period. The kids followed pretty well. I stopped to check the comprehension level several times and while it was slightly overwhelming, they were fitting it together pretty well. One thing that went very well was that I'd grabbed a few photocopies of their math textbook so I could show them how to use Python to program some of the problems they would face later that day in class. The whole concept of working collaboratively with other teachers is the subject of another post, but I was very happy at drawing the connection.

There were a bunch of things that went really well. It was very interactive, the kids were engaged, and they were typing right along with me. I think they really got that you can (and should) create hypotheses and test them right away. "What if you do blah?" "Let's try it" "Oh, cool!" They had terrific ideas and were able to figure things out really fast.

There were a few things that were, um, sub-optimal. For one, I had planned WAY more than I could reasonably teach in one period and didn't cut myself off fast enough - I was too excited about the connection to math. I would have liked to have given the students a small homework assignment to write a program and didn't have time to do so. I'm okay with it since not having homework makes the students happy and I'd like them to think programming is fun. Yeah, not optimal, but I'm looking for the silver lining.

Second, the Just In Time teaching requires the teacher to be flexible and able to quickly analyze situations to figure out what is going on and what is worth covering. Some of the time that worked well - on the fly I decided not to cover modulus and the sqrt() function in the math module. Some of the time it didn't work well. Their math problem was to determine five values of x that would make 2x-6>=3 true. I showed them how to do it but then was preparing to segue them out of interactive mode and into script mode since it had to happen 5 times. (This was also where loops came in, even though it meant skipping conditionals!) In one class, a student suggested just programming y=2*x-6>=3 and then iteratively changing x and re-evaluating y. Which, of course, didn't work right, but on my feet I couldn't remember that it was because y had been set by what the formula evaluated to in that moment. Duh. It wasn't horrible, but I should have known better.

Tomorrow I will show them two longer programs - one that is a "guess a number" game (binary search!) and one that generates Shakespearean insults. Then they'll be on their own to write a little program. So exciting!

Tuesday, June 19, 2007

Everybody Knows That

I'm taking a workshop this week about how to teach Python. There are pros and cons to the workshop. Although I have what feels like a number of complaints, on the whole the workshop is good.

The course is giving me a lot of empathy for my students. I didn't understand what the goals of the workshop were or how exactly it was going to run and spent a lot of time yesterday trying to figure out what was going on and what to do. I also felt a certain amount of boredom. It was really hard to sit and focus on reading and programming all day. The little programming exercises were good introductions to the concepts, but they weren't terribly engaging.

I spend a lot of time feeling frustrated and stupid. Even though this is an introduction to Python, there's an assumption that everyone has programmed before, often in multiple languages. I think I'm the only Perl person in the room. My knowledge of Java is introductory and I don't know any other languages. I absolutely trust my ability to learn new things, but statements like "if you think of how to do this in Ada, it will be obvious" are upsetting. Lectures and discussions are in a different language. This morning's lecture was about functions. I knew some of the jargon, like arguments, parameters, and returns. But I had a terrible introduction (previously) to pointers and references, so the whole part of this morning's lecture about how Python passes arguments was significantly over my head.

I read a few weeks ago that a person can read fluently as long as they know 95% of the words - they can pick up 5% through context clues. More than that requires significant time and mental energy for decoding. So this morning's lecture was probably 20% words and concepts that I wasn't already familiar with. Too much to fluently understand, and of course, in speaking, once it is gone, it's gone.

The other part that is frustrating about not understanding is whether it is even important or not. I teach middle school. I strongly believe that I am an expert about how to best teach my kids. But I am not The Expert about what the Most Important concepts in computer science are. Is it crucial to teach students about pointers, stacks, passing by reference vs passing by... whatever the alternative is? If I were teaching driver's ed, is this comparable to teaching kids how to get on the highway (and thus by not teaching it, I limit them to surface streets unless they take a more advanced course later) or is it analogous to teaching them how to change the spark plugs - interesting, useful, required for advanced work, but not actually important on a day-to-day basis in running a car. (Remember, I live in California. We spend a LOT of time on the highway.)

The frustration is about the phrase "oh, everybody knows that!" It makes the part of the everybody who doesn't know that feel bad. I know my students will face it... I think it is inevitable, though it shouldn't be. It isn't just the jerk boys, it is prevalent. I want to remember to hold on to this feeling, so that instead of trying to teach them the things that everybody knows (impossible) I can teach them to persevere when they feel this way (possible).

Wednesday, February 07, 2007

Small Classes and Eye Rolling

There's a hot debate at my school about what connotes small classes. We have about 20 kids per class which I think is fairly small, but turns out not to be small enough to be really proud of "small class size." (I know lots of public school teachers are all rolling their eyes. But we definitely have some public schools around here that have classes of 20, so it doesn't really set us far apart.)

We do have lower teaching requirements than many other schools - I only teach about 85 students at a time.

The thing I love most about not having thousands of students is the opportunity to get to know each kid well. And of course, they have more of an opportunity to get to know me too. I approach my classroom the same way as I approach any presentation, which is with a heavy dose of humiliation and a sense of humor. This is why two moments from yesterday made me laugh.

I was teaching a class about gears, because we're doing robotics. I don't have enough motors for every group to have as many as they'd like, so for the first time I decided to have them learn explicitly about gears so they will be more prepared to build moving robots with fewer motors than wheels. (They're all girls. Most of them haven't spent a lot of time considering how automobiles and other wheeled vehicles work.) Here's the thing: I don't actually know anything about gears. I mean, I can figure it out, but I am not a physicist or an engineer. Why I didn't ask the engineering teacher for help before class is why I approach class with humility.

First class: I'm explaining about gear ratio. It is going pretty well. I'm pointing out the prior knowledge, like "ratios." I show a 16-tooth gear and a 24-tooth gear and explain the ratio and the torque/speed issues. I say, "you can simplify 16:24." Then I realize that while they probably can, I can't. At least not in the moment, in front of the class. Which shows on my face, and I acknowledge. In front of E. Who went to the math contest last week and by far topped everyone else at our school. Who rolls her eyes. Which, if it were any other kid, I would totally put the smackdown on for that kind of disrespect. Here's the thing: E never rolls her eyes. She never speaks out of turn. I am so proud of her! (Also, she's particularly close to me so I'm pretty sure she'd never do it with anyone else.) (Also, I told both her parents when I saw each of them later in the day. They've been concerned because she is very quiet and seems fairly compliant, so they were as pleased as I am. Just wait till she starts doing it more often!)

Second class: I've actually got it that you can simplify 16:24 to 2:3 and I've checked in with the engineering teacher to make sure that I do understand the torque/speed issues the effects of gearing up/down. I'm ready. Whereupon I develop aphasia (a word I never forget, even when it is happening) and can't think of what the things on the outside of the gear are called. So I start the lecture by explaining that gears have pointy out things on the outside. The class asks, "pointy out things?" I turn around to the loudest of them (who I also adore) and accuse, "what would you call them?" "Spikes." "Oh. FINE then." (Yes, that was me with the 'tude. There's a reason my students are not demure and completely respectful and it works for me.) Of course, as the class starts teasing her about "besting the teacher" I look down at the handout I've given them and realize that all the different gears are labeled, "8-tooth gear," "16-tooth gear," etc.

Monday, February 05, 2007

Best semester ever

This has been the best kick-off to seventh grade computer science ever. (I nearly started this post with "finally something has gone RIGHT".) I think it is a combination of factors, but in six years of teaching seventh grade CS, I've truly never had a year go this well ever.

One factor is that for the first time ever, I made a huge effort to jump immediately into CS content. First, I spent almost no time on class norms. I handed out a list of my expectations, pointed out that it is nearly the same as last year, when most of the students had me, and suggested pretty bluntly that since the students are in seventh grade, I assume they know how to behave in a class. I told them the major difference between me and other teachers is that I want them to ask me before they leave the room. I told them my two major rules, which are "no death" and "respect." I also told them there would be a quiz soon about the expectations, so they should look over them. Then we hopped directly into robotics.

* A note. "no death" and "respect" pretty much cover every situation I've come up against and manage to hit a number of my pet peeves as well. The kids are expected to respect me, each other, themselves, and the physical plant. No one is allowed to die or cause the death of anyone or anything else. Anyone behaving in a way that is likely to lead to the breakage of these rules is reprimanded. The example I give them is that they may not tip back in their chairs. This is because there's a high likelihood that they'll fall, crack their heads on the floor, and die. Ergo, not allowed per the "no death" rule. It also works out because my standard response to potential alarm (such as people tripping on cords) is, "don't die."

I have moved my robotics curriculum to be moreteacher-driven over time, but I've discovered that there's a good middle ground. The fastest way to get the students to know the things I want them to know is to guide them directly through discovering them, but they definitely get charged by more time exploring on their own. I almost went too far and had a very frustrating day racing around solving problems. I ended up putting together some handouts with guided activities and letting the kids just go on their own for a couple of days. They're so thrilled with what they're doing! Tomorrow I'll stop and bring them back together so I can make sure they all understand what is going on (I did collect the handouts but won't have time to assess them before tomorrow - possibly the biggest frustration in being overcommitted.)

I haven't figured out what to do for the first project. I'm torn between stealing an idea from another teacher of having the robots follow a course or whether to do the 'dancing robot' idea that I've done before. Either way I'll have to teach them gearing and how to deal with motors tomorrow. A little stressful - I'm not an engineer and am pretty weak on the hardware stuff. But we'll muddle through and at the rate they're going, they'll teach me everything I need to know.

Wednesday, November 29, 2006

Accreditation

I am quite proud of myself, for today I officially said no to a request. As time goes by, I have been invited to participate in some really fascinating projects. When I'm interested in something, it is hard for me to decline to participate. This particular request was to participate in an accreditation visit to a school. Accreditation visits are fun, intense, exhausting, and interesting. Many people don't know about the accreditation process.

Accreditation through WASC, the Western Association of Schools and Colleges, is an intense but straightforward process. It is a self-study for the school - there's an outline to follow, but essentially the school takes a long, hard look at itself to determine its strengths and weaknesses, especially in light of the mission. The school body writes up a very long document outlining who they are. Then a small team of people from other schools - 3 or 4 - come in for a multi-day visit to determine if the document is accurate. They observe classes, meet members of the community including the school board, teachers, students, and often parents. The team writes a response and sends it and a recommendation for a term of accreditation to the governing body who makes the final decision.

The most interesting thing to me about the process is that accreditation isn't about whether you're a "good" school. It is really about whether you do what you say. The example I give is snake charming (which came from an online discussion where a friend of mine accused my school of being a Wacky Ass Snake Charming school.) If you are a snake charming school, your mission is to teach children to charm snakes, and what you do is teach children to charm snakes, then you can probably be accredited. If your mission is to teach children to charm snakes and instead you teach children to raise hippos, then you will probably not be accredited. Obviously, there's some hyperbole there. But the visiting team has to work pretty hard to keep their own biases out of it - it doesn't matter if you teach the "right" English or Math, as long as you actually teach what you say you do. If you represent yourself to potential families accurately and they choose you, then all's well. If you lie, then there's a problem.

I find the whole idea very comforting. There's something about the idea that it doesn't matter who you are as long as you are completely yourself that is very freeing.

Bad Year

I've been out of school the last couple of days due to a family emergency that came up on Thanksgiving. The emergency is, if not resolved, at least not an emergency anymore, for which I am thankful.

I started ruminating on this year. There's no question at all that this has been a terrible year for me - far too much to do, not able to do anything well, stressful and frustrating. But I was thinking about the effect on my students and on their (and their parents) perception of me.

I have a huge amount of respect and affection for my students. Even when they make me crazy, I think they're funny and smart and fun. I can't imagine anything I would rather do than work with middle school girls. I feel like my students respect and like me too. Even this year, I think the kids are having fun and learning stuff.

I wonder what the students and families think about my year. It is clear that not all of them understand what has been happening, though some certainly do. I hope that they are patient - that I have built enough of a reputation as a decent teacher that even the families who don't know me will hear that this is just an off year. Or that I'm managing to hold it together well enough in the classroom (when I'm there!!) that the students and families are satisfied that they're getting a decent education. Mostly I hope that next year is better! If a bunch of things come together perfectly (HA!) then things could be better starting in January, but you can guess how optimistic I am about THAT.

Sunday, October 29, 2006

New course

My short course starts tomorrow. I don't feel ready. I'm *not* ready, but I'm not unready in the ways I feel. Let me explain.

I am actually unready in the sense that I have no yet made the handouts for the first day. That will happen sometime later today and I'll go in to work to print them. It won't take long - I know what I want on them and mostly it is just screenshots. I also have to set up the student accounts so they can save, unless I want to just ignore it and throw a fit when it doesn't work tomorrow. Depending on how busy I get, that'll decide my reaction! (Unfortunately, my principal noticed this morning that I haven't submitted an entire class full of grades. They were officially due Wednesday, though I had an extension, but not really this long of an extension. I haven't done the assessment that will allow me to write the grades... Today could be long.)

I feel unready in the sense of not having totally sorted out how to introduce each thing, when to do what... I will continue mulling in my head right up until the moment I walk into class. I'm pretty sure I will start with a role play, but I might dive right into getting them to tell stories. Tomorrow will be light on the computer, the other days will be much heavier.

I will also feel more comfortable when I've gone through the tutorial again in preparation for the students to do same. There's a strong chance my laptop hard drive is dying, so that's a little stressful. Fortunately I have ways to work around it, including borrowing another one.

Monday, October 16, 2006

Important Topics

I'm designing a new short course, and as I always do, I am starting with the biggest picture. (Note to self: LET IT GO.) So I'm compiling a list of the important topics that should be covered. I sent out a note to a couple of teachers and am considering forwarding it to the AP list.

The question I asked is, "what are the most important concepts in Object Oriented Programming?" I decided to limit myself to OOP instead of generally "programming" or "computer science" because I know I'll be using an OOP language. I am interested in the answer under any circumstance, though.

So... if it were up to you, what do you think the most important concepts of OOP are?

Monday, October 02, 2006

Not an expert

When I worked as a consultant in the IU computer labs, everyone agreed that it wasn't reasonable to expect a consultant to know everything about every program. The problem, of course, was that each customer wanted you to know about *their* problem. You don't need to know about all that other stuff, just know MY stuff.

I'm feeling that way again.

This week it came up with my boss that I've been dropping the ball on a part of my job. I knew this. It is a part that I like, but it has been hard for me to prioritize higher than other things which are also important and also urgent. I nevertheless made time to work on it. Where it became clear to me that without some seriously intensive graphics design software instruction, I can't do anything. I pulled in the art teacher, who teaches Photoshop, and she was at as much of a loss as I am. I suggested to my boss that I don't have time for this anyway and it was suggested back that we can't afford to pay anyone to do this work, but we could afford for me to learn how to do it. Which presumes, of course, that I have *any* interest in learning how to do graphical design. Or any talent. I don't need to know how to do everything, just this huge sub-field of computing in which I have no interest.

Today I figured out a possible way to fix the problem without a degree. I think I might have done it, but I can't connect to the server so I can test it. I asked the resident expert for help and he was pretty accomodating. After going down some wrong path involving our home nameserver and before giving up, he did some kind of mumbo-jumbo that is subtly different, possibly, from something else he did in the past, neither of which (obviously) I understand. He figured he could mention that he manually changed a line in nameserver.conf.d (or something) and that the next time it comes up, I'd remember that there's a backup copy in nameserver.conf.hq-doesn't-work-here.d (or something). Because I'm so good with remembering all the .d stuff. I guess the upside of having the Mac servers is that at least I can use spotlight to find that kind of stuff, since people have a tendancy to say "just update the supergeek.conf.d" like I have any idea where that would be.

I'm significantly more willing to become a Mac expert and a Unix expert than probably at any point in the past 10 years. But I can't get expert on everything right.this.second. I am doing the best I can. And in the middle of trying to figure out the graphics-expert stuff is not a great time to suggest a crash course in nameserving.

On the one hand, I recognize that I am a huge whiner who needs to understand every aspect of every part of technology used at my workplace. I need to be able to step in and do every job without warning and it is clear that anything less will be considered abject failure by people whose opinions I (sadly) value. On the other hand, I am actually only human and it would appear that I need to get over caring what the people I value most think of me, since I am apparently destined to suck.

Tuesday, September 26, 2006

Personal Responsibility

There are two sides to personal responsibility.

Personal responsibility has been a favorite catch-phrase of mine since I started teaching at my current school. It has helped me have higher expectations of my students and helped me be a better person. It is all about taking responsibility for one's actions and choices.

As a society, I think we've decreased in the amount of personal responsibility we expect people to take. We allow others to get away with excuses rather than demanding that they live up to requirements or their word. Think about how refreshing it is when someone accepts responsibility.

At the same time, I've come to realize that environment does impact an individual's ability to thrive. Perhaps this is best described as the difference between excuses and reasons.

It is important for individuals to take responsibility for their choices and actions. At the same time, it is our responsibility to cut people some slack in ways that are appropriate - to help the individual cope with their situation. This emphatically does not mean lowering our expectations.

For example, if I have a student who is having family trouble. I shouldn't accept sub-par work, nor should I allow the student to slack on turning work in. On the other hand, I can offer additional time in cases where it wasn't possible to complete the work for family-related reasons. Or offer additional help outside of class if the parents aren't there to offer guidance.

All things being equal, we should treat everyone the same. But of course, all things aren't equal. The trick is to help students develop their sense of personal responsibility while not simultaneously holding them responsible for things that aren't theirs. Maybe that goes for the adults in our lives, too.

Friday, September 22, 2006

Defensiveness

It seems to me that in an interaction which causes one to react defensively, there is almost always an equal option to take the interaction differently with a different outcome.

For example, I got an e-mail from a parent explaining that her daughter had tried to install some software in order to play a game and it hadn't worked. They would like for the game to work and is there anything I could do? I told her to hit the help desk and I was sure she could get assistance. Unfortunately, she hit the help desk at a particularly busy time and was sent away because the game isn't a priority when people can't get work done. The mom wrote me back and described the situation. Understandably, there was some frustration on the side of the help desk and the feeling that the mom was perhaps tattling to me. I talked to the mom later, and it turned out that she wrote me only so I would know that the daughter had tried to seek help, since she hadn't gotten the game to work. In other words, the mom was feeling a little defensive that the daughter might get in trouble if she didn't tell me what happened.

I was thinking about this last night because of an interaction at a meeting I went to.

One person presented some things in Scheme, which started the age old discussion about what language to teach first. J offered the opinion that Scheme is perhaps not an ideal first language - yes, it does offer some advantages, but it has some disadvantages, too. I heard him mention that Scheme isn't used outside academia and thought that was a significant part of his point - we should focus on languages that are used in the real world.

Well, it is funny what happens when someone hits a sensitive spot, isn't it? So I ranted a little bit about teaching kids how to think and learn rather than preparing them for the working world. Whereupon someone else responded that he didn't think anyone in the room was saying that. Which had not been my understanding at all. So I stopped and thought about it and tried hard to listen more clearly.

It is inevitable to filter what we see and hear through our own experience. (My experience last night: heading to a meeting with parents right after this meeting, which made me nervous about being beat up about my curricular choices.) But it is really, really important to hear what people are trying to say and not what you think they're saying.

Wednesday, September 20, 2006

Equal and Equity

Every time I think about posting, I have many, many things I want to say. I suspect other people are the same way, because I notice in my RSS feeds that there'll be nothing from some bloggers for a while, then suddenly several posts appear.

I had an interesting experience over the last few days. First, you should know that I've been reading quite a few feminist science bloggers lately. A lot of the time, I feel like feminists are whiners. I strongly believe that with rights come responsibilities and you can't have one without the other. But the bloggers I've been reading, even the angry ones like Zuska and Absinthe, have some good points.

For one, while it is possible and often likely that women who don't get ahead are not suffering from discrimination (but are, in fact, not that good), it is also hard to be a significant minority and much harder to do well. So some accomodations should be made due to the inherent difficulty of the situation. If you're in a swimming race and everyone else swims through water, but you have to swim through syrup, wouldn't you hope that you wouldn't be expected to swim as fast?

I've recently been working closely on some technology projects with some men. By this point, I've been burned enough times that I'm pretty sensitive to when I'm being treated poorly for being a woman. But with these guys it hasn't happened at all. They're fun, they're funny, we're working hard and getting things done. It has been a pleasure.

Better?

Things continue to get very.slowly.better. It is time to start focusing on teaching, which would be wonderful and exciting if the classes didn't keep happening. I've decided to trust that there will be enough computers tomorrow and continue the unit I started 2 weeks ago. Unfortunately, I didn't really feel that the first lesson went well, due to my being underprepared and I'm not even sure what I want to cover tomorrow, never mind how. I want to come up with a plan for the unit - novel thought! - but it is late and I'm really tired. I am also starting a new unit in my other course, which is equally unplanned. I have some ideas, but if I don't come up with something more solid it will go very poorly.

It doesn't help matters in the planning department that two of the things I let slide this fall were organizational. Over the summer I had to pack my entire office into boxes when the floors were refinished. I haven't had time to unpack yet. I moved to a new computer and haven't reorganized my files. I couldn't do a direct mapping from the old to the new because I stored things in three different places. So my office and my computer are equally disorganized with piles of documents everywhere. (My office also has piles of STUFF. Like the PVC pipe I'm going to make into a binary tree. I was storing it in my classroom but I discovered that someone thought it was trash and put it outside! So I saved it from the rubbish by moving it to yet another pile in my office.)

Tomorrow is also back to school night. I was supposed to have submitted a course description by Monday. I didn't even realize it until Tuesday. So now I have until tomorrow, and can hand it out when I give my talk.

The guiltiest thing for me is the way in which I have failed the faculty. We used to have "internal" web sites - password protected (which is asinine, but that's another post). The web server died a horrible and un-backed-up death last spring. A new one was installed this summer, but with no way for anyone to actually put up web sites. Supposedly there is now a way, but last time I checked, it doesn't work. Also, the way for parents to access it doesn't work, which is a separate issue. There also needs to be a main page that has links to the various sites, which I haven't made - right now there's just a page that says "there's nothing to see here." Also, if we get it working that the faculty can update their websites - on which they post unimportant things like homework calendars and assignment requirements - I think that my page might be the main one, not my teaching page.

Did I mention that my JOB is to be a teacher? I'm suffering burnout. I'm getting increasingly frustrated when people want me to do things that are NOT my job, because no one else will do them and they should be done. Yes, I am capable, and I might be singularly capable, but at some point I really, really need the time to do MY job.

The upside is that I have a kick-ass dress to wear to BtS night tomorrow, so no matter what, I'll look fabulous.

Sunday, September 17, 2006

I cried and they asked if I was getting married

One of the many frustrations this fall is that I don't have enough computers for all of my students. Two of my classes are doing a one-to-one laptop program, so usually they have enough laptops. (Though last week two suffered problems and the loaners didn't work. But I kept teaching anyway.) The other classes have 22 kids each. We have 24 computers. Four are broken. They're under warranty, so they'll be fixed eventually, but in the meantime, I don't have enough computers.

I discovered this DURING class. A class where I'd assigned the students to finish an assignment using software I don't expect them to have at home because it is very expensive. So I'm holding a broken computer, looking at a room full of kids in which I am going to have to tell one student she can't finish the assignment and has to spend the next hour watching the other students work. Meanwhile, I have about four other kids yelling my name because they can't log in. (The definition of "computer works" includes "runs the software I need to teach" but does not include "kids can log in".)

I couldn't take it. I don't know how to teach, in the moment, in that kind of chaos. I felt tears fill my eyes. So I thought, "okay, the only thing to do is to throw myself on the mercy of the kids and ask for patience." I sat on my desk and asked for their attention.

This is the best part.

"Are you getting married too?" (Another teacher just announced her engagement.) "No, she's already married!" "Are you really married?" "How come we didn't know you're married?" "Are you having a baby?" "Are you moving away?" It never occured to them that I couldn't teach them. If I had Big News, it must be personal.

It was quite the let-down for them when I said I just wanted patience while everything keeps breaking and not working.

And we made it through the day, through a combination of absences and students who'd already finished the assignment. I've switched to teaching Computer Science Unplugged until I either have enough computers or can come up with lesson plans for pair programming. I don't want to hold off on the computer stuff for too long, for a variety of reasons, but I don't want to just tell them to sit with a partner without thinking through how to do pair programming *well*, which means wresting my attention away from all the sysadmining I've been doing and actually being a teacher.

On the other hand, I got to teach binary on Thursday, which was fun, and Tuesday's lesson features a debate about the impact of technology on society, springboarding off the introduction of the word "binary" into the vernacular.

Thursday, September 14, 2006

Equity

This might be the most interesting argument for privileged people to reach out to create a more just world that I've ever seen.

Monday, September 11, 2006

Spin

I'm feeling frustrated this year. I had grandiose plans to redesign my curriculum so it would be better for my students. Instead, I have been completely snowed under by non-teaching tasks. The non-teaching tasks are refreshing and interesting in their own way, but it turns out that there are only 24 hours in a day, no matter how hard I try to have more, so my teaching-planning has been one of the things to get dropped.

I am of two minds about this - and here's where the spin comes in.

On the one hand, it is a nightmare. I walk in every single day and fake it. I haven't made up a semester plan, lesson plans, or even handouts - to one class I do all teaching verbally and to the other I just printed off a copy of some handouts from last year. It is terrible. I'm disorganized, I'm pedagogically weak, I haven't even gone over my classroom expectations with any of my students and this is week two!

On the other hand, I am an amazing teacher. I am managing to pull it all off with a minimum of impact on the students. I can walk into a classroom with only the slightest of ideas of what will happen and keep students engaged and happy for an hour. My students are having a great time and we haven't wasted time going over rules they already know.

I hope never to go through a Fall like this again, but at the same time, it is kind of nice to know that I can pull it off if I have to.

Monday, September 04, 2006

Teaching methods

School starts tomorrow. I'm simultaneously nervous and excited. Isn't it always that way?

My sixth graders are doing a special project, so while I'm not ready for them, I'm also less invested in some ways - it isn't really "my" curriculum.

My eighth graders are starting animation. The way I teach animation is to start with the history of animation. This year, I'm planning to have them use thaumatropes and zoetropes then have them make an animation with one. Then I introduce Flash, leading them step by step through learning to make animations.

This year I'm having kind of a quandry. On the one hand, if I could get them making actual animations right away, it would be so compelling. On the other hand, how can I get them doing great animations without first giving them the underlying understanding about how animation works? I recognize that I don't have to start with the history, but there is a value in stepwise learning, as long as it can be fun.

Sunday, September 03, 2006

Lesson plans and portents

I am a pretty poor documentor of lesson plans. I usually have a written outline for a lesson but it is usually 3-5 points, no details, outlining the major things we're going to do. At various points I've tried all kinds of different techniques, but nothing has ever stuck. I'm a wing-it kind of girl. This isn't to say that my lessons aren't thoughtful, merely that I don't write down what I do before or afterwards. Of course, I suspect my life would be easier if I wrote down my ideas clearly in advance and revised the plan afterwards, then I'd have it for the next year.

Well, I just wrote down my lesson plan for the laptop orientation for kids. That I gave last Thursday and Friday. From - you guessed it - a 3-point (but with 5 subpoints!) outline. I'm worried that this is a bad portent of the upcoming year - rushing to do things after they're due. But at the same time, I'm proud of myself for doing it at all and feel good that I or the next person will be ready for next year.

I am supposed to have wildly revised my whole curriculum and have written a new curriculum for a special project. I have done very little work towards either project. I am really hoping to be able to take a deep breath and do both soon, though I think not this weekend. Which is too bad, what with school starting on Tuesday and all. Fortunately I have some plans for Tuesday, so if I can just fake it, I can work my tail off on Tuesday afternoon and evening and hopefully things will fall into place.

Saturday, September 02, 2006

Teaching Us

Teaching Us is a video blog run by a woman who is passionate about education. It isn't specifically about CS, but it is pretty interesting. I like that she's trying to highlight what is *right* about education rather than decrying about what is *wrong* in education.

The first video inspired me to want to try video blogging myself. (I did eventually come to my senses and realize that I'm a word person, not an image/video person, I don't have the technical know-how, and most importantly, I don't have the time to get the technical know-how, though I'm sure I could figure it out.)

She ran into some technical problems that delayed the second video, but the wait was worth it.

CS Education

I think I'm going to split my two blogs. I've been thinking about this for a long time. I'm going to keep the other one as more of a personal thing - what's going on in my life - and have this one be reflections on my professional life. I'm not sure if I can do it - I have pretty weak boundaries about the private/professional split in my life - but I'm going to try.