Is it OK to put serial.write in setup?

When I first connect to the serial port sometimes I see
"FOO"

with no ACK until I press a key

Sometimes I see "FOO"
and then ACK a second later

Sometimes I see "FOO<?>" with some unreadable character

Sometimes I see more or less of the whole word "FOOBAR"

I'm expect to only see ACK until I press a key(send something to the board)

I don't want the board to spit out anything, other than ACK

Why would there be something in Serial.available() when the board resets and is there a way to clear that in the setup function?