It seems like a shame that all that computational power is being wasted. I mean other than generating some hashes, what good does that really do? I think it'd be cool if somehow it tied into the folding@home type of stuff. Where the computations solved something meaningful, but there could also be some "monetary" incentive.
Already working on that ;) I have a working prototype of a "bitcoin" client that replaces the hash generating function with completing a workunit of a BOINC project (the various @home stuff). It required some modification to the bitcoin protocol as the two tasks are not exactly analogous, and there are some different security implications.
The time and energy used to mine is what provides the security of bitcoins and transactions. I would not call it a waste; it is what enables bitcoin to exist as a currency.
Another way to think about it is to imagine that each of these GPU rigs is like a branch office of the Fed. (yes, I'm kind of joking here)