You’ll (never/possibly) need to delete another message

Google Drive is hereRemember when GMail first came out?  1GB of email was unheard of, especially in a free service at the time.  One of Google’s big selling points was “you’ll never need to delete another message.”  It was right there on the home page.  If you compare the home pages from 2004 and today for Gmail you’ll note they still refer to it as being “Lots of space” but they no longer say you’ll never need to delete another message.  The message about never deleting email disappeared sometime between March, 2009 and December 2009.

Why did the message go away?  Because the users proved that 1GB (then 2GB, then 4GB, then 7GB) simply wasn’t enough to store EVERY email.  To combat this, back in 2007, Google released a means of purchasing more storage space at a rate of 6GB for $20/year, this storage would be shared amongst your Google Docs, GMail, and Picasa accounts.  Over time these prices got even better.  Yesterday you could buy 20GB of storage for $5 a year.

Today however, with the Google Drive release, the prices have changed from being yearly, to being monthly, while yesterday you could get 20GB for $5 a year, today the cheapest plan is 25GB for $2.49 a month (which comes out to $29.88/year).  This is a very significant increase, but it’s not what I find the most annoying:  GMail storage space is now completely separate than Google Drive (formerly Google Docs) and Picasa storage.  The 25GB you are purchasing is only for Google Drive and Picasa, not for GMail.

They soften the blow by ALSO giving you an upgrade to 25GB on GMail, but this is separate from the 25GB on Google Drive.  Now this means that you are really buying about 35GB for the $29.88 a year (but you could previously buy 80GB for $20 a year so it’s still a sizeable increase), but the kicker is, the 25GB of space on GMail is fixed.  If you buy 25GB of space on Google Drive, you get 25GB of space on GMail, if you buy 1TB of space on Google Drive, you get 25GB of space on GMail.

There is no longer any option available to purchase more than 25GB of space on GMail whatsoever, no matter how much you may want it so that you never have to delete another email

Never delete another email
GMail's home page used to tell you not to delete email

I’d like to say I have hope that they will allow this option soon, but I don’t really.  The premium Google Apps for Business has long given 25GB of space for GMail, and even though I have personally wanted to buy more space, Google has never given me the option to buy more on a Google Apps account.  It seems the dream of limitless email storage is no longer alive.

Google’s Code Mistake, and what they did to make it right

Google I/OThis morning Google opened up a programming competition using the same system as Google Code Jam (they called it the Google Code Jam Sprint to I/O) to win the right to buy 1 of 100 tickets to Google I/O.  Normal Registration for the conference closed 20 minutes after it opened back on March 27th due to the incredible demand, so naturally those developers who couldn’t get in before were excited and ready to battle for the chance to buy a ticket.

The competition consisted of 2 problems, programmers could write their code in any language (as long as the compiler is free to use).  It would work like this, you would write a program according to their specifications of the problem, and then you would submit it.  When you submit it, google would provide you with a file of sample input data and then give you 1 minute to run your code against that sample data and then submit the output to them.  They would then run a validator across the output and tell you if you were correct or not.  If you were correct, it would accept your answer, if not, it would reject it.

The first question went like this (paraphrasing)

The Google Store has M new designs of android mini-statues available, and they have L of each design in stock.  You, an avid collector and generous gifter, want to buy a certain number of each of these new designs (K1, K2KM). The problem is… the packages for these statues are all exactly the same, and don’t indicate what is inside, and you cannot open the package before purchasing.  What is the minimum number of packages you need to purchase to guarantee you have all of the statues you want in a worst-case scenario

The sample data was a list of lines in the following format for different test cases:
L M K1 K2 ... KM

For example:

5 3 4 2 1
5 3 5 5 5
5 2 1 5
6 4 0 0 0 0
2 4 5 1 2 3
0 3 4 1 2
9 5 1 1 1 1 1

Taking the first one (They have 5 each of 3 different designs, and you want 4 of the first, 2 of the second, and 1 of the third), the correct answer would be 14 (in order to guarantee you have at least 4 of the first, at least 2 of the second, and at least 1 of the third, you would have to buy enough that you would have ALL of all but 1 of them, and then the highest K for the remainder)
Answer = (L * (M-1)) + max(K)
The question also said that if it was impossible to get what you want, you should return -1 (like the 5th and 6th examples, you can’t buy more statues than they had available in the first place)

Now most programmers seeing something like the 4th test case there (6 4 0 0 0 0) would realize that if you don’t want to buy any of them, than the answer is 0 (minimum number to buy in order to get 0 statues is 0), so the basic pseudo code to solve this problem is:

function process_test_case(L = 0, M = 0, K = array()) {
     if (max(K) == 0) return 0
     elseif (max(K) > L) return -1
     else return (L * (M - 1)) + max(K)
}

There is just one problem… Google’s developers that came up with this test, didn’t think about the possibility where you don’t want any statues (max(K) == 0), so if you ran the above code and returned 0 on the sample 4, google’s validator would come across with “Incorrect”, on the other hand if you left that line out and only did the other 2 possibilities, it would say you were “correct”

Naturally a lot of the programmers who entered the competition were quite upset about this, and complained to Google via comments on the Google+ post that announced the competition.  Eventually google put up the following message saying that they realize they made a mistake:

We’ve made a mistake in problem A. The correct output is 0, but it is being judged as wrong because 4 of our problem writers have independently made the same bug in their solutions. We would like to apologize for the confusion this has caused. We will send an email to all participants shortly, announcing our plan to resolve this issue in the least unfair manner possible. We take a lot of precautions to prevent mistakes like this, but we have messed up this time

Now I did not enter this competition (I did the coding example just for the brain exercise, but I did not submit it) because I am already registered for Google I/O and didn’t need the additional ticket for myself, but some of my coworkers did enter the competition, and they received an email a little while ago which included the following:

As you know, we intended to provide an opportunity to buy Google I/O tickets to the top 100 scorers. In light of our mistake, we’ve decided instead to offer this opportunity to all participants who have submitted any solution to either of the two problems. Please watch your inbox for a registration code coming shortly.

That does indeed seem “least unfair,” everyone who tried the contest, gets to go to Google I/O.  If you are among those, (like my fellow coworkers), I look forward to seeing you in San Francisco on June 27th.