Visualizing Intertextuality with

Kumu ( is a web-based tool for exploring systems and relationships between actors in a network. It can be used to map related concepts, related people, or really anything that can be understood as "elements" and "connections between those elements." In one of my classes last year, I created an assignment where my students used Kumu, a platform created to discover connections and embrace complexity, to explore different kinds of relationships among cultural texts -- adaptation, quotation, parody, pastiche, and so on. The result was a massive, messy, map that describes texts and displays their links through Kumu's dynamic interface, and in this post, I want to describe how I used this tool and how it worked to support my pedagogical goals for that class.

In a recent post, I wrote about another tool I've found useful in managing my class communications, but while many people know about Slack, I find fewer people who are already familiar with Kumu.

It was useful to reflect about Slack while I'm in the midst of figuring it out, but it's also useful to think back to something I have more distance from, so in this post I'm going to talk about that assignment.

Working with Kumu

1. Creating the Basic Units

Kumu has a highly flexible structure with a great many options. I won't get into all of those options -- and to be honest, I haven't fully explored all of the options -- but it's probably worthwhile to nail down a few key concepts. As I mentioned before, there are two fundamental units:

  • Elements -- A node in the map, usually represented as a circle.
  • Connections -- Vectors between nodes, usually represented as a line or an arrow.

Both of these elements are created within the map interface, but the minimal presentation of these two buttons hides secondary modalities for each.

Minimalist interface.
The minimalist interface.

To create a new element, click on the blue Add Element button, which will turn into an edit in place field where you type the label for the new element you're creating. Here are two elements:

Two elements in Kumu.
Two elements in Kumu

To connect these two elements, I'd select on one of the elements, which will be indicated with a red circle, then in the Add Connection box, start typing some... until a list of autocomplete suggestions drops down, allowing me to select the label of the element I want to connect to.

Now they're connected.
Now they're connected.

And note, connections may appear to be a simple, bi-directional line, but in fact they do have directionality. The image above shows a connection from Something to Something Else. Adding a new connection with the reverse process (from Something Else back Something) creates another line. In the example below, I selected the "directed" option to switch on the arrows. (Access this attribute from the button.)

Two directed connections.
Two directed connections.

The connection vectors will curve as they need to in order to keep these elements connected while they float around the map space to find their natural clusters. If two connected elements are "fixed" in place (access this setting with the icon), then the lines between them can be locked into straight lines. Simple "decorations" are available via the icon which lets you adjust the size, color, and outline of elements, or the width, color and line type of connections.

Connections and elements can also be grouped into logical arrangements called "loops". I haven't used these yet, but I can see the potential. To create a loop, hold shift and click to select several connections and elements, and then the Add Loop button will below the Add Connection button.

2. Adding Metadata or Organizing Details

So far, I've been talking about how to work with elements and connections in the map interface, but there's a lot more available in a sidebar that pops out to reveal information about the active selection: an element or connection.

The sidebar for an element in Kumu.
The sidebar for an element in Kumu.

Notice all the options here: element type, description, tags, an image, and attributes. These fields are also available for connections, except you select a "connection type," and you can't add an image to a connection.

The description lets users write text in paragraphs using Markdown, and it supports several types of media embedding.

For connections, elements, or loops, the type is a single selection (an item can only be assigned a single type at a time) where you pick from radio buttons of previously-entered type values or add a new one.

As with many such taxonomies, tags are multiple, repeatable, and much more loose.

Finally, attributes are user-defined name/value pairs, where image is a pre-defined attribute that lets you assign an image (by URL) to appear as the background to an element. Adding an attribute name in one element makes it available for all other elements, connections, and loops. Other than that, I don't think attributes do anything other than provide additional hooks for stylization or filtering.

3. Giving it Style

Finally, it's possible to add style to a connection or element with the aforementioned "decorate" feature (), but I find it easier to think of style as a feature of a individual map's "perspective." It's analogous to how you can, in HTML, either add styles directly to an element via a style="" attribute, or you can create a separate stylesheet document for your CSS. Kumu's styling follows a pretty similar syntax to standard stylesheets, if you view it in advanced mode. The standard mode is the same thing, just a little friendlier.

To access these decorations, you first click off any elements or connections so that the sidebar shows the general map's information. Then in the sidebar, toggle from "map" to "perspective." (It's a little confusing, but a single project can have multiple maps, and a single map can have multiple perspectives.)

The basic "decorations" editor in this perspective's sidebar.
The basic 'decorations' editor in this perspective's sidebar.

These settings make all elements blue and all connections orange. Access a wizard-like interface for either elements or connections with the two buttons in the middle of the sidebar, and then work through those steps to filter for the types of things you want to decorate. Like in CSS, you can filter decoration settings for any of the characteristics I've described before: types, tags, images, and any attributes you've created, as well as variable properties like the number of incoming connections.

The advanced editor looks a lot like regular old CSS.
The advanced editor looks a lot like regular old CSS.

In addition the blue elements and the orange connections, I added a rule that sets everything a by value matching znw to have a gray bullseye. All of the perspective-specific settings and features available through menus and widgets can also be defined in the Advanced perspectives language, and there are a few other things that I think are only available through this interface.

One thing I've found particularly useful for very large maps like the one we made for this assignment is the quality value. Set it to quality: normal, and the map will have all the floating elements, gracefully-curving connections, and customized background images that you expect. Or set it to quality: fast, and all elements will become squares and all connections straight lines. Under normal operation, Kumu is fairly resource intensive, putting a lot of demand on memory and GPU, and I've found that some older laptops can only handle Kumu in quality: fast mode.

There is much more to discover with Kumu, including all kinds of things that I've never really delved into. Fortunately, they have good documentation, and their support has been very responsive when I've had a question or problem.

The Map of Intertextuality

Before I talk about the assignment, I want to show you the thing we produced. I'll embed it below, but it's easier to view it in its own window. (If that or the embedded version runs too slowly, try this faster loading perspective of the same map.) There's a lot here; it's an interesting mess. You can move through it by clicking on the circles (elements -- what we used for describing a specific text) or lines (connections -- what we're using to explain the relationships between these texts). If you're interested in other views of the map, you can use the tools at the bottom to run various metrics or find topical patterns like "communities" or any of several options for "clustering".

As you'll find if you explore it for very long, some of the descriptions are incomplete or inconsistent, tags aren't always explanatory, and images or other embeds may be simply broken. As I say, it's a mess, but it's interesting mess: a quivering, tentacular blob of intertextual exploration created by me and the 47 students that took that class way back in Fall 2014.

The Assignment

This class is a lower-division "topics in literature" course that I call simply "ENGL 252: Adaptation." It's intended for non-English majors, but it's also an elective credit for the Minor in Digital Studies. My basic goal in this course is to introduce students to media studies by helping them discover how different media texts interact in a vast narrative ecosystem. We look at critical readings by McLuhan, Marie-Laure Ryan, and others, but all of the primary texts we read are based on the vector map and follow themes as they develop there.

We start with a central "triad" of

  1. Alice's Adventures in Wonderland (1865)
  2. Disney's Alice in Wonderland (1951)
  3. American McGee's Alice (2000)
The central triad of primary texts.
The central triad of primary texts.

We read the book, watch the movie, play the game, and along the way we talk about what how things like cultural context, technical constraints, and medial affordances influence the versions of Alice and the recurring story elements that we find in all through. These three texts are connected on the Kumu map, and then students begin contributing. Using the process I describe above, students find a text that has some plausible relationship to one of the texts already on the map, then they create an element for their new text and connect it to the original element(s) that it has some connection to.

It behaves sort of like a game of "Six Degrees of Kevin Bacon." A connection simply has to be plausible, but I would say most of the examples in the map are adaptations, parodies, translations, or other 1:1-style connections. After some encouragement, we found it useful to broaden that to include looser connections like "shares the same director".

Later, I initiated a second triad around Sherlock Holmes texts, and finally -- after a couple rounds of voting and debate -- settled on a third triad around "Sleepy Hollow".

As a visual document, our "vector map" demonstrates something that is, on the one hand, fairly intuitive: cultural texts are connected and related to each other in multiple, complex ways. What I've called the "messiness" of our map bears that out. But on the other hand, as I look at the the contours of our specific map, I see the ebbs and flows of themes in our class discussions, including the personalities of certain students and groups of students.

For example, there's a pronounced anime cluster -- hot pink in our legend -- populating the lower-left quadrant of the map, and an orange splash of film running up the middle. A long tendril of Harry Potter books, movies and video games arcs up in the the top-left region.

The anime archipelago.
The anime archipelago.

What's cool about these patterns is that they're evidence of students finding ways to connect something they care about to other books and media that they wouldn't have otherwise encountered, and by thinking about the relationships among these texts they know and these texts that are new, students hopefully get to understand their personal textual ecosystem a little better.

Lessons Learned and Future Iterations

I enjoyed the assignment, and I think students did too, once they got used to Kumu. We came to Kumu after first trying Scalar, so some of the sentiment my students were expressing was along the lines of "better than Scalar." I should say, I liked Scalar's flexibility and rich metadata, but it was already struggling to scale with the project after 2 rounds of our assignment, so with a goal of 8 of these rounds, I needed to find a better option.

Originally -- way back in 2012 when I first taught the class -- we used a collaborative google drawing, but that too had problems scaling, even though it did succeed in producing something monstrously convoluted.

So of the three platforms, Kumu has definitely worked the best for this assignment, and I'll probably use it again for this class when I teach it again, most likely in Spring 2017. When I do, I'll probably change a few things like

  • Stricter Typing -- stronger predefined categories and genres of media types like "book," "film", "video game," and broader, better-labeled connection types like paratext, adaptation, "shares an actor", etc.
  • Controlled Attributes -- initiating defined attributes like "Added By" and helping students use those consistently.
  • Other Assignments that Work with the Map -- it's one thing to appreciate the complexity of a map, it's another to explain how "At the Mountains of Madness" to the Cam Jansen mystery series.

Such "traversals" get to the heart of what I've find most valuable about this assignment, so it could make sense as a midterm or final project. Students could use Kumu's "presentation mode" (something I only discovered recently) to talk about important points or loops along the way from one element to the next. It might also be useful to create an assignment or modality where students must find and add secondary sources that support an analysis of one or more elements in the map. Many things are possible.

Ultimately, although Kumu did present some challenges that needed to be resolved, and students took some time learning how to use it. And even though our final product is rather messy and somewhat incomplete and inconsistent, I liked working with Kumu well enough that I've found other uses for it and I plan to come back to it again when I next revisit this class.

What do you think? Are you already using Kumu in your classes? If so, what are it's strengths and drawbacks? If not, anything else you'd like to know about my experiences with it?


A free Kumu account gets you unlimited public projects, but if you want private projects, you have to upgrade to one of their plans, sort of like GitHub. Since public Kumu projects can have unlimited contributors, there was never any problem using it with my class.

Word Count: 2377

Previous Post Next Post