Why the only binary MDS codes are trivial ones? Why the only binary MDS codes are trivial ones?


I have been thinking how to draw a contradiction by assuming the MDS code is not trivial. 

Thank you very much!
This is Proposition 9.2 on p. 212 of Elements of Algebraic Coding Theory by L. R. Vermani.


  Definiton 9.2
  
  We have shown that linear $[n, 1, n]$, $[n, n- 1, 2]$ and $[n, n, 1]$ codes exist
  over any finite field $F$ and these are MDS codes. These are called trivial MDS
  codes.
  
  Proposition 9.2
  
  The only binary MDS codes are the trivial codes.
  
  Proof
  
  Let $C$ be a binary $[n, k, d]$ MDS code. If $k = 1$, then $C$ is a trivial MDS code and
  so we may suppose that $k &gt; 1$. Let $G$ be a generator matrix of $C$ with the first
  $k$ columns of $G$ forming the identity matrix. If $n &gt; k + 1$, then $C$ has a column,
  say $j$th, of weight less than $k$ and greater than $1$. Suppose that the $i$th entry
  of this column is $0$. Then the first $k$ columns of $G$ except the $i$th together
  with the $j$th column are linearly dependent. This proves that $C$ cannot be an
  MDS code. Hence
  
  $$k \le n \le k + 1$$
  
  and $C$ is a trivial MDS code.
The only binary codes that are MDS are the trivial (n, n, 1) universe codes, the (n, n − 1, 2) single-parity-check (SPC) codes, and the (n, 1, n) repetition codes.
http://web.stanford.edu/class/ee392d/Chap8.pdf