Empty blocks minimise your stale shares.
Why would you prioritize stale share rate over publishing a useful solved block?
What wizkid057 said.
But one point he made, more explicitly:
The empty blocks found
would not have been a "useful" solved block in any case.
They would have been stale shares.
Whether the pool sends an empty block or not, the miner should always begin working on the non-empty block as soon as it its data is received.
... oh, I already said that:
Empty blocks minimise your stale shares.
Eligius (and probably most cluefully operated pools) send them as soon as a new block is found, so that you can begin mining immediately.
This is also followed up with an updated block full of transactions that miners can begin working on as soon as they receive it.
If your internet connection is 10 Gbps, the empty block might waste a few bytes of bandwidth and you'll get the full block immediately to begin working on.
If your internet connection isn't so fast, you'll begin working on the empty block, then transition to the full one as soon as you finish receiving it.
I appreciate the answers, but the "increases security" reason seems like nonsense to me. The purpose of the block is not to provide security, it is to record transactions. Security is inherent in the way the network was designed.
Yes, the empty block is followed by a block of transactions, but I still contend that the empty block is worthless to the network.
Happy mining.