The standard references for learning about generalized inverses (not just Moore-Penrose generalized inverses) are Generalized Inverses: Theory and Applications by Ben-Israel and Greville and Generalized Inverses of Linear Transformations by Campbell and Meyer.
One typically uses a QR decomposition (such as the $XY$ representation of projectors in "On the Numerical Analysis of Oblique Projectors", G. W. Stewart, SIMAX, 2011) or an SVD to calculate a pair of generalized inverses in practice, since the methods suggested in the textbooks above (normally some variant of LU decomposition) are, as Professor Neumaier points out, numerically unstable. In contrast, the QR- and SVD-based methods are far more stable.
Although not typically identified as such, generalized inverses play a role in any method identified as "Petrov-Galerkin" (or "Galerkin"). The orthogonality relation between the two relevant subspaces (these end up being the range and nullspace of a projector) is induced by a bilinear form; the two orthogonal subspaces determine a (nonunique) pair of generalized inverses. Such methods play a role in the numerical solution of partial differential equations, numerical sparse linear algebra (which you can see in the popular textbook Iterative Methods for Sparse Linear Systems by Yousef Saad, and model (order) reduction methods.
Ben-Israel and Greville discuss applications of generalized inverses such as:
- integral solutions of linear equations
- linear programmming
- least-squares solutions of inconsistent linear systems
- Tikohonov Regularization
- Difference equations
- and others...