Could you describe the effects for varying different parameters of a canny edge detector?

Last couple of questions touched upon Canny edge detector

The basic outline of the algorithm is as follows:

a. Apply Gaussian Convolution. (Choice of $\sigma$ to be made here)
b. Apply 2D derivative
c. Tracking through the ridges of this edges and thresholding (set pixels to zero which are not on the edge) with Hysteresis Lower and Higher T0 and T1 (Choice of $T0$ and $T1$ to be made here).

While, it is claimed that Canny is optimal; when getting practical results matters, tweaking factors as listed above $\sigma, T0,$ and $T1$ does make a lot of difference.

So how does one select these (tweaking) parameters practically? Even if, there is no definite approach or value, what is the general technique to know this?