I've been having fun playing around with AIR's NativeProcess class. This app I'm writing in my very sparse free-time is an application to help you manage a Drupal website. Features are limited at the moment. The code/info is here: http://code.google.com/p/drushpal/
People are never satisfied with WYSIWYG plugins. One of the biggest frustrations, especially when working with an Administration theme, is that what appears in the editor is NOT the same as what appears on the website. And the "preview" button does no good either. For instance, if you've got custom spacing, list styles, or specific classes for typography, you're not going to see them in your WYSIWYG editor, and therefore, what you see is not what you get.
As I'm teaching some friends the basics of Drupal I see a common mistake, putting too much functionality into the theme. The real problem with this is simple: the site's look and feel may change with or without the site's functionality. If you're using a custom theme, it's tempting to throw functionality right into page.tpl.php and call it a day. But you're setting yourself up for headaches. Trust me, I know from experience.
UPDATE: There's an excellent module called Ubercart Views which will give you most of the functionality described in this post. However, this is still useful to learn because you can use the same principle to expose ANY data.
I've had a few people request custom reports that Ubercart does not have built in. Fortunately, thanks to the Table Wizard module, it's not hard to create them!