Computing the first simplical homology group of the torus $H_1(T)$ Let $K$ be the following triangulation of the torus.

This triangulation of $T$ has $18$ $2$-simplexes; $27$ $1$-simplexes and $9$ vertices.
Now using singular homology, the fact that singular homology and simplical homology coincide and the Hurewicz theorem I can conclude that $H_1(T) \cong \mathbb{Z} \times \mathbb{Z}$
However if I try and compute $H_1(T)$ through computing $H_1(K)$ by simplical homology, I get the following calculation.
First we have that $\ker(\partial_1) = \{0\}$, since $\partial_1 : C_1(K) \to C_0(K)$ is defined by $$\partial_1( \langle p_0, p_1 \rangle) = \langle p_1 \rangle - \langle p_0 \rangle$$
And $\partial_1( \langle p_0, p_1 \rangle)= 0 \iff \langle p_1 \rangle = \langle p_0 \rangle \iff p_1 = p_0 \iff \langle p_0, p_1 \rangle = 0$. But then we must have $H_1(K) = \operatorname{ker}(\partial_1) / \operatorname{Im}(\partial_2) = 0 \implies H_1(T) = 0$ a contradiction.
What error have I made?
 A: That's a pretty big simplicial complex! The standard thing to do - write matrices and try to find the kernel and image - is going to take way too long to be a good use of your time (or mine!) This is one good reason to prefer the language of cellular homology (which requires one knows how to calculate degree effectively), or the language of $\Delta$-complexes, which have uniformly fewer simplices - IIRC the $\Delta$-complex decomposition of the torus requires only two 2-simplices. 
Here is a method to progressively simplify this calculation when doing it in practice (other than telling you to find a better method!) It's the matrix discussion in disguise, but I think it's much easier to look at a picture instead of row-reducing.
1) Observe that each diagonal gives rise to two relations: one says that the diagonal is homologous to the horizontal and vertical lines bounding its upper-left, and another says the same for the lower-right. (I am going to ignore signs.) This means that, up to adding boundaries, we may write any term in $C_1$ as a sum of horizontal and vertical lines only. 
2) By getting rid of the diagonals, we used up "half" of our 18 relations. What remains now are the following 8 relations, given by adding the relations for each diagonal: if $e_1, \cdots, e_4$ are the edges around one of the squares above, oriented clockwise, then $e_1 + e_2 + e_3 + e_4$ is a boundary. This tells us that if you have one of the edges of a square, up to a boundary you may replace it by minus the sum of the other three.
Use this now to replace any chain by one which has no terms on the central square; this uses up an additional 4 relations (those corresponding to the squares that are on neither of the diagonals, aka the 4 adjacent to the central square). Finally, use this relation on the corner-squares to demand that every chain (up to adding a boundary, as usual) lies on either the boundary, or one of the four vertical "prongs" sticking out. The only remaining relation relates to the center circle, 
What we have identified, bit-by-bit, is $C_1(T^2)/\partial C_2(T^2)$, by quotienting the former free abelian group by each relation. We see that it's freely generated by $10$ edges (which makes sense if you happen to know ahead of time the calculation that $H_2(T^2) = \Bbb Z$; if not, we have just proven it by seeing that $17$ of those relations survive and one dies!) Now the map $\partial: C_1(T^2)/\partial C_2(T^2) \to C_0(T^2)$ is transparent: 
Because the only edges adjacent to the 4 interior vertices are the 4 prongs, if $[x] \in C_1(T^2)/\partial C_2(T^2)$ has $\partial [x] = 0$, then necessarily the weights on those 4 prongs are zero. Furthermore, you see then that the weights of successive horizontal (or vertical) edges in $[x]$ must be equal. Altogether, you find that $$H_1(T^2) = \text{ker}(\partial) \subset C_1(T^2)/\partial C_2(T^2) \cong \Bbb Z^2,$$ generated by the full horizontal loop and the full vertical loop.
$H_0$ is even easier, so I leave that to you.
