For example, the speaker in the poem "Privilege" is self-assured and almost swaggering, brimming with confidence in his achievements. "Control is power," he says, "and I am in control of my life." But, Dart explains, the text is full of what are called global variables, a very common programming error, which introduces instability to the program and seriously undermines the speaker's presumed control. Ultimately, Dart is examining the invisible forces and hidden influences that are at work in a person's life, implying that the future is never entirely in one's own hands.
"Variation1" is Dart's "admittedly emo" first poem. (What budding poet doesn't have one of those?) Dart uses it to examine human pride, imperfection and potential. In it, the speaker struggles with his own flaws; he's remorseful but ultimately resistant to change and trapped in a cycle of negative behavior. Appropriately, on line six, the code gets stuck in an infinite loop. An infinite loop is a catastrophic error in coding, "one of the worst possible error states you can be in," Dart says. It can cause the entire program to crash. In the context of the poem, the loop is forever approaching "healing" on line seven but never able to reach it, reflecting the speaker's mental and emotional state.
It may seem like a radical concept, but Dart posits that what he's doing isn't new at all. He points out that the same has been done with poetry and music for millennia. "Taking a text that is complete in and of itself and extending its metaphors with another medium is actually one of our oldest human traditions," he says. He's just changing the medium.
Perhaps -- but aren't music and poetry complementary disciplines? The two seem like a natural pairing, while many people would view computer science and poetry as innately divergent pursuits. But Dart doesn't see it that way. "My liberal arts education was important to me," he says. "I felt that I better understood my discrete math class because we were covering fundamentally the same thing in my philosophy class. We actually see these types of crossovers all the time -- covering the same thing, just coming at it from different angles. I do think it's pretty cool, that it's okay to be interested in both and that you can maybe be a little surprising in your interests." Besides, he adds, "because software exists to help people, the best programmers that you'll find are often the most empathetic."
"This is a language," he says, "and like any other language, it can be used to express things. It can be used to express truth, it can be used to express beauty ... we can talk about our humanity."
If the JSConf mission statement -- to make the technology community "better, more diverse and more human" -- is any guideline, then Dart got it exactly right.