Minimum distance of the linear code $\{0,1\}$ 
Let $H$ be a check matrix for a linear code $C$. Then the minimum distance
  of $C$ is $d \in \mathbb N$ such that there exists a set of $d$, but no set of $d-1$, linearly dependent columns in $H$.

1) Am I right to surmise from the above thorem that $C$ has minimum distance $1$ iff. $H$ contains a column of zeros?
2) Consider the linear code $\{0,1\}$ whose minimum distance is clearly $1$. Its check matrix $H$ is the $0$x$1$ zero matrix, so $H$ has $0$ linearly dependent columns. This contradicts the above theorem, doesn't it?
 A: Your observation in (1) looks correct. The empty set is never linearly dependent, and a set with one vector can only be linearly dependent if that vector is zero.
For (2), while a $0 \times 1$ matrix has zero rows, it does have one column. In this case, the one column is the zero vector (of the zero-dimensional vector space), and so your $H$ does have a zero column.
A: 1) is right, and here is the way to think about it. Suppose you have two codewords that are exactly the minimum distance apart, say $x$ and $y$. This means that there is a vector $e$ such that $x+e=y$ and $e$ has weight $d$. 
Since $e=y-x$, $e$ is in the code, and so multiplying it with the parity check results in the zero matrix. The $d$ entries witness that the corresponding $d$ columns are linearly dependent. The existence of a smaller nonzero weight codeword would contradict the definition of $d$ as the mininum distance, so every set of $d-1$ columns must be linearly independent. 
If the code has distance 1, it contains a codeword of weight 1. Of course, for this to have zero product with the parity check matrix, the corresponding column must be zero.
2) As you've found out already, there is no contradiction with 1), it's just that the $d-1$ statement breaks down since you can't talk about "a set of $-1$ LI vectors", and there is this 0 dimension degeneracy. 
At any rate, this concern is just academic since the usefulness of the generator matrix and parity check matrix disappear for linear codes $d=1$. For such a code you can instantly identify all codewords and dual codewords, and the code neither detects nor corrects errors.
