“Nooooooo!” shouted February. “Why am I being singled out here?”
“You are not being singled out.” said January, trying to calm February. “August wants an extra day because he is an Emperor. And you know how emperors are, their big fat egos. He wants equal number of days as his adopted father July, if not more.”
“And you should consider yourself lucky that you didn’t get the fool’s day. Just look at April.” said December.
February looked at April who was almost in tears. He felt sad for her.
“But at least I could get 30 days, just like June and November? 28 days is too less.” asked February.
“Guys, I think we made a miscalculation.” March cut into their conversation. “A solar year is not exactly 365 days. To be a little more precise it is about 365.25 days. So over a period of four years we will miss out one day if we don’t factor that in.”
February, January and December looked at March in bewilderment.
“That means we need to add one day every four years.” said March trying to put it into simple words.
“Hey, you can take that day.” exclaimed January.
“One extra day, that too every four years! Thanks, but no thanks.”
“Yes that would be great. One day every four years means that you are special.” said December trying to help out January.
“Okay. Lets ask May. She has a crystal ball which can tell future. Trust me this one day every four years will be a big thing in future.” said January pointing towards May.
All of the 12 sat around the crystal ball with May mumbling something which no one understood. Suddenly the crystal ball started glowing.
“Do you see anything?” an excited February asked.
“In future whenever you would have 29 days it would a special year, called Leap Year.” said May trying to read her crystal ball. “It would be so special that even the world’s most advanced spreadsheet program won’t be able to handle it. You would be able to bring down an entire cloud computing platform. Even the most popular e-mail would be on knees in front of you. And a popular gaming console would bow before you. There would even be a movie named after it. Then there would be a group of people called — software engineers — and they would… they would… ahem… love you! Yes… they would really love you!”
“Guys…” March again interrupted. “I guess we miscalculated again. A solar year is not exactly 365.25 days. Its slightly less. If we don’t factor that in then, over a period of four centuries, the accumulated error of adding a leap day every fourth year would amount to about three extra days. So… we need to omit three leap days every 400 years!”
In a not so distant future.
TING! Came the sound from Navin’s computer informing that he just received a new e-mail. He opened it to see an error screenshot. That can’t be right? We tested it properly. He thought.
He opened up the source code and tried to look into it. “Here it checks the boolean value, its false. So it goes inside this. It takes the date value and… wait… DAMN YOU LEAP YEAR!”
There is an old saying (okay, may be not so old), “There are only three hard things in computer science — cache invalidation, naming things, and handling of the 29th of February.” Have you ever been bitten by Leap Year Bug?
Image credits: Leaping frog from here