The power of iteration

When I decided that the worksheet generator was going to suffice for bespoke worksheets, I started making more worksheets that I planned to reuse. Initially, it was just because I was nervous talking about “business English.” Eventually, it was because I found that those worksheets provided a pleasant structure and were one more way to bring grammar back again and again.

Starting the project, I hoped to realize two goals. The first was to get one step more away from the situation where each week handouts from a different website are presented to the students, giving the impression that “Toby just prints stuff out from the Internet.” (Nobody ever said that, I just didn’t want to reach that point.)

The second was a time savings. The worksheets took some time to make, but offered more structure (usually, I plan on blocks of four to six lessons for a topic) and saved me the hassle of searching for a suitable handout before each lesson.

The unexpected benefit

The thing I didn’t expect, however, was the improvement in the worksheets. Typically, I’ll teach a block of worksheets and, in class, scribble a note on what wasn’t clear for the next time I use the worksheet. Because I’m checking these things to update dynamic-efl.com (someday I’ll do a post on my workflow there), I update the worksheets as I go.

Then, later, I remember a block of worksheets as ‘successful’ and get them out for another group. And I’m pleased at how much better they are, but, with a different group of students, find ways to improve them.

None of this should be surprising, but it’s the first time I’ve really been exposed to the power of this kind of iteration. I know there is only the one series of business worksheets on the New Spork City site (same link as above), but that’s because I want to move through some of the series with another group to make sure I’m happy with the current state of the worksheets.

What do I learn from this?

I think this is the harder question. I mean, I’m impressed by the whole thing. But, shouldn’t that translate to more than a blog post? Can I reference ‘the power of’ something without trying to make the most of that power?

Thinking about this, I’m beginning to wonder if I shouldn’t do more things with an eye to re-using them. I have colleagues who have ‘files’ on each of their conversation topics. It would be an organizational hurdle for me (organization is not my strong suit), but it would make sense.

Do you have any other suggestions on where I could ‘harness the power of iteration?’

Advertisements

Preparing for Clowns, or what I learned from a Twitter-fight

The CodeNewbie chat last night was about dealing with bullies, and, since that dovetailed so well with what I’m working on right now, I thought I’d try to be a bit more active in blogging about what I’m doing.

You see, I think my app is 90% finished, but I’m taking a break from features to get ready for the public. Which, really, means, to get ready for the jerks. You see, the worksheet generation app isn’t a social app. The user’s interaction with it is basically all centered on the user and their own groups and classroom resources for their groups.

But, contributions are shared. That is to say, if you need a translation for the word ‘web app’ for one of your groups and there isn’t one in the system, the system just asks you for one. But then, the next guy profits by the translation you added. And you’re profiting from the resources added by others.

The Twitter Fight

But then, I got in a bit of a fight on Twitter. I’ll post sometime on the idea of ‘defending the ancestors,’ and why I don’t like the term ‘the ancestors’ being used as a dog-whistle for racism (racist dogs!) but that was what it was about. And it wasn’t nice.

While I’m a middle-child and can handle Internet strangers being mean to me, I realized that the guy I was fighting with had the advantage: his Twitter handle was only for his trolling. My Twitter handle connected to all my life, and he could see that, use it in a fight. And, because I tend to fear the worst, he could start being a jerk in other parts of my life.

I realized that, when I start posting about the worksheet generation app by name, with links, anybody who felt like they didn’t like me (and there have been a lot of those people in my life) could create a free account, and just throw a wrench in the works by adding terrible resources.

Imagine if a legitimate user — maybe even one paying for the service — wanted that aforementioned translation of ‘web app’ and got something like ‘where we see the naked photos of your mom.’ Even worse, what if that person — like I often do — didn’t proofread that worksheet before handing it out to students. (At some point, worksheets will be emailed with a mouse-click.) What a nightmare.

Worse than paranoia

I talked myself back down from “Twitter people will be mean.” After all, the solution could easily be ‘just charge everyone.’ Who’d pay me money for the privilege of trolling me?

Then I realized I shouldn’t worry about Twitter trolls making accounts and being jerks. I should worry about people just like me thinking that they’re being funny. Or, even worse, thinking that the resource they’re making is appropriate for their students. After all, we teach adults, whose to say that we can’t include “your mom” jokes?

My real  nightmare is someone either testing out the system, playing around, and putting random crap in… Just to see if it really appears in a worksheet.

Of course there’s a solution

I can deal with it. Of course I can. There’s not a problem without a solution.

My interim solution is, for now, giving users the opportunity to explicitly say “this is part of an inside joke with this group.” You can easily add resources that will only be used for a single group. Easy.

The other thing is pretty simple: all resources are immediately available to the person who creates it. Everything else has to be approved, first. As users are added, it will be possible to say “the resources added by user_x will be automatically available,” but, until then, it means that I’ve invested a lot of time already (all morning today was spent creating the interface and the backend that will enable this level of moderation) into the project of investing a lot of extra time in this project.

