The proof of the Schwarz lemma is surprisingly easy, once you strip away all the obfuscation to which complex analysis seems prone. Using that writeup's notation, we proceed to do the only thing that can possibly work! Since we wish to prove that f(z)=wz for some types of f, we may as well define g(z)=f(z)/z.
Now, g(z) is a holomorphic function on the unit disk. The only thing that can possibly go wrong is division by zero when z=0, but we demanded that f(0)=0 for precisely that reason. So if we write out the power series for f, we see that
f(z) = a1z + a2z2 + ...
g(z) = a1 + a2z + ...
is well defined on the unit disk.
Now, due to the extremal principle for holomorphic functions, g must attain any maxima and minima on the boundary of any domain. Take a disk of radius 1-e. Then the maximal value of |g(z)| on the disk is attained at some boundary point |z0|=1-e. So for all |z| ≤ 1-e,
|g(z)| ≤ |g(z0)| = |f(z0)| / (1-e) < 1/(1-e).
Taking the supremum over all 0<e<1, we see that |g(z)| ≤ 1, or that |f(z)| ≤ |z|, as required. Furthermore, |f'(0)| = |a1| = |g(0)| <= 1, which proves the first part of the lemma.
The second part follows immediately. Any equality means that we have |g(z)|=1 for some z inside the unit disk. Using the extremal principle again, we see that g attains its maximal size (which is 1, as we've seen) inside the unit disk. It is therefore a constant function, and f(z) = g(0)z.