Kernel#abort does three things:
Kernel#abort does three things:

1. It sets the exit status to 1
2. It prints its argument to stderr
3. It terminates the process

So

  abort "unable to launch missiles :("

is equivalent to:

  $stderr.puts "unable to launch missiles :("
  exit(1)

When printing an error message, it's often a good idea to use the word "error". Users are familiar with that. Also try not to use generic terms like "input" and "data", be specific. When possible, give the user a hint about what they did wrong. For example:

  Permission error

Might be rephrased as:

  Error: Unable to start server on 366
  Are you root?

bloopletech/gistory,bloopletech/gistory