Apr 16 2020

Putting chat transcripts to work

Published by at 12:31 am under Uncategorized

I’ve been writing about how to get more from chat transcripts for a long time. And a recent count in Evernote shows chat history back to 2013 (105 of them containing notes from one-to-one conversations with learning partners). Recently I’ve found a couple methods that make a chat even more useful.

I want to throw away the chaff and keep the wheat. (I’ll use a few lines from a recent chat in this example, showing only the things that I wrote; in most cases there would be postings from many people interleaved.) Here’s an example of what Zoom saves:

14:23:31	 From John David Smith : https://fullcirc.com/2020/03/31/moving-online-in-pandemic-5-this-is-the-time-of-creative-destruction/
14:26:15	 From John David Smith : Distributed leadership is MORE important!
14:27:52	 From John David Smith : Transformation steps…
14:27:52	 From John David Smith : ==========================
14:28:22	 From John David Smith : Being able to observe services…
14:29:47	 From John David Smith : Emotional impact of being in a breakout with someone from Bangkok

Here’s what I want to save:

JDS: 	https://fullcirc.com/2020/03/31/moving-online-in-pandemic-5-this-is-the-time-of-creative-destruction/
JDS: 	Distributed leadership is MORE important!
JDS: 	Transformation steps…
JDS: 	==========================
JDS: 	Being able to observe services…
JDS: 	Emotional impact of being in a breakout with someone from Bangkok

Putting the same information in a table (e.g., in a Google Doc) makes it much more useful:

Chat in a table

In a Google Doc several people might go through the chat and make comments, noting insights from different perspectives:

Chat in a table with comments after the fact

Sometimes I add a column to the table and gather comments in a third column:

Chat in a table with a 3rd column

To do all of this, currently I use a TextMate macro as follows:

(
{ argument = {
action = 'replaceAll';
findString = '^[0-9\:]*\t From ';
regularExpression = :true;
replaceString = '';
wrapAround = :true;
};
command = 'findWithOptions:';
},
{ argument = {
action = 'replaceAll';
findString = ' \: ';
regularExpression = :true;
replaceString = '\t';
wrapAround = :true;
};
command = 'findWithOptions:';
},
{ argument = {
action = 'replaceAll';
findString = 'John David Smith: ';
regularExpression = :true;
replaceString = 'JDS: ';
wrapAround = :true;
};
command = 'findWithOptions:';
},
)

Not so pretty. And the formats for different chat systems have changed over the years. 🙁

And that wont’ work for you if you don’t use my text editor. I’ve struggled to figure out how to share this technique of saving and formatting the wheat of a chat transcript. I found that the Unix sed utility, for example, is not standard across platforms when it comes to inserting the tab you need to plop the text you want into a Google Spreadsheet. Then lo and behold, Louis Sweeny, a member of the Liberating Structures community, figured out how to implement a snippet that I’d shared in the Slack space! Put the following snippet into a Google Sheet and copy it down as long as needed:

=regexreplace(Regexextract(REGEXREPLACE(B3,"^From ",),".*?: ")," : ",)

When you put a Zoom chat transcript in a spreadsheet, the above code cleans up your transcript and you have a table that you can cut and paste into a text file. Click here to get a copy of the magic spreadsheet to do this. It comes with instructions and everything!

2 responses so far

2 Responses to “Putting chat transcripts to work”

  1. Louis Sweeny says:

    Hey! Thanks. I’d love to chat some time….I want to experiment with this: http://wordcloud.cs.arizona.edu/. Perhaps you are curious also.

    it seems crazy to me that we have tools like chat and mural, but only very basic manual tools for categorization and re-categorization.

  2. John David Smith says:

    Hi Louis,

    That’s the best wordcloud tool I’ve seen! Very sophisticated set of controls.

    I threw a chat transcript from a bilingual group and I had to chose between the two languages (for stop words) but in either language grouped the “other language” together and came up with very reasonable (e.g., interesting) word groupings.

Leave a Reply to Louis Sweeny