can't show time using DS1307

Hello I have connected like it said in http://bildr.org/2011/03/ds1307-arduino/ and this is the code for setting the time and show it :

#include "Wire.h"
#define DS1307_ADDRESS 0x68
byte zero = 0x00; //workaround for issue #527
int RedLED=9; //digital ourput LED
int GreenLED=10;//digital ourput LED
void setup(){
  Wire.begin();
 // pinMode(RedLED,OUTPUT);
  //pinMode(GreenLED,OUTPUT);
  Serial.begin(9600);
  setDateTime(); //MUST CONFIGURE IN FUNCTION
}

void loop(){
  //  

  printDate();
  Serial.print("Analog 2 is - ");
  Serial.println(analogRead(A2));
  Serial.print("Analog 3 is - ");
  Serial.println(analogRead(A3));
  Serial.print("Analog 4 is - ");
  Serial.println(analogRead(A4));
  Serial.print("Analog 5 is - ");
  Serial.println(analogRead(A5));
digitalWrite(RedLED,HIGH);
digitalWrite(GreenLED,LOW);
  delay(3000);
 digitalWrite(RedLED,LOW);
digitalWrite(GreenLED,HIGH);
  delay(1500);
}

void setDateTime(){

  byte second =      00; //0-59
  byte minute =      50; //0-59
  byte hour =        8; //0-23
  byte weekDay =     3; //1-7
  byte monthDay =    1; //1-31
  byte month =       10; //1-12
  byte year  =       13; //0-99

  Wire.beginTransmission(DS1307_ADDRESS);
  Wire.write(zero); //stop Oscillator

  Wire.write(decToBcd(second));
  Wire.write(decToBcd(minute));
  Wire.write(decToBcd(hour));
  Wire.write(decToBcd(weekDay));
  Wire.write(decToBcd(monthDay));
  Wire.write(decToBcd(month));
  Wire.write(decToBcd(year));

  Wire.write(zero); //start 

  Wire.endTransmission();

}

byte decToBcd(byte val){
  // Convert normal decimal numbers to binary coded decimal
  return ( (val/10*16) + (val%10) );
}

byte bcdToDec(byte val)  {
  // Convert binary coded decimal to normal decimal numbers
  return ( (val/16*10) + (val%16) );
}

void printDate(){

  // Reset the register pointer
  Wire.beginTransmission(DS1307_ADDRESS);
  Wire.write(zero);
  Wire.endTransmission();

  Wire.requestFrom(DS1307_ADDRESS, 7);

  int second = bcdToDec(Wire.read());
  int minute = bcdToDec(Wire.read());
  int hour = bcdToDec(Wire.read() & 0b111111); //24 hour time
  int weekDay = bcdToDec(Wire.read()); //0-6 -> sunday - Saturday
  int monthDay = bcdToDec(Wire.read());
  int month = bcdToDec(Wire.read());
  int year = bcdToDec(Wire.read());

  //print the date EG   3/1/11 23:59:59
  Serial.print(monthDay);
  Serial.print("/");
  Serial.print(month);
  Serial.print("/");
  Serial.print(year);
  Serial.print(" ");
  Serial.print(hour);
  Serial.print(":");
  Serial.print(minute);
  Serial.print(":");
  Serial.println(second);

}

and this is what I get in the serial monitor :

165/165/165 45:165:165 Analog 2 is - 767 Analog 3 is - 623 Analog 4 is - 1016 Analog 5 is - 1015

the battery is good , what am I missing?

Thank ,

Have you tried one of the existing libraries with the (working) example code to check that your connections are all correct. One library is in my code repository below.