This method is identical to the Gauss--Newton method where the Jacobian is estimated by finite differences and the Hessian by second order differences.
It does not require the programming of the derivatives but makes a lot of function computations. Its use has to be restricted to problems where the derivatives are really too difficult to write. It is slower and less precise than the two last algorithms.