How do I generate a payment id when I donate?
You can just create a random one yourself - it's 64 hex characters:)
I don't understand this.  What exactly do I do with these 64 characters?
You don't need a payment ID to donate, only to deposit to exchanges (and in the future, perhaps, other merchants). Just send the donation to the donation address.
You can add a payment ID to any payment if you are using simple wallet by putting it after the amount. It must be 64 hex characters.
Some exchanges and pools let you specify a payment ID for the payments the send you, which is convenient for sending those payments directly to an exchange, but otherwise not needed.