I’m catching up on my blog reading and just plowed my way through Joel’s curmudgeonly “old guy” rant about The Perils of JavaSchools. I don’t have a lot to say about the central thesis of his rant — I’ve always been of two minds about the efficacy of the Darwinian theory of weeding the weak out through hazing-type classes — but there was an analogy that caught my eye:
Heck, in 1900, Latin and Greek were required subjects in college, not because they served any purpose, but because they were sort of considered an obvious requirement for educated people. In some sense my argument is no different that the argument made by the pro-Latin people (all four of them). “[Latin] trains your mind. Trains your memory. Unraveling a Latin sentence is an excellent exercise in thought, a real intellectual puzzle, and a good introduction to logical thinking,” writes Scott Barker. But I can’t find a single university that requires Latin any more. Are pointers and recursion the Latin and Greek of Computer Science?
I actually took four years of Latin in high school because I had had such a horrible experience trying to learn to speak French in middle school that I was desperate for any language that I didn’t have to listen to or speak. The joke ended up being on me, though, because when I took an Italian class in college, I realized that — difficulties with French aside — Latin was much, much harder to learn than most modern Romance languages. After all, in most of them a noun tends to have just two aspects: gender and/or number. In Latin, though, you have declensions in which the noun changes form based on its role in the sentence. Just that alone made Latin quite a challenge. And a pleasure, I might add, due to the fact that I had an excellent teacher.
Interestingly, though, I think that Latin actually has helped me a lot with my current job. After all, pretty much all you do in Latin class is translate Latin to English and back again on paper (unless you work in the Vatican). And, if you think about it, pretty much all compilers do is sit around day after day translating one language into another. So a lot of the same concepts and methodologies that I learned translating Arma virumque cano, Troiae qui primus ab oris… map fairly well into translating something like If x = 5 Then y = 10
. Sure, there are lots of differences between human languages and computer languages, but at some level language is language. So I guess I’m one of those four pro-Latin people and maybe the only pro-Latin person who thinks that learning Latin might help you later when you learn computer programming…
(I should also add that the real payoff of Latin is the opportunity to translate some of the really great masters of Roman literature. Translating the Catiline orations by Cicero gives you a chance to see a really master politician and orator at work in the midst of a pretty gripping political thriller. And Virgil’s Aeneid — at least, the parts we made it through in a year — was just wonderful. While watching the otherwise wretched Troy, I was able to keep myself awake by speculating whether Aeneas would show up with his father on his back when Troy finally burned; the fact that he did was pretty much the only thing that I liked about that movie.)