And that kinda stinks. It makes me like people, as a group, just a little bit less.

What my App does

I had an inspiration last night. I realized — after working on it for the better part of two years, including several reboots — what it is that my app does. I’m talking about the worksheet generator, which seems closer to becoming something now than it ever has before.

First, I think I have to mention what it isn’t.

What the worksheet generator isn’t

It isn’t just another application or website that promises to relieve you of the burden of preparing for your classes. I pay for such websites, and I think they have their place, but I’m not going to be able to compete with them, even by doing the job marginally better.

The worksheet generator will not be just one more place that you can go because you didn’t prepare a lesson and you want to print something out for that class that is starting soon.

Working just as much – or more – for more results

I realized that, if I had to tell another ESL/EFL teacher what it was that my app did, it would be to say that it does a lot of the ‘stupid work,’ so that the energy I invest in prep goes farther. There are a couple of ways that this manifests itself.

  • Organization: Never my strong point, this is what the project originally was supposed to help me with. The idea is to have a virtual record of what you’ve done with each group, in terms of grammar and vocabulary. The strength of this organization will be in helping to review regularly. And that brings me to the second thing:
  • Permanence: Maybe this is just one aspect of organization, but it’s something I’ve known that I’m bad at. I’m great at creating a single, excellent, engaging lesson. I’m not so great at tying them together into a series that makes sense in a meaningful way. The extent of my understanding of ‘permanence’ has been to say that, if we’re working on the simple past, I can do a series of lessons about the past.

    What I’d like to do in the future is to have a more clear sense of repetition, by which vocabulary that came up once is reviewed again and again in the exercises of the following week. Even more, I want to say “hey, we practiced this structure three weeks ago, let’s do it again with the vocabulary from last week.” And that brings me to the last main point:

  • Modularity: I don’t know if it’s just me, or if every teacher is lazy, but I suspect it’s the latter. If you’ve ever had a teacher, you probably know what I’m talking about. I’m talking about teachers who create one set of PowerPoint slides and then teach them forever. Or,  in my case, who prepare an exercise for one class and then modify it only slightly for another (generally to realize that I overlooked an inside joke meant for the first class and completely without meaning for the second).

    The thing is this: Most of the worksheets I create in OpenOffice are great for the class they’re created for, and only the top half of page two is really great for the next class. So, I could just copy and paste but, inevitably, searching through everything I’ve made to get enough material feels like more work than creating a wholly new worksheet.

    When I talk about modularity, I’m talking about defining — in XML or in code — the basic structure of some exercises and stringing them together (simple past is comprised of these 10 or so modules, some are text explaining regular, irregular and the ‘be’ verbs in the past, others are exercises practicing them…) and then just saying to my app “hey, we’re starting this block on the simple past” and it adding one module to each worksheet until the block has run its course.

    It’s important to note here that this is going to be in addition to the other ‘modules’ in each lesson’s worksheet — whether they’re vocabulary review or a reading text to take home as homework. And, further, that a module is going to define how the exercise is created, but I’ll still be prompted to generate new content for it (“Enter a sentence in the simple past using word ‘ginormous’.”) (Fun fact: I’ve never taught that word in my lesson.)

Looking at what I’ve written, I’m beginning to think that maybe the unordered list might not have been the best way to get that done. Still, I think that summarizes what will eventually make the worksheet generator different from the “we do the work so you don’t have to” websites.

Teaching a computer grammar

It seems reasonable to say that the best way to develop a killer product might be to make one that you yourself would pay for. One of my recent business ideas (not the one I shared, obviously) was to make a sort of ‘worksheet engine’ that would automatically generate ESL worksheets from a corpus of text.

Naturally, I’ve since had other great ideas (it should manage lists of vocabulary to review, so that those words come up more often in activities, it should make it as easy as possible to re-use work done once already…) I’m focused on implementing the intial idea.

And, while I’ve had very little difficulty with any one aspect of the project (lets hear it for Python!), there is one thing that’s difficult: I’m finding it hard to concieve of a system for categorizing grammar activities.

The idea is that there would be a ‘recipe’ for how they’re made that the program will later be able to follow with a new set of text, generating a worksheet tailor-made to fit the needs of an individual or group.

It’s easy to write something that will remove all articles in a sentence and replace them with a blank space. Or to write something else that will find all the verbs in a sentence and change them to a space followed by the infinitive in parenthesis.

What I haven’t been able to do is to find a scheme to describe these things in such a way that I’m confident that I’ll be able to describe my next worksheet project using it.

Naturally, that means that things are growing as-needed now, and I suppose that’s a perfectly reasonable way to go about doing things. But, I’m a bit frustrated to think that I’ll never be able to be confident that the finished system will be able to quickly realize a new idea.

That is, I think, what the goal of the project is: to know that there’s a syntax by which I can say “this is the kind of worksheet I want to make, focusing on these particular constructions, and with this vocabulary showing up as often as possible” and have it quickly guide me through the steps of turning out a well-designed worksheet.

I guess I’ll just have to call this the beta-version.