Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Style guide - Successful, failure, error states #126

Open
jeffandersen opened this issue Dec 6, 2016 · 3 comments
Open

Style guide - Successful, failure, error states #126

jeffandersen opened this issue Dec 6, 2016 · 3 comments

Comments

@jeffandersen
Copy link
Contributor

jeffandersen commented Dec 6, 2016

Talking points

  • Complex error messages
    • Error message plus description
  • Successful states contain output or not?
    • In a lot of system tools no output is the success state
    • Most of our commands now provide a confirmation message
  • Invalid usage? validation failure?
@jeffandersen
Copy link
Contributor Author

We should always lead a complex error message with a sane/friendly explanation, followed by the more technical output (which can be helpful to power users, and useful in debugging).

We should never panic, that's a bug.

In a lot of cases our command output infer context from their cwd. Because of this I feel that every command should have a success or failure message that shows the result of this. For instance, showing the path that has been computed, or showing which object has been created. We're much more of a product that just a command line utility, so I don't think that it's too unexpected.

@ntassone
Copy link
Member

+1 to utilizing context where possible.

I'm in favor of having success states contain output but I'm coming at this from a non-programmer background. Are success messages considered extraneous to the average programmer? Confirmation seems more considered.

@ntassone
Copy link
Member

Another topic we talked about was empty states.

I think we should utilize the hints ui in our empty states to suggest the user can perform an action in order to make the state non-empty. Example:

$ torus services list

Project 'www' has no services. 
* Create a new service by running 'torus services create'

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants