A proof of the Riesz representation theorem I'm having trouble filling the steps in this guided proof of Riesz's representation theorem. (I already have a proof I can understand, but I'd like to understand this one too.)
Let $H$ be a Hilbert space, and $\varphi : H \to \mathbb{C}$ a bounded linear functional. If $\varphi = 0$ then we are done; otherwise, by scaling, we may assume without loss of generality that $\| \varphi \| = 1$. So, for each $n$, there is a unit vector $h_n$ in $H$ such that $| \varphi(h_n) | > 1 - \frac{1}{n}$. By multiplying each one by an appropriate complex number of unit modulus, we may assume $\varphi(h_n) \in \mathbb{R}$ and $\varphi(h_n) > 1 - \frac{1}{n}$. 
Now I run into a problem — I can see that everything follows from the first step, but the first step is eluding me at the moment.


*

*$h_n \longrightarrow h$ for some $h$ in $H$. Why? If $H$ is finite-dimensional then certainly there is a convergent subsequence, but I don't see how we can assert the existence of such an $h$ without knowing more about the relative distances of the $h_n$.

*$h$ is orthogonal to the kernel of $\varphi$. I think the idea here is to show that $\| h - u \|$ is minimised over $u \in \ker \varphi$ when $u = 0$, by exploiting the fact that $\| h - u \| \ge | \varphi(h - u) | = | \varphi(h) | = 1$.

*$\ker \varphi \oplus \operatorname{span} \{ h \} = H$, by e.g. rank–nullity or orthogonal decomposition.

*Hence $\varphi(x) = \langle x, h \rangle$ for all $x \in H$, by decomposing $x$ using the above decomposition of $H$ and linearity.
 A: Here's another proof of the Riesz representation theorem. This isn't what you asked for, but the proof you give seems terribly intricate to me and not as intuitive as one would like.
We start with some continuous linear functional $\phi \in H^*$. We want to show that $\phi = \phi_y$ for some $y \in H$, where $\phi_y$ is defined by $\phi_y (x) = \langle x,y\rangle $. It is very easy to see that such a $y$ is determined uniquely, so the big question is what is the $y$ that corresponds to $\phi$? If we already knew that $\phi$ was of the above form, could we extract the vector $y$ from it without knowing it a-priori? Well, $y$ will satisfy $\phi(y) \ge 0$ (since this should give the norm of $y$ squared), but this doesn't help us much, as there are definitely many vectors in $H$ for which $\phi$ will give non-negative real values (unless $\phi = 0$, which is a trivial case). So a different approach is needed.
We may try to get our $y$ as the result of evaluating $\phi$ at some point in $H$. But $\phi$ spits out scalars, not vectors! So we can't do that either. Nevertheless, we shouldn't dismiss this approach entirely. Instead, let us think: is there some way we can specify a vector in $H$ by using a scalar, or several scalars? In finite dimension, the answer is an obvious yes: we choose some basis to the space and then every vector is specified by a unique tuple of scalars (its coordinates in the basis). But Hilbert spaces have a concept of basis too - an orthonormal basis! If we fix some orthonormal basis $e_1,e_2,\dots$ of $H$ (let's assume $H$ to be separable, just for the sake of nice notation) then every vector $x$ in $H$ is specified by the sequence of scalars $\langle x,e_n\rangle $, for $x=\sum_{n=1}^{\infty} \langle x,e_n\rangle e_n$. So if we find the scalars $\langle y,e_n\rangle $ for all $n \in \mathbb{N}$, we also find $y$. But given the functional $\phi_y$ these scalars can be computed by its very definition, just by evaluating it at the basis elements (and conjugating).
Specifically, if we knew that $\phi = \phi_y$ for a specific vector $y \in H$, then we would have $\phi (e_n) = \phi_y (e_n) = \langle e_n,y\rangle =\overline{\langle y,e_n\rangle }$ for all $n \ge 1$, or equivalently $\langle y,e_n\rangle  = \overline{\phi(e_n)}$ for all $n$. But this expresses the scalars $\langle y,e_n\rangle $ in a way which depends only on $\phi$, so by uniqueness, the coordinates of the $y$ which we are looking for are simply $\overline{\phi(e_n)}$! Thus the required $y$ is the vector $\sum_{n=1}^{\infty} \overline{\phi(e_n)}e_n$. It only remains to show that this vector indeed satisfies $\phi = \phi_y$. Since $e_1,e_2,\dots$ is an orthonormal basis and $\phi$ is a continuous linear functional, it suffices to show that both functionals give the same value on the basis elements. And indeed, for every $m$, $\phi_y (e_m) = \langle e_m,y\rangle  = \sum_{n=1}^{\infty} \langle e_m,\overline{\phi(e_n)}e_n\rangle  = \sum_{n=1}^{\infty} \phi(e_n)\langle e_m,e_n\rangle  = \phi(e_m)$ by orthogonality.
A: Note that for $n,m \geq N$ we have $\varphi(h_n + h_m) \gt 2 (1-\frac{1}{N})$ (assuming that $h_n$ is modified by multiplying with an appropriate scalar as you indicated). By the parallelogram law we then have
$$4 = 2\|h_n\|^2 + 2\|h_m\|^2 = \|h_n + h_m\|^2 + \|h_n - h_m\|^2 \geq (\varphi(h_n + h_m))^2 + \|h_n - h_m\|^2$$
Thus, $\|h_n - h_m\|^2 \lt 4 - 4 (1-\frac{1}{N})^2$ and we see that $(h_n)$ is Cauchy.

Added. I agree with Mark's assessment that the outlined proof is a bit convoluted (it needs some useful techniques in Hilbert space geometry, though).
The full version of the Riesz representation theorem can be proved in a few lines:

The map $\Phi: H \to H^{\ast}$ given by $y \mapsto \langle \cdot, y\rangle$ is a conjugate linear isometric isomorphism.

By Cauchy-Schwarz $\|\Phi(y)\| \leq \|y\|$. Since $\|y\|^2 = \langle y,y \rangle = [\Phi(y)](y)$ we have equality, hence $\Phi$ is isometric. Thus, the only point that deserves elaboration is the fact that $\Phi$ is onto. If $\varphi \neq 0$, choose $y' \perp \ker{\varphi}$ with $\varphi(y') = 1$ (this $y'$ exists and is unique because of the orthogonal decomposition $H = \mathbb{C} \oplus \ker{\varphi}$, as $\varphi \neq 0$). Clearly $x - \varphi(x)y' \in \ker{\varphi}$ and thus the computation
$\langle x, y' \rangle = \langle x - \varphi(x)y',y'\rangle + \langle \varphi(x) y', y'\rangle = \varphi(x) \|y'\|^2$ shows that $y = \frac{y'}{\|y'\|^2}$ is the unique $y \in H$ such that $\varphi = \Phi(y)$.
