Quasiseparated if finitely covered by affines in appropriate way
I also wanted a topological proof, since it's nice to know what the proofs are in each language and knowing what the proof is when translated in another language (e.g. quasi-separatedness via diagonal morphisms) usually tells something a different way, which is not quite as enlightening. I cleaned up moji's proof (because I am not lazy ;)!)
A scheme $X$ is qcqs (short for quasi-compact and quasi-separated) if and only if there exists a finite open affine cover $\{U_1,\cdots,U_n\}$ such that each intersection $U_i \cap U_j$ admits a finite open affine cover $\{V_{ij1},\cdots,V_{ijk_{ij}}\}$ (where $k_{ij} \in \mathbb N$ depends on $i$ and $j$).
Proof : ($\Rightarrow$) Pick a finite open affine cover $\{U_1,\cdots,U_n\}$ of $X$ by quasi-compactness. Affine schemes are qcqs, so the intersections $U_i \cap U_j$ are quasi-compact and therefore admit a finite open affine cover $\{V_{ij1},\cdots,V_{ijk_{ij}}\}$.
($\Leftarrow$) Let $U \subseteq X$ be a quasi-compact open subset. We claim that for each $\alpha=1,\cdots,n$, $U \cap U_{\alpha}$ is quasi-compact. It suffices to deal with the case of $\alpha=1$. Because $U$ is a scheme, its topology admits a basis consisting of quasi-compact open neighborhoods (take a finite open affine cover and the basis of distinguished open subsets of each of those affines). Write $$ U = \bigcup_{j=1}^n U \cap U_j = \bigcup_{j=1}^n \bigcup_{\ell \in L_j} W_{j\ell} $$ where $W_{j\ell} \subseteq U \cap U_j$ is a quasi-compact open subset. Since $U$ is quasi-compact, choose finite subsets $M_1 \subseteq L_1, \cdots, M_n \subseteq L_n$ such that the above equality still holds. Intersecting this with $U_1$, we get $$ U \cap U_1 = \bigcup_{j=1}^n \bigcup_{\ell \in M_j} W_{j\ell} \cap U_1. $$ Pick $j > 1$ and $\ell \in M_j$, so that for any $1 \le k \le k_{1j}$, the open subsets $V_{1jk}, W_{j\ell} \subseteq U_j$ are quasi-compact. Because $U_j$ is quasi-separated, $V_{1jk} \cap W_{j\ell}$ is quasi-compact. This means that $$ U \cap U_1 = \bigcup_{j=1}^n \bigcup_{\ell \in M_j} W_{j\ell} \cap U_1 \overset{(!)}= \bigcup_{j=1}^n \bigcup_{\ell \in M_j} W_{j\ell} \cap U_1 \cap U_j = \bigcup_{j=1}^n \bigcup_{\ell \in M_j} \bigcup_{k=1}^{k_{1j}} W_{j\ell} \cap V_{1jk} $$ is quasi-compact. (The $(!)$ is because $W_{j\ell} \subseteq U_j$ for each $j$. This seemed to be the cause of many incorrect edits to my proof.)
With this lemma in hand, if $U, U' \subseteq X$ are quasi-compact, then for $i=1,\cdots,n$, we see that $U \cap U' \cap U_i = (U \cap U_i) \cap (U' \cap U_i)$ is quasi-compact by the quasi-separatedness of $U_i$ and the quasi-compactness of $U \cap U_i$ and $U' \cap U_i$, so $X$ is quasi-separated.
Hope that helps,
Hint: Starting from your open affine cover of $X$, construct an open affine cover of $X \times X$, and then show that the preimage of each member of that open affine cover is a union of finitely many affines.
Another hint, more directly relevant to Vakil's definition of quasi-separated: I am implicitly cheating somewhat, because I am still secretely thinking about quasi-separated as meaning that the diagonal map is quasi-compact. If I do that, then the exercise at hand translates into the following: show that if a morphism $f$ has the property that the target has an open affine cover, the preimage of each member of which is quasi-compact, then $f$ is quasi-compact (i.e. each quasi-compact in the target has quasi-compact preimage).
So you should certainly remind yourself how to prove this fact, because the tools used there will be the same tools you need in your present exercise. (Even though you may not be working explicitly with the formulation in terms of the diagonal morphism, the underlying argument will have to be essentially the same.)
E.g. first convince yourself that you only have to check that the intersection of any two open affines is quasi-compact.
Also, an important point in all these kinds of arguments: if $f: X \to Y$ with $X$ and $Y$ affine, say $X =$ Spec $B$ and $Y =$ Spec $A$, and $a \in A$, so that Spec $A_a$ is a distiguished open, then the inverse image of Spec $A_a$ is a distinguished open affine in $X$ (it is Spec $B_a$). This a fundamental tool: it is the one way that you have to construct arbitrarily small open affine neighbourhoods in $Y$ whose preimages in $X$ are again affine.
So you will want to use the idea of the preceding paragraph, but now "inverse image" will be replaced by "intersection". (When you take inverse images of product neighbourhoods along the diagonal map, you are computing intersections, so this replacement makes sense; but again, you won't have to think about the diagonal map explicitly if you dont' want to.)
That's probably enough of a rambling hint for now. If you have those ideas in mind and put everything you know together, you hopefully can find your way to a complete proof.
first we try to solve the easiest case :
suppose $X=U_1 \cup U_2$ and we know that $U_1$ and $U_2$ are both affine and their intersection is the union of finite affine open sets like $U_1 \cap U_2 = V_1 \cup V_2 \cup ... \cup V_n$ .
now suppose that specA is affine in X. i'm going to prove that specA $\cap$ U1 is the union of finite affine open sets.
for each point $p \in specA \cap U_1$ consider a distinguished open set inside $specA \cap U_1$ of specA. and for each $p \in specA-(specA \cap U_1)$ consider again a distinguished open set of specA inside $specA \cap U_2$. now all these distinguished open set provide a covering of specA and as the latter is quasicompact therefore we get a cover of specA by some $D(f_1) \cup ... \cup D(f_k)=specA$ where the $D(f_i)$'s are the distinguished open sets. now if $specA \cap U_1$ is covered by those distinguished open sets which were inside $specA \cap U_1$ then we'll be done. otherwise we have that some of the $D(f_i)$ like for example $D(f_1)$ is one of those distinguished which were in $specA \cap U_2$. well in this case consider the intersections $D(f_1) \cap V_j$ which is a subset of $(specA \cap U_2) \cap U_1$ and as $U_2$ is affine and therefore quasiseperated so $D(f_1) \cap V_j$ is the union of finite open affine set(which will be in $specA \cap U_1$ and also note that as $U_1 \cap U_2 = V_1 \cup V_2 \cup ... \cup V_n$ we get $\cup ($D(f_1) \cap V_j$) = D(f_1) \cap (U_2 \cap U_1) = D(f_1) \cap U_1$). Do the same now for every $D(f_i)$ that u find in $specA \cap U_2$ and at last u will get a finite affine open cover of $specA \cap U_1$.
now u can easily see that if $specB$ and $specA$ are affine open subsets of X then their intersection is a finite union of affine open sets( first intersect specA with U1 and U2 and apply whay we proved and do the same for the intersections of specB with U1 and U2 and use the fact that U1 and U2 are quasiseperated as they are affine and ...).
as I'm very lazy and i won't write it down, u can see yourself that we can easily do the same argument for the general case where X=$U_1 \cup ... \cup U_n$. just follow exactly the same path. first prove that specA $\cap U_i$ is a finite union of affine open sets and then do the same reasoning in the easiest case for proving that $specB$ and $specA$ are affine open subsets of X then their intersection is a finite union of affine open sets.