Freedom Battle: Git vs. Google Docs
One concept that we have touched upon is “User Control and Freedom”. This design principle concerns the case where a user makes a mistake in your interface – good design logic provides an easy way to undo or redo your action, to empower the user to have good control over their workflow/activities. A system with worse design would not provide easy functionality/intuition to do so.
One example of good design is google docs. A google docs user has no problems modifying their posts, and making mistakes is incredibly forgiving. Not only are there undo and redo buttons but there’s also version control, as shown by the above image. Even if the user makes a mistake by overwriting and then rewriting, you’re able to go to an earlier revision to recover lost work.
An example of bad design with respect to User Control and Freedom (ironically) is certain aspects of git. While git is great for version controls and workflow, it can be quite unforgiving if used incorrectly. For example, if you add a file that’s too large for git to handle, the user is challenged to remove the locally staged commit. Things get complicated if you try to stash/reset/etc., and there isn’t an easy command to revert to a previous commit without causing additional problems other than resetting the entire directory and pulling a previous commit.
The above image describes the type of easy workflow control that easily beats out command line prompts. In human language, the commands are easily laid out and graphically described, and presumably there would be a simple interface for rolling back a commit if an extraneous error such as adding a file to large to the commit occurs.