# UX Rule #1: Everything is Possible

DevFeed: [UX Rule #1: Everything is Possible](<https://devfeed.tech/articles/ux-rule-1-everything-is-possible-30326.md>)

Original publisher: [Read original article](<https://www.mdubakov.com/posts/everything-is-possible/>)

Published: 2012-09-07T15:41:57Z

Content type: opinion

Language: en

Sources: [Blog by Michael Dubakov](<https://devfeed.tech/sources/blog-by-michael-dubakov.md>)

Topics: [User experience (UX)](<https://devfeed.tech/topics/ux.md>), [Software](<https://devfeed.tech/topics/software.md>), [systems](<https://devfeed.tech/topics/systems.md>), [properties](<https://devfeed.tech/topics/properties.md>), [email](<https://devfeed.tech/topics/email.md>)

Tags: [consistency](<https://devfeed.tech/tags/consistency.md>), [email](<https://devfeed.tech/tags/email.md>), [properties](<https://devfeed.tech/tags/properties.md>), [software](<https://devfeed.tech/tags/software.md>), [systems](<https://devfeed.tech/tags/systems.md>), [ui](<https://devfeed.tech/tags/ui.md>), [ux](<https://devfeed.tech/tags/ux.md>)

## AI overview

The article proposes a UX rule that software systems should support every possible operation on the data within their domain. It argues that users should be able to extract, present, and change data, including changing properties and relations and creating entities. The author contrasts this ideal with restrictive systems and emphasizes discoverability, confidence, and UI consistency.

## Source excerpt

Software systems work with data. I believe great system should obey the one simple rule Every possible operation with data does exist The knowledge of possibility is a really powerful thing. I want to create a software system that has almost no restrictions in a given domain. You should be able to extract any data, present data and change any data. Let's imagine you are using an email client. Suddenly, you want to group all incoming messages by sender. You should be able to do that. Or you want to find all emails for October, create October folder and move the emails into this folder. That should be possible as well. Every software system has a domain model behind and a set of rules. As a minimum, system should provide all kind of operations on this model: change properties, change relations, create entities, etc. Unfortunately, almost all existing systems are restrictive. If you know that operation is possible, you'll find it. This knowledge gives you a confidence. The operation can be quite advance and well hidden, but still it is much better to know that it does exist than dealing with illogical restrictions. Why the hell I can move a user story into a project, but can't change it's owner? Why I can change features in batch, but can't do that with tasks? If the rule #1 is applied, you are giving many great things to the end users: Confidence UI consistency Power Pretty cool it seems...