56 // The Challenge of Building on UI Conventions: A Formable Update
I’m resisting the temptation to write about AI this week. Instead I’ll say a few words about how Formable isn’t intuitive and how that might stem from similarity to other software.
This newsletter is also just a short update on what’s been going on on my end.
I’ve been bugfixing and onboarding a couple of people.
Up next I want to fix some problems I’ve seen.
I’ve noticed that I have to be extra careful with using known UI primitives. For example, Formable has a menu component / sidebar. Now many people think that a menu item resembles a page, since that’s what they’re used to from other apps (think Notion pages in the sidebar), whereas in Formable, it’s a view that could show any item in your system.
That’s not very intuitive. I have some ideas for improvements there, which I’ll play around with over the next days. I’ll report back to you with some updates on that front.
Building on prior work
When designing new user interfaces people often lean on previous work, sometimes work in another medium. Take skeuomorphism for example.
Let’s start with the desktop metaphor. The first graphical user interfaces heavily leaned on a desktop, trashcan, files and folders. We’re still stuck with much of that, which I and many others are trying to change, and indeed we don’t rely so heavily on those metaphors anymore.
Mobile OSs kind of got rid of the file system in the UI. But they also used skeuomorphism—iOS maybe being the most prominent example.
Nowadays, when designing metaverse experiences, at least most non video game ones try to resemble the physical world once again. Facebook wants to get into the workspace so they build virtual offices. We wouldn’t need tables in a world where everything could just hover in space though.
Rebuilding things that users already know is very useful still. It allows them to just remap their existing knowledge of the world to just be remapped to a new medium. It’s a nicer learning curve.
That takes me back to Formable’s learning curve. I want to make use of existing UI primitives, like a menu, but at the same time have to make it obvious which parts don’t work the way one might expect from other apps, views not being pages, and blocks being able to live at multiple places probably being the one that’s most tricky to wrap one’s head around.