Allowances for Affordances

The Ridiculous Effectiveness of Infinite Scroll

Since even before software has existed, traversing seamlessly through immense bodies of data has been an unsolvable problem. Deciding what to display and when to display, already subjective by nature, is a problem amplified further by software being an abstract object. And unfortunately even then we’re not done because the problem is amplified yet again by the inherent complexity of the Internet as a connection object.

It’s monkeys with wrenches all the way down.

Affordances help guide our solution space in design. Physical objects like keyboards roughly match the human hand layout. Screens are made in a way to help us focus on one thing at a time, since eyes can only see/process one thing at a time. Even trackpads on laptops are shaped like a laptop screen, because they map the 2D representation of a cursor on the screen, creating a hand-eye coordination effect.

What are the affordances of a personal library? How can we easily display our implicit and explicit relationships of entries, without creating unnecessary friction?

Changelog

It will be up to historians to decide whether it was due to the rise of the smart phone or the rise of social media. For our purposes, the argument is immaterial. The infinite scroll works. 

Some might argue it works too well, since teens spend an average of five waking hours a day doing it.

The UX argument for scrolling is simple. Swipe, something new. Swipe, something new. Swipe, something new.

This framing is similar to paragraphs on paper, and perhaps that’s why the scroll was so effective. The brain loves novelty, after all. Line breaks...

...introduce new concepts, that...

...keep us reading.

My Implementation

I added an auto scroll to YCB that creates a capped Depth First Search Traversal of entries. In simpler terms, pressing the down arrow or tapping the right side of the page moves down the tree of relationships, and tapping the left side of the page or the keyboard up arrow moves back up the tree.

This method is advantageous in two ways. One, we can fully utilize the screen real estate for one entry at a time, the perfect amount to “focus on”. Two, the dataset in YCB can be 100 entries or 100k, and the traversal experience would be the same. Learn once, “scroll forever”, I suppose.

You can turn it on in your Settings page.

Quick, Take a Look!

The next feature I built was focused on the in-entry experience. I think Quick Look is one of the coolest features on the Mac OS. It’s simple, yet subtly powerful. It allows you to “know more” without committing. In a way, it’s the digital equivalent to window shopping.

Quick Look is in the top right corner of entries. Inside of it you can see implicit relations through the ‘Neighbors’ tab, and explicit threaded relationships through the ‘Thread’ tab.

Image(s)

There’s also an image gallery now, and it shows you all the images you’ve saved into YCB. It’s under the Search tab, or accessible directly from /dashboard/gallery.

Conclusion

If you haven’t yet, join the Discord! I’m going to host weekly community events there once we reach a critical mass.

Till next week, good luck storing, searching, synthesizing and sharing!

Best,

Bram