I've released my first Drupal module... Inline Errors.
In most Drupal themes, $messages is located at the top of your page.tpl.php. However on most sites, forms such as the comment form are located at the bottom of your page. So should someone submit a comment that has errors, they're kicked back to the top of the page and have to scroll back down to fix their submission.
Without making any adjustments to the placement of your $messages in your theme, you can enable Inline Errors for any of your site forms such as contact, comments or webforms at admin/settings/inline_errors.
With a little jQuery and the jQuery ScrollTo plugin, Inline Errors will capture the $messages, place them just above your form and move the page to the top of the form.
You can enable Inline Errors for any form that implements hook_form() at admin/settings/inline_errors
If you want to see this module in action... submit an empty comment on this page.
» Inline Errors project page
While the module has been tested with several core & contributed modules, further testing with different modules is needed, so should you use Inline Errors, and encounter bugs with any specific modules, drop me a line.