We had a great meeting tonight at the Cincinnati Programmers' Guild. Julia Taylor, a doctoral student at the University of Cincinnati, talked about her work in Sociable Computing, in particular generating and recognizing humor. One of the reasons it was a great meeting was that the topic was not a typical business computing topic. (This kind of meeting is one of the strengths of the Programmers' Guild.)
Early in the presentation she had a picture of Data from Star Trek The Next Generation which invoked a lot of associations for me and the other meeting attendees. As she walked through the presentation, I quite often was thinking of snippets of The Outrageous Okona where Data tries to understand humor with the help of Joe Piscopo.
The main thing I learned is that there are plenty of issues in trying to generate or recognize humor. First of all, there are no universally applicable models of humor; Julia described several models of humor, some of which applied in very specific domains. And even when you pick a model, there are plenty of difficulties in generating or recognizing humor. You need to understand the meaning behind words, since humor can leverage multiple meanings of the same word. You also need to understand spelling and pronunciation since humor can be based on "misspellings" or words (and phrases) that sound alike. And as with anything involving people, it is an interdisciplinary question, there's psychology and linguistics in addition to computing.
The bottom line is that generating humor with a computer is hard. And recognizing humor with a computer is even more difficult. Just another example of the limitations of computers when it comes to doing things that humans do so easily.