POEM-MKR for people

I’ve finally debugged my final from Reading and Writing Electronic Text to the point that I’m getting ready to send it to people to use on there own.  I’ve had a few beta-testers, and I’m hoping to get a bunch more in the next few weeks and then possibly promote the program on like a blog or something.

If you want to run the program you can download it here:


To run it, you first need to enable IMAP in Gmail (instructions).  Once you have done that, just open the program archive and double click on “pmmkr”.  For PC users, please see PC instructions.  It will probably break once or twice when you’re using it.  Just restart the program.  I think it will work, eventually, in most cases.  Thanks for being patient.  Also, if the first poem you generate isn’t good, or has very few lines or something, just try running the program again.  You won’t have to download the g-chats again, so it will only take a moment.  And try using different key words.

There are still some conceptual issues with the program.  The main issue is that it only works with Gmail users who have significant Gchat logs.  This describes most of my friends and people I know, but probably doesn’t describe most people.  It certainly doesn’t describe my parents.  So the audience is pretty limited in that sense, but I think its okay, because I think the majority of people who would even be interested in using this software are somewhat likely to be Gchat users.  Another issue is security—I say it in the program, and my code is completely open for people to read so you can find out for sure, but there’s no way to really prove that I’m not doing anything with the Gmail emails and passwords that need to be entered for the program to run.  I haven’t come up with a satisfying solution to this problem and I’ve kind of resigned for now to the idea that people will either have to trust me or not care.  One idea I had was to make this some kind of Gmail plugin/lab, to generate poems about users right in their email window, but I don’t really know how to do that.  The imaplib uses SSL to login to Gmail, which I assume provides enough security for the average user, but I don’t know enough about those issues to guarantee that using the program is completely secure.  The only alternative I can suggest is just changing your Gmail password, either temporarily while you use the program, or changing it to something new after you use the program.  If anyone who reads this and uses the program has thoughts about making it more secure I would really appreciate it.

An important conceptual issue is the final step of printing a little chapbook.  It is obvious, and proven true through testing, that few people will actually make the final step of printing the book out, even though it was the original inspiration for the whole program (for me).  But, if you open the pdf and don’t print the poem, it is very difficult to read, because its laid out to be printed, so many of the page are upside down, because of the way the paper has to be folded.  I was convinced for a bit that I should make the option for users to just read a digital version, but I decided I wanted to push people to print it out as much as possible.  But as a bonus for people who use it a lot, I decided to save text copies of all the poems in a directory called “poems” in the “files” directory.  So that’s also a bonus for anyone who is still reading this blog post. ; )

Another minor conceptual issue is the problem of download time vs poem variety.  The more chats that are downloaded, the more variety there will be in lines in the poem, because of the way that the algorithm works.  But downloading thousands of chats takes lots of time and is probably a huge barrier of use for many people.  Downloading over 5000 chats also seems to be too much work for the computer.  After about 4000 the rate at which chats are downloaded starts to lag significantly.  I’ve settled on a relatively small 2000 chat corpus.  The results aren’t ideal, but the download time is typically under 10 minutes, which feels more reasonable.  One feature I could add would maybe be a user input for the number of chats the want to download, and maybe a way to estimate how much time it would take and some representation of the robustness of the poem, so the user can decide for themselves.

The last conceptual issue is a little more abstract, which is the problem of user interest.  I think this program is of great interest to people once they see what it does with their own chats.  Before that, I think it is pretty obscure.  I need to spend time writing a better description of what it actually does to get people interested earlier.  I’ve noticed that non-programmers are way more excited about the results than programmers are.  This might be that they see programming as a sort of magic and thus the results are more exciting.  It could also be that they see the program for what it is instead of seeing the many obvious flaws.  The experience is also deeply personal.  The poems that are generated would not be nearly as entertaining to a stranger as it would to a user or their close friends.  It just wouldn’t make that much sense.  The thing that’s great about the program is that it is honest.  Gchat doesn’t lie, and when you create a new poem, depending on what key words you feed it, you could be digging up your past in ways that can be very revealing.

I want to write more about the technical challenges that I’ve had to work on and some of my friends’s experiences of the program, but this post is already much longer than most people are willing to read, so I’ll save it for another time.

Hope you enjoy Poem-Mkr!


Author: owen ribbit


Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s