Making Sofa More Accommodating

Imagine you're hosting a party with friends. Chances are, you're going to want your guests to be as happy and comfortable as possible. Being an accommodating host includes providing food and drinks that your guests will like, cleaning your bathrooms, and playing good music.

You wouldn't only offer a single type of drink to your guests just because it's your favorite. You understand that people like different things and you're happy to accommodate...within reason.

Building software is a similar experience. Yes, I'm building the app for me, but also for all the current, and future, people who use it. This means providing options for people with different tastes, needs, and workflows than myself...within reason.

This analogy has helped me figure out when I offer a setting vs making an opinionated design choice. It's going to be hard (impossible) to get this right all the time, and I can't make settings for everything, but my efforts are to be more accommodating to my guests (Sofa users) based on what they need.


New Home Screen Accommodations

By default, Sofa comes with three primary, or system-level, lists:

  • The Pile,
  • Logbook (formerly Activity)
  • Pinned Items (formerly The Shelf).

Each of these lists have their own intended purpose, design, and functionality, but the one thing they have in common is that you can't remove or hide them.

I've learned that there are people who use all, some, or none of these lists. For the people who use some or none of them, having them always be visible is a little (or very) annoying.

How can I accommodate these people?

I explored a bunch of ideas, but in the end I've settled on two specific accommodations:

  • Being able to hide any or all of the primary lists from the home screen
  • Choose a simpler, less quirky, design for those lists on the home screen

Hiding Some Options from the Home Screen

In Fiddly Things, you'll find a simple toggle for each primary list to show or hide it from the home screen.

Non-Quirky Home Screen Design

As part of the Sofa 4.0 redesign, I've added new, rich cards for each of the primary lists on the home screen.

These rich cards are designed to be highly fun and functional. Being able to see a preview of the items you've added to the Logbook, or have pinned is genuinely helpful. Inline with Sofa's playful personality, I've designed each card to be a more physical representation of the list.

Now, while I love this, I know not everyone will like this more playful design. To accommodate those people, I've added a simpler design as an alternative. That way people can still get all the functionality, but in a more restrained design to match their preference.

In Fiddly Things, you'll find a toggle to disable "Quirky Mode" for Home.


👋 Feedback is Welcome

A common idea in the world of software design is that if you need to add a setting, then you've failed to create the "right" experience for the user. I couldn't disagree more.

People are complex, and they bring that complexity to the software they use. It's literally impossible to create the "right" experience. If I'm able to accommodate people and absorb some of their complexity into the software, then I will happily do so. It seems like the polite thing to do.

This idea of accommodating users (within reason) is something new I'm playing with, and I'd love to hear if any of this resonates with you (positive or constructive).

Great! You’ve successfully signed up.

Welcome back! You've successfully signed in.

You've successfully subscribed to Shawn Hickman.

Success! Check your email for magic link to sign-in.

Success! Your billing info has been updated.

Your billing was not updated.