Noob question: Two Duemilanoves communicate serial

Hello. Working on a project for school. We intend to use Duemilanoves with transceivers to send GPS data over a channel. But to start, we are trying to just get one to receive "Hello World" from the other. I just cant seem to get good output, its always garbage. Someone please tell me what is wrong with this code:

Sender:

 #include <AFSoftSerial.h>
 #include <SoftwareSerial.h>
 #define ledPin 13
 AFSoftSerial mySerial = AFSoftSerial(3, 2);
 
 byte pinState = 0;

 void setup() 
 {

  Serial.begin(9600);
  // set the data rate for the SoftwareSerial port
  mySerial.begin(2400);
  //mySerial.println("Hello, world...");
 }

 void loop()           // run over and over again
 {


   mySerial.println("Hello, world...");
   delay(300);
   toggle(ledPin);
    
 
 }
 

void toggle(int pinNum) {
  // set the LED pin using the pinState variable:
  digitalWrite(pinNum, pinState); 
  // if pinState = 0, set it to 1, and vice versa:
  pinState = !pinState;
}

Receiver

 #include <AFSoftSerial.h>
 #include <SoftwareSerial.h>
 AFSoftSerial mySerial = AFSoftSerial(3, 2);

 void setup() 
 {

  Serial.begin(9600);
  // set the data rate for the SoftwareSerial port
  mySerial.begin(2400);
 // Serial.println("Hello, world...");
 }

 void loop()           // run over and over again
 {
  if (mySerial.available() > 0) 
  {
    Serial.println(mySerial.read());
  }
 }

do you have a common ground between the arduinos?

I have the receiver powered through the usb cord from my computer. It should be receiving data on pin 3 through the "mySerial" then sending to the computer through usb through "Serial." The sender is constantly sending on pin 2 and is powered by a wall adapter. I have the output/input ports connected by normal 20 or 22 gauge wire one would use while breadboarding.

You still haven't answered weirdo557's question.

An electrical connection must be established between the GND pins of each Arduino to each other.

GND ---------- GND

PIN2 --     -- PIN2
    .   \ /
    .    X
    .   / \
PIN3 --     -- PIN3

Also, the built-in Serial library only supports UART hardware serial communications on pins 0 and 1. For other support, there are software-backed libraries (like SoftwareSerial) to be used as an alternative to the standard Serial library.

Thank you very much. I am now receiving fine after making a common ground connection.

My next step is to transmit the "Hello World" data via wireless channel. Please check back if you have experience in this application.

Again thank you very much.

any time