title: Why does base64 start with A instead of 0?
body: <p>Most numbering systems start with zero, go through the base-10 digits, and then go to letters once the base-10 digits have been exhausted: </p>
  
  <blockquote>
  <pre><code>Binary:      0,1  
  Octal:       0,1,2,3,4,5,6,7  
  Decimal:     0,1,2,3,4,5,6,7,8,9   
  Hexidecimal: 0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F
  </code></pre>
  </blockquote>
  
  <p>Even the ascii order of characters has numbers come before letters. </p>
  
  <p>The Base64 encoding scheme does things differently:</p>
  
  <pre><code>    ┌──────┬──────────┬┬──────┬──────────┬┬──────┬──────────┬┬──────┬──────────┐
      │Value │ Encoding ││Value │ Encoding ││Value │ Encoding ││Value │ Encoding │
      ├──────┼──────────┼┼──────┼──────────┼┼──────┼──────────┼┼──────┼──────────┤
      │  0   │    A     ││ 17   │    R     ││ 34   │    i     ││ 51   │    z     │
      │  1   │    B     ││ 18   │    S     ││ 35   │    j     ││ 52   │    0     │
      │  2   │    C     ││ 19   │    T     ││ 36   │    k     ││ 53   │    1     │
      │  3   │    D     ││ 20   │    U     ││ 37   │    l     ││ 54   │    2     │
      │  4   │    E     ││ 21   │    V     ││ 38   │    m     ││ 55   │    3     │
      │  5   │    F     ││ 22   │    W     ││ 39   │    n     ││ 56   │    4     │
      │  6   │    G     ││ 23   │    X     ││ 40   │    o     ││ 57   │    5     │
      │  7   │    H     ││ 24   │    Y     ││ 41   │    p     ││ 58   │    6     │
      │  8   │    I     ││ 25   │    Z     ││ 42   │    q     ││ 59   │    7     │
      │  9   │    J     ││ 26   │    a     ││ 43   │    r     ││ 60   │    8     │
      │ 10   │    K     ││ 27   │    b     ││ 44   │    s     ││ 61   │    9     │
      │ 11   │    L     ││ 28   │    c     ││ 45   │    t     ││ 62   │    +     │
      │ 12   │    M     ││ 29   │    d     ││ 46   │    u     ││ 63   │    /     │
      │ 13   │    N     ││ 30   │    e     ││ 47   │    v     ││      │          │
      │ 14   │    O     ││ 31   │    f     ││ 48   │    w     ││(pad) │    =     │
      │ 15   │    P     ││ 32   │    g     ││ 49   │    x     ││      │          │
      │ 16   │    Q     ││ 33   │    h     ││ 50   │    y     ││      │          │
      └──────┴──────────┴┴──────┴──────────┴┴──────┴──────────┴┴──────┴──────────┘
  </code></pre>
  
  <p>Is there a reason why base64 chose to do letters before numbers? Wouldn't it have made more sense for the value <code>0</code> to be represented by the encoding <code>0</code>? </p>