is there A faster way to send the serial data
Sure. Get out of the stone age.
Serial.begin(9600);
should be
Serial.begin(115200);
You need to read up on switch handling. Right now, as long as the switch is pressed, or released, you are hammering the serial port with data. You need to send a value only when the switch transitions from pressed to released and when it transitions from released to pressed. To do this:
int currState;
int prevState = HIGH;
void loop()
{
currState = digitalRead(buttonPin);
if(currState != prevState)
{
// A transition occurred...
if(currState == HIGH)
Serial.print('1');
else
Serial.print('0');
}
prevState = currState;
// Other code
}