The program

This is more than just a list of words. When you see a list of conjugations or a set of questions, your browser has just constructed that information on the fly. All that was needed to make this work is some (OK, lots of) knowledge about JavaScript and a clever trick. The trick was to base the JavaScript on a spreadsheet that encapsulates the rules for grammar of the Spanish language. In particular, four conjugations were determined in detail for 92 models of verb conjugation:

  • The Present Indicative
  • The Past Indicative
  • The Present Subjunctive
  • The Imperfect Subjunctive
In addition, a bit of additional information relating to special imperfect conjugations (ir, ser, ver), a few special stems for the conditional (caber, decir, etc.), a few special past participles (hacer, poner, etc.), and a few special gerunds (poder, venir, etc.) were coded. It ends up looking something like this:

newModel(58,"agorar",1,"go~gu:e;-;-;;;-;","go~gu:e;-;-;;;-;","","","") newModel(59,"desosar",1,"o~hue;-;-;;;-;","o~hoe;-;-;;;-;","","","") newModel(60,"oler",1,"o~hue;-;-;;;-;","o~hue;-;-;;;-;","","","") newModel(61,"leer",1,"","",";;e~ey-i;;;-;","e~ey-i;-;-;-;-;-;","pp|e~ei'-i+")

As far as I can tell, everything else about verbs can be derived from this information. Although I can't say that for sure, it's pretty interesting that with just these models, every verb I've tried can be conjugated.

So, why do this, right?

Well, first, I know I'm a bit crazy. But I was curious about all these tenses and moods, and I thought it would be an interesting challenge while I waited for my students to take their chemistry final. That was a week ago.

More than anything, what I really wanted to do was to produce an on-line resource both for me and for others who are working on acquiring Spanish. After one semester, I'm fascinated--both with the language and the process of learning it. My idea was to produce something that was more than just a few canned questions. Maybe learn a little Spanish grammar as I went.

And that's what you have. When you ask for a quiz, the program looks through its database of questions, selects a random set, determines the correct form of the subject, verb, object, etc., and presents you with a form to fill in. In the instant between when you click the link and the form is displayed, a fair amount of magic happens. Feel free to look under the hood to see what's going on.

Suggestions and comments are appreciated. If I got every single conjugation right (there are 500 of them in all) it would be a miracle. Still, I think I'm close.

More to come as the year unfolds.

Bob Hanson 12/20/2003