I love puns. And when I heard Mark Hanson and Ben Rubin’s talk at the Eyeo Festival where they discussed different ways to do text analysis (ie: text as a spatial representation of the intangible), I was drawn to it. Immediately after, I thought “what body of text would mean the most to me at this point in my life?”

A bit of a back story

For the past four years, I had been in a long distance relationship. In this kind of relationship texting was not just a form of communication, it was more or less the relationship itself. It ended rather abruptly this past summer and I found it hard to believe, as most people who go through a heartbreak. Timely enough, a quote by Annette Messager came to me:

Being an artist means forever healing your own wounds and at the same time endlessly exposing them.

It was clear that I had to live in my own data and try to make the most out of it. So I decided to make text analysis texture pieces from the text messages with my ex. This was my Lemonade.

The process

I started by gathering all the archives of the conversations that I still had. Turned out, I only got the first 4 months and the last 4 months of our 4-year relationship. Call it serendipity. It was a collection of csv files and it was definitely odd to see all the emotions I had felt on the driest of all mediums — spreadsheets. I quickly converted them to JSON files (my favorite), and started reliving my relationship in the data set I created. I had never done any text analysis before, so I turned to the awesome Shiffman and his Programming A-Z YouTube videos. After hours of learning regex, metachar, nlp, and Rita.js, I was finally able to get some sense out of my over 300K lines of JSON files and buried memories.

When I thought of doing this project I knew I had to look at the things I had been avoiding. But when I was actually in the data set, the feeling was exponentially intensified because I had to look for clues of where all of this went wrong and how to show it. I ended up pulling 3 different perspectives from the data set.

Say my name

The first obvious clue was the name. I ran through the JSON files and drew an ellipse on the canvas chronologically every time he said (or in this case, texted) my name. Over the course of our relationship, we developed names to call each other so the red dots are when he actually called me by my name (serious stuff like breaking up, you know) and the rest were silly names we had. It was funny, I had thought something was wrong with my code when I saw the last 4 months but that was actually how many times he called my name. Ha.

[ Say my name ] Left: first 4 months | Right: last 4 months

Detail

Detail 2

Needy one

Next, I decided to explore the dynamic between us. I checked the frequency of who texted who and drew an ellipse for every time he said something, a line for every time I said something. Notice the sequence of lines toward the end of the last 4 months? That was me baffled, without an explanation from the other side.

[ Needy one ] Left: first 4 months | Right: last 4 months

Detail

Detail 2

Rambles

Lastly, I decided to do a word count to see if I can test the quality of our conversations. I drew a black, vertical line with the height as the number of words he sent and a grey line for what I sent. This one was the most unexpected to me because I was on a quest to find quality but what I found was the drastic change in quantity. As you can see, we used to text like crazy in the first 4 months, hence the beautiful texture compared to the very much empty and not so complicated texture from the last 4 months. Simple in this case, does not necessarily equal beautiful.

[ Rambles ] Left: first 4 months | Right: last 4 months

Detail

Detail 2

In terms of drawing, I used Rune.js. It’s a great library that lets you do all the drawing in javascript and saves the files as an SVG file. Perfect for the designer who dearly loves crisps vectors. I wouldn’t be able to do any of these pieces had I done it by hand or used conventional tools like Illustrator/Photoshop.

I had never felt more naked than when I presented this in my Data Art class, taught by Jer Thorp. I also had never felt this personal with anything I’ve ever done before. By doing this project, I was not only able to decipher the unraveling of my relationship and read between the lines, but I developed what I call “ 4/4 vision.” An uncanny, unescapable truth, that showed me all the things I didn’t see… or didn’t want to see.

Update: here is a github repo if anyone is interested to see how it works / wanna tap into text analysis.