Do You Implement hook_help()?
I think this really depends on what you need.

For page specific help, returning translated text does appear to be the norm from the modules I have surveyed, and does follow the Help text standard (for core and contrib).

For the text on the admin/help page, I think that using the README.txt is best, since that should really be a "one-stop-shop" for help with the module, and you don't want to have to track your changes in two places.  It is also a pain to format that much text with code.  However, this does make translation hard.

I have not seen a "standard" way to handle the README.txt.  If you look at the Module documentation guidelines, they give this example for Drupal 6:

function mymodule_help($path, $arg) {
  switch ($path) {
    case 'admin/help#mymodule':
      // Return a line-break version of the module README.txt
      return filter_filter('process', 1, NULL, file_get_contents( dirname(__FILE__) . "/README.txt") );
  }
}


and there is a comment for a Drupal 7 version:

function mymodule_help($path, $arg) {
  switch ($path) {
    case 'admin/help#mymodule':
      // Return a line-break version of the module README.txt
      return check_markup(file_get_contents( dirname(__FILE__) . "/README.txt") );
  }
}


Personally, the version I like what Features does:

function features_help($path, $arg) {
  switch ($path) {
    case 'admin/help#features':
      $output = file_get_contents(drupal_get_path('module', 'features') .'/README.txt');
      return module_exists('markdown') ? filter_xss_admin(module_invoke('markdown', 'filter', 'process', 0, -1, $output)) : '&lt;pre&gt;'. check_plain($output) .'&lt;/pre&gt;';
    // ...
  }
}