Did You Mock the Clock or Tempt Fate with Leap Day Bugs

February 29, 2016 is Leap Day in a Leap YearLeapin’ lizards! It’s Leap Day! Just about every four years anybody who was born on Feb. 29 has a birthday. It all has to do with our calendar not quite matching up with the time it takes the Earth to orbit the Sun. So some Pope named Gregory did his best to fix things and we now use the Gregorian calendar.

If you are in software development, hopefully, the Leap Year hasn’t meant a jump in headaches. Microsoft’s Matt Johnson, a senior software engineer for AzureCAT patterns and practices, reminded us early in the month that bugs may be lurking in our code. He said those could be:

  • Off-by-one issues, especially around data filtering using date range queries
  • Unexpected or undesired behavior in user interfaces
  • Potential for exceptions, crashes, or hanging as edge cases are encountered

Don’t think this is a potentially big problem? Then you probably don’t remember how Azure had a leap year outage in 2012, something Microsoft is working to prevent from happening this time around.

Some of the most dangerous places for Leap Year bugs include C/C++ code, Johnson said, “where they can cause application crashes or buffer overflows (which are a security risk).”

The two most dangerous leap year bugs he identified are adding or subtracting years in C / C++ and declaring an array of values for each day of the year.

Leap Year Woes May Not End on March 1

Your Leap Year troubles may not be over once you survive Feb. 29. Mark your calendar for December as you could suffer from Day 366 problems.

So, “mock the clock” to test for these problems, and read Johnson’s blog for other common Leap Year problems.

Lighter Side of Leap Year

Are you on salary? Then today you are working for free.

In the United States, Leap Year coincides with presidential election years. That’s one more day of campaigning, I guess.

Wish rapper/actor Ja Rule a happy 10th birthday. He was born in 1976, which means this is his 10th birthday. (Most Leap Year babies in the U.S. apparently choose March 1 for their annual birthday.)

Ladies get to turn the tables on men today, as tradition has it that St. Patrick set aside Feb. 29 as the day women have the right to ask for a man’s hand in marriage. In 5th century Ireland, apparently St. Bridget complained about women having to wait for men to propose.

Several centuries later in Scotland, the tradition got a boost from Queen Margaret, who ruled that women had the right to ask any man they fancied to marry. Men who refused faced a fine that was paid to the rejected woman.

Feb. 29 also marks Rare Disease Day, which makes a sick kind of sense.

People who had a bad Leap Year include Gen. George Armstrong Custer and his troops, who fought the Battle of the Little Bighorn in 1876; the passengers and crew of the Titanic sank, which sank in 1912.

Solve Your Reporting and Analytics Problems

Software bugs are bad enough. Struggling to code your own business intelligence and analytics solution when your developers are experts in other fields shouldn’t add to your problems. Izenda’s embedded BI platform adopts your application’s branding and security model and empowers users to create, customize and consume ad hoc reports, dashboards, and visualizations whenever and wherever they want.

Request a live demo

Follow Izenda on social media for the latest on technology and business intelligence: