Show that any Chain Complex of $k$-Vector Spaces is a direct Sum of Chain Complexes of following form: Show that any Chain Complex of $k$-Vector Spaces is a direct Sum of Chain Complexes of following form:
1) $... \to 0 \to 0 \to V \to V \to 0 \to 0 ...$ where the two non-zero spaces are in degrees $n$ and $n-1$
2) $... \to 0 \to 0 \to W \to 0 \to 0 \to ...$ wher the non-zero space is in degree $n$.
I am completely new to homological algebra and to be honest I am not fully sure what it even means for a chain complex to be a direct sum. I am assuming that it means that it is isomorphic to a chain complex where the vector spaces (or whatever object) are isomorphic to the equivalent the required direect sums of vector spaces, and this isomorphism commutes with the differentials in the required way. 
I am sorry however I did not even know how to go about attempting this problem, any help would be much appreciated!
 A: Let's see what happens just for a "short chain complex" $0 \to A \overset{f}{\to} B \overset{g}{\to} C \to 0$.
It would be a little easier if the complex were exact: by the Rank-Nullity Theorem, we would have $\dim B = \dim A + \dim C$, and $B \cong A \oplus C$, and we could write the exact sequence as the direct sum of
$$
  0 \to A \to A \to 0 \to 0
$$
and
$$
  0 \to 0 \to C \to C \to 0.
$$
But we don't have that. Oh well. Instead we can try to imitate this. Now first of all, $f$ is not necessarily injective. So $f(A)$ is not necessarily isomorphic to $A$. Instead, $f(A)$ is whatever it is, and $A \cong f(A) \oplus \ker(f)$. Similarly, $C \cong g(B) \oplus \operatorname{coker}(g)$ (the cokernel of $g$).
Finally, $B$ is not necessarily isomorphic to $A \oplus C$. All we know is that $f(A) \subseteq \ker(g)$. We have $B \cong \ker(g) \oplus B/\ker(g)$, which means $B \cong \ker(g) \oplus g(B)$. And since $f(A) \subseteq \ker(g)$, we have $\ker(g) \cong f(A) \oplus \ker(g)/f(A)$.
Now the terms in our original chain complex decompose as
$$
  0 \to \ker(f) \oplus f(A) \to f(A) \oplus \ker(g)/f(A) \oplus g(B) \to g(B) \oplus \operatorname{coker}(g) \to 0.
$$
And this lets us decompose the chain complex as the direct sum of
$$
\begin{gather}
  0 \to \ker(f) \to 0 \to 0 \to 0,\\
  0 \to f(A) \to f(A) \to 0 \to 0,\\
  0 \to 0 \to \ker(g)/f(A) \to 0 \to 0,\\
  0 \to 0 \to f(B) \to f(B) \to 0,\\
  0 \to 0 \to 0 \to \operatorname{coker}(g) \to 0.
\end{gather}
$$
You will have to figure out what happens for any chain complex, but I hope that that helps.
