0
Gmail’s Quota and few in-jokes Zvi Devir zdevir  AT  gmail.com
 
History of Gmail’s quota <ul><li>April 1 st , 2004 – Gmail is born… Providing  1024 Mb  of free storage! </li></ul><ul><li...
Storage quota graph
Gmail’s quota counter var  CP = [ [ 1167638400000, 2800 ], [ 1175414400000, 2835 ], [ 1207033200000, 2980 ], [ 12385692000...
Gmail’s quota counter var  CP = [ [ 01/01/2007 08:00 -> 2800 Mb ], [ 01/04/2007   08:00 -> 2835 Mb ], [ 01/04/2008   07:00...
October 12 th , 2007 – New quota <ul><li>April 1 st , 2004 – Gmail is born… with  1024 Mb  of free storage! </li></ul><ul>...
October 12 th , 2007 – New quota
New quota counter // Estimates of nanite storage generation over time. var  CP = [ [ 1175414400000, 2835 ], [ 119217600000...
New quota counter // Estimates of nanite storage generation over time. var  CP = [ [ 1175414400000, 2835 ], [ 119217600000...
New quota counter // Estimates of nanite storage generation over time. var  CP = [ [ 1175414400000, 2835 ], [ 119217600000...
New quota counter // Estimates of nanite storage generation over time. var  CP = [ [ 1175414400000, 2835 ], [ 119217600000...
New quota counter // Estimates of nanite storage generation over time. var  CP = [ [ 01/04/2007 08:00 -> 2835 Mb ], [ 12/1...
New quota counter // Estimates of nanite storage generation over time. var  CP = [ [ 01/04/2007 08:00 -> 2835 Mb ], [ 12/1...
New quota counter // Estimates of nanite storage generation over time. var  CP = [ [ 01/04/2007 08:00 -> 2835 Mb ], [ 12/1...
New quota counter // Estimates of nanite storage generation over time. var  CP = [ [ 01/04/2007 08:00 -> 2835 Mb ], [ 12/1...
New quota counter // Estimates of nanite storage generation over time. var  CP = [ [ 01/04/2007 08:00 -> 2835 Mb ], [ 12/1...
New quota counter // Estimates of nanite storage generation over time. var  CP = [ [ 01/04/2007 08:00 -> 2835 Mb ], [ 12/1...
New quota counter // Estimates of nanite storage generation over time. var  CP = [ [ 01/04/2007 08:00 -> 2835 Mb ], [ 12/1...
New quota counter // Estimates of nanite storage generation over time. var  CP = [ [ 01/04/2007 08:00 -> 2835 Mb ], [ 12/1...
 
Upcoming SlideShare
Loading in...5
×

Gmails Quota Secrets

12,709

Published on

By Zvi Dvir
Presented at Eurekamp 2008 (www.eurekamp.com)

http://www.cs.technion.ac.il/~zdevir/main1.html

Published in: Technology, Business
0 Comments
3 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
12,709
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
56
Comments
0
Likes
3
Embeds 0
No embeds

No notes for slide

Transcript of "Gmails Quota Secrets"

  1. 1. Gmail’s Quota and few in-jokes Zvi Devir zdevir AT gmail.com
  2. 3. History of Gmail’s quota <ul><li>April 1 st , 2004 – Gmail is born… Providing 1024 Mb of free storage! </li></ul><ul><li>April 2 nd , 2005 – Quota increased to 2050 Mb . Following gradual growth of ~100Mb per month. </li></ul><ul><li>October 1 st , 2006 – Growth rate is slowed down to ~10Mb per month. </li></ul><ul><li>January-March 2007 – Growth rate of ~12Mb per month, in the foreseeable future (until 2012). </li></ul>
  3. 4. Storage quota graph
  4. 5. Gmail’s quota counter var CP = [ [ 1167638400000, 2800 ], [ 1175414400000, 2835 ], [ 1207033200000, 2980 ], [ 1238569200000, 3125 ], [ 1270105200000, 3270 ], [ 1301641200000, 3415 ], [ 1333263600000, 3560 ] ]; This is a code fragment from the “Welcome to Gmail” page: Dates in serial form Storage quota in Mb
  5. 6. Gmail’s quota counter var CP = [ [ 01/01/2007 08:00 -> 2800 Mb ], [ 01/04/2007 08:00 -> 2835 Mb ], [ 01/04/2008 07:00 -> 2980 Mb ], [ 01/04/2009 07:00 -> 3125 Mb ], [ 01/04/2010 07:00 -> 3270 Mb ], [ 01/04/2011 07:00 -> 3415 Mb ], [ 01/04/2012 07:00 -> 3560 Mb ] ]; Gmail calculates the current quota using a linear interpolation between the date “points”. The quota counter table in human readable form:
  6. 7. October 12 th , 2007 – New quota <ul><li>April 1 st , 2004 – Gmail is born… with 1024 Mb of free storage! </li></ul><ul><li>April 2 nd , 2005 – Quota increased to 2050 Mb . Following gradual growth of ~100Mb per month. </li></ul><ul><li>October 1 st , 2006 – Growth rate is slowed down to ~10Mb per month. </li></ul><ul><li>January-March 2007 – Growth rate of ~12Mb per month, in the foreseeable future (until 2012). </li></ul><ul><li>October 12 th , 2007 – Another huge leap: Gmail now gives more than 6Gb of storage, with monthly growth rate of ~100Mb . </li></ul>
  7. 8. October 12 th , 2007 – New quota
  8. 9. New quota counter // Estimates of nanite storage generation over time. var CP = [ [ 1175414400000, 2835 ], [ 1192176000000, 2912 ], [ 1193122800000, 4321 ], [ 1199433600000, 6283 ], [ 2147328000000, 43008 ], [ 46893711600000, Number.MAX_VALUE ] ]; This is the new JavaScript counter:
  9. 10. New quota counter // Estimates of nanite storage generation over time. var CP = [ [ 1175414400000, 2835 ], [ 1192176000000, 2912 ], [ 1193122800000, 4321 ], [ 1199433600000, 6283 ], [ 2147328000000, 43008 ], [ 46893711600000, Number.MAX_VALUE ] ]; This is the new JavaScript counter: <ul><li>What is this Number.MAX_VALUE ? Google must be kidding… </li></ul>
  10. 11. New quota counter // Estimates of nanite storage generation over time. var CP = [ [ 1175414400000, 2835 ], [ 1192176000000, 2912 ], [ 1193122800000, 4321 ], [ 1199433600000, 6283 ], [ 2147328000000, 43008 ], [ 46893711600000, Number.MAX_VALUE ] ]; This is the new JavaScript counter: <ul><li>What is this Number.MAX_VALUE ? Google must be kidding… </li></ul><ul><li>The serial dates look odd… </li></ul>
  11. 12. New quota counter // Estimates of nanite storage generation over time. var CP = [ [ 1175414400000, 2835 ], [ 1192176000000, 2912 ], [ 1193122800000, 4321 ], [ 1199433600000, 6283 ], [ 2147328000000, 43008 ], [ 46893711600000, Number.MAX_VALUE ] ]; This is the new JavaScript counter: <ul><li>What is this Number.MAX_VALUE ? Google must be kidding… </li></ul><ul><li>The serial dates look odd… </li></ul><ul><li>And what is this nanite storage generation ? </li></ul>As Google’s storage capacity, which grows at similar rate… Nanites are self-reproducing (Von Neumann) nano-robotic machines.
  12. 13. New quota counter // Estimates of nanite storage generation over time. var CP = [ [ 01/04/2007 08:00 -> 2835 Mb ], [ 12/10/2007 08:00 -> 2912 Mb ], [ 23/10/2007 07:00 -> 4321 Mb ], [ 04/01/2008 08:00 -> 6283 Mb ], [ 17/01/2038 08:00 -> 42 Gb ], [ 02/01/3456 07:00 -> Infinite... ] ]; The new counter in human readable format:
  13. 14. New quota counter // Estimates of nanite storage generation over time. var CP = [ [ 01/04/2007 08:00 -> 2835 Mb ], [ 12/10/2007 08:00 -> 2912 Mb ], [ 23/10/2007 07:00 -> 4321 Mb ], [ 04/01/2008 08:00 -> 6283 Mb ], [ 17/01/2038 08:00 -> 42 Gb ], [ 02/01/3456 07:00 -> Infinite... ] ]; The new counter in human readable format: <ul><li>42 is a very special number. </li></ul>
  14. 15. New quota counter // Estimates of nanite storage generation over time. var CP = [ [ 01/04/2007 08:00 -> 2835 Mb ], [ 12/10/2007 08:00 -> 2912 Mb ], [ 23/10/2007 07:00 -> 4321 Mb ], [ 04/01/2008 08:00 -> 6283 Mb ], [ 17/01/2038 08:00 -> 42 Gb ], [ 02/01/3456 07:00 -> Infinite... ] ]; The new counter in human readable format: <ul><li>42 is a very special number. </li></ul><ul><li>On January 2038 the Unix world will face the infamous Y2K38 bug.. </li></ul>
  15. 16. New quota counter // Estimates of nanite storage generation over time. var CP = [ [ 01/04/2007 08:00 -> 2835 Mb ], [ 12/10/2007 08:00 -> 2912 Mb ], [ 23/10/2007 07:00 -> 4321 Mb ], [ 04/01/2008 08:00 -> 6283 Mb ], [ 17/01/2038 08:00 -> 42 Gb ], [ 02/01/3456 07:00 -> Infinite... ] ]; The new counter in human readable format: <ul><li>42 is a very special number. </li></ul><ul><li>On January 2038 the Unix world will face the infamous Y2K38 bug.. </li></ul><ul><li>Google will hit infinity (and beyond) at a very special date – in American format, it will happen on 01-02-3456 at 07:00:00 . </li></ul>
  16. 17. New quota counter // Estimates of nanite storage generation over time. var CP = [ [ 01/04/2007 08:00 -> 2835 Mb ], [ 12/10/2007 08:00 -> 2912 Mb ], [ 23/10/2007 07:00 -> 4321 Mb ], [ 04/01/2008 08:00 -> 6283 Mb ], [ 17/01/2038 08:00 -> 42 Gb ], [ 02/01/3456 07:00 -> Infinite... ] ]; The new counter in human readable format: Still, something is wrong…
  17. 18. New quota counter // Estimates of nanite storage generation over time. var CP = [ [ 01/04/2007 08:00 -> 2835 Mb ], [ 12/10/2007 08:00 -> 2912 Mb ], [ 23/10/2007 07:00 -> 4321 Mb ], [ 04/01/2008 08:00 -> 6283 Mb ], [ 17/01/2038 08:00 -> 42 Gb ], [ 02/01/3456 07:00 -> Infinite... ] ]; 02/01/ 3456 07:08:09 The new counter in human readable format: <ul><li>Still, something is wrong… </li></ul><ul><li>A better magic date is 01-02-3456 at 07:08:09 . </li></ul>
  18. 19. New quota counter // Estimates of nanite storage generation over time. var CP = [ [ 01/04/2007 08:00 -> 2835 Mb ], [ 12/10/2007 08:00 -> 2912 Mb ], [ 23/10/2007 07:00 -> 4321 Mb ], [ 04/01/2008 08:00 -> 6283 Mb ], [ 17/01/2038 08:00 -> 42 Gb ], [ 02/01/3456 07:00 -> Infinite... ] ]; 19/01/2038 03:14:08 02/01/ 3456 07:08:09 The new counter in human readable format: <ul><li>Still, something is wrong… </li></ul><ul><li>A better magic date is 01-02-3456 at 07:08:09 . </li></ul><ul><li>And the Y2K38 bug will occur on January 19 th , 2038 , at 03:14:08 . </li></ul>
  19. 20. New quota counter // Estimates of nanite storage generation over time. var CP = [ [ 01/04/2007 08:00 -> 2835 Mb ], [ 12/10/2007 08:00 -> 2912 Mb ], [ 23/10/2007 07:00 -> 4321 Mb ], [ 04/01/2008 08:00 -> 6283 Mb ], [ 17/01/2038 08:00 -> 42 Gb ], [ 02/01/3456 07:00 -> Infinite... ] ]; 19/01/2038 03:14:08 02/01/ 3456 07:08:09 The new counter in human readable format: <ul><li>Still, something is wrong… </li></ul><ul><li>A better magic date is 01-02-3456 at 07:08:09 . </li></ul><ul><li>And the Y2K38 bug will occur on January 19 th , 2038 , at 03:14:08 . </li></ul><ul><li>Anybody wants to fill a bug report? </li></ul>
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×