I am a bit confused about when I should use projective versus injective resolutions to calculate derived functors. Am I correct in thinking that for right exact functors, the left derived functor is defined using projective resolutions and for left exact functors, the right derived functor is defined using injective resolutions? Is this true regardless of whether the functors are covariant or contravariant? This is what Lang's algebra seems to imply. Is this the universal convention?
I am also a bit confused about the situation with Ext, which can apparently be computed using both injective and projective resolutions even though $Hom(\_ ,A)$ and $Hom(A, \_)$ are both left exact functors. When else are free to use any resolution?