T_hold and T_setup help me understand?
what I don't understand is that why t_skew will be &quot;harmful&quot; when
talking about T_hold?

Hold violation happens when the data launched by FF1 reaches FF2 &quot;too earlier&quot; than it is supposed to be.
Suppose a data was launched by FF1 on the clock edge at a time \$t\$. After a clock skew of say \$\Delta t\$, the same clock edge reached FF2 at \$t+\Delta t\$.
In this clock edge, FF2 has to capture the data launched by FF1 on the previous edge (ie., the clock edge just before \$t\$, not the one at \$t\$).  Just like any flip-flop, FF2 also has a Hold time \$t_{hold}\$. So what \$t_{hold}\$ says is that, for a data to be properly captured by FF2, the data has to remain valid for \$t_{hold}\$ time after the clock edge appeared at FF2 (assuming setup has already met). Now imagine, if the data launched by FF1 at \$t \$ has already 'traveled' through the combinational path and reached FF2 within this time window. This will now corrupt the &quot;previous&quot; data which is supposed to be the data captured by FF2 in this clock edge at \$t+\Delta t\$. FF2 is now said to be driven to metastability This is called Hold violation.
Intuitively, in the above scenario, the probability of Hold violation could have been reduced:

If combinational delay between FF1 and FF2 was higher, because the data launched by FF1 now arrives a bit late at FF2.
If clock skew \$\Delta t\$ was lower, because the clock edge appears a bit early at FF2.

The same idea can be analyzed mathematically if you write down the equation for satisfying Hold at FF2 -
$$t_{Clk-Q-FF1}+t_{combi}\ge t_{hold}+\Delta t$$
$$\implies (t_{Clk-Q-FF1}+t_{combi}-t_{hold})\ge \Delta t \tag 1$$
As you can see, for a constant value at the LHS, if the RHS increases, then the chances of violating this equality condition increases. Hence the conclusion - if the clock skew increases, it is 'bad' for hold timing.