Mac OS X is a thoroughly modern operating system, except for the shocking lack of an uninstall program. Dragging an application to the trash removes the app itself from your hard drive (well, after you empty your trash), but this method leaves behind many associated files that got installed along with the app. Thankfully, there is a free third-party app that rounds up all of the supporting files rattling around your hard drive and deletes them along with whatever app you are uninstalling.
The app is called AppCleaner, and it provides a small window where you can drag and drop apps to uninstall. When you drop an app into AppCleaner, it quickly assembles a list of all of its associated files. You can uncheck any of the files you don't think you can live without or leave them all checked and hit the Delete button.
There are three buttons at the top of the AppCleaner window that let you view all of your Applications, Widgets, and Others (which, in my case, was a bunch of plug-ins and other miscellany). Check an item on one of these lists to round up all of its files and then hit Delete.
There are two useful features in AppCleaner's preferences. On the General tab of preferences, you can drop apps to a list to protect them from being deleted. Also, you can check boxes on this tab to protect launched and default apps. And on the next tab, you can enable SmartDelete tab, which lets you bypass the AppCleaner window altogether. Because the next time you go to uninstall an application on your Mac, you might not remember the name of AppCleaner. With SmartDelete turned on, when you drag a file to your Mac's trash, AppCleaner pops up with a window of all of the app's associated files, helpfully offering to delete them along with the app.
If you don't like the cut of AppCleaner's jib, Jason Cipriani has three other such apps to uninstall apps on OS X the right way.