Disrespectful Design – Users aren’t stupid or lazy
At some level, I wonder how possible it is for your bespoke software product to be as usable as a door.  A door is simpler than most software, and we&#x27;ve built the same exact door millions of times.  We may be spending a lot of time on design when no design will ever help anything.<p>I am instead going to propose what I think software should aim for.<p>1) Software should be safe to explore.  Trying things out is how you learn.  Accumulating learning is how you become productive.  With that in mind, you should never allow the user run a command that creates a situation where they can&#x27;t revert to the previous state.  When one wrong move can erase hours of work, your users will never become experts.  (Historically, software has been absolutely awful here. 
 I think this is the number one reason why people are afraid of software -- the one UI paradigm they&#x27;ve learned throughout every new &quot;UI innovation&quot; is &quot;one wrong move will destroy your work&quot;.  So they tread carefully, and being careful is slow and painful.)<p>2) A user that knows the jargon that describes some command should be able to run that command by name.  Teaching users the jargon can be hard, but once they&#x27;ve learned the word, they should be able to at least run the command.  An example is watching a YouTube tutorial for some operation that was recorded a few versions ago.  Sinc the tutorial was made, someone moved every menu item around (hello, Fusion 360).  Now the tutorial is useless -- you know the command you want to run and how to use that command, but you have to dig around in the UI looking for it.  That&#x27;s a big fail.  (I called out Fusion 360 for this, but they have a command search, so it&#x27;s not a big deal.  The search could be better, like maybe telling you how to do it faster next time (&quot;next time, just press X&quot;), but at least it&#x27;s there.  I&#x27;ll also point out that Emacs does this, and even tells you the shortcut after the command is over.  If a 1970s LISP app can do it, so can your whizbang Electron app.)<p>Anyway, I&#x27;m not sure I&#x27;d understand how to use a door the first time I saw one.  Normally you can&#x27;t walk through walls, but with this innovation, you can. Weird!  But once you see someone else use it, or someone walks you through it (literally), it&#x27;s pretty easy.  With software, we are creating new concepts like that several times a day.  At some point, we have to accept that the user will have to try it out and learn how to use it.  There is a first time for everything, after all.