Evolving the infinite canvas

In the digital world, especially on the web, we’re used to things being stacked vertically. Scrolling, scrolling, through boxes of content,

one...
...on top...
...of another.

Things are always arranged linearly — top-to-bottom. Or, if we’re feeling spicy, left-to-right.

This is all great for neat, orderly content. But what about when thoughts are complex, unsorted, exploratory? Enter: the infinite canvas.

and infinitely tall.
We can create a canvas that’s infinitely wide,
Where content can live anywhere, not just in a neat stack.

The ability to position content anywhere leverages our spatial skills. In the physical world, we’re constantly relying on spatial skills:

  • For organizing relationally: We know the cups are next to the plates.
  • For organizing in groups: We group together similar condiments in the fridge.
  • For remembering: We remember where we left our keys.

But moving things physically is hard! We don’t have inifite space to move things left to make space for something new or duplicate something to make a copy or zoom out to see the big picture. Infinite canvases marry the easy manipulation of the digital world with the spatial strengths of the physical world.

Given these strengths, it’s no surprise that we often use infinite canvases for complex, unsorted, or exploratory tasks. But the concept has been fairly static for a while now. How can we push it even further?

Adding physical forces

As we manipulate content on an infinite canvas, we’re constantly organizing it in common ways. What if we could hardcode these behaviors into the canvas itself?

Preventing overlap

We spend a lot of time making sure our items aren’t overlapping. What if this behavior was built in?
strength:

Grouping

What if our items group themselves automatically? Like magnets, pull fast enough and they detach.
strength:

Exporting data

Once the content is organized, we view the canvas as a reference point. If we want to use the information elsewhere, we have to manually extract it. But there are simple, Gestalt-like rules that we use to organize content. What if we could hardcode these rules into the exported data?

Similarity

We’re hard-wired to notice similarities between items and mentally organize them into groups. What if we could hardcode this in exported data?
Grouped items

Linear order (horizontal and/or vertical)

We tend to "read" from left to right and top to bottom. What if we could hardcode this in exported data?
Sorted items

Grouping (proximity)

We tend to group items that are close together. What if we could hardcode this in exported data?
Grouped items

A more flexible future

Most apps choose an interface and run with it! Are we going to give users a text document, a spreadsheet, a timeline, or a canvas? But what if we didn’t have to choose?

Each interface has its own strengths, weaknesses, and stored information. Here’s a simple illustration of how the same data might be represented in different interfaces. Try grouping dogs on the canvas or changing their height in the grid, then see how the other interfaces update.

American Staffordshire Terrier

American Staffordshire Terrier

Fighting

Portuguese Water Dog

Portuguese Water Dog

Herding

Chow Chow

Chow Chow

Sled

Borzoi

Borzoi

Hunting

Bedlington Terrier

Bedlington Terrier

Hunting

Afghan Hound

Afghan Hound

Herding

Keeshond

Keeshond

Companion

Norwich Terrier

Norwich Terrier

Hunting

Chinese Crested Dog

Chinese Crested Dog

Companion

Dalmation

Dalmation

Hunting

Lapponian Herder

Lapponian Herder

Herding

Nova Scotia Duck Tolling Retriever

Nova Scotia Duck Tolling Retriever

Hunting

While none of this is revolutionary, I would love to see more experiments evolving infinite canvases! Especially further exploring strengths from both the physical world (adding physical forces) and the digital world (malleable contents). If you have any fun ideas or examples, I'd love to hear at @wattenberger.