Developing Computational Chemistry Software I want to learn to develop novel methods in computational chemistry (e.g. Grimme's empirical dispersion, DFTB, new DFT functionals, etc.) What is the ideal way to learn this by oneself?

I have read books on the Hartree-Fock theory and I understand it to some degree. However, there seems to always be a large amount of details which are left unsaid and brushed under the carpet. I am looking for quite practical ressources which would teach me how to actually translate the theory into code. Is there a way to learn this other than just reading books until it sinks in?
How do I get into method development?

As was said in the comments, one would join a group that works in this field and learn from them. From up close, there is some derivation from previous results and some trial and error involved. And yes, a PhD-sized investment is typically required.

How do I get into method implementation?

It depends on how deep you wish to go. There are open-source projects to look at and contribute to. There are publicly available exercises on implementing HF and beyond. I would not advise to implement DFT from scratch because the numerical integration grid is both critical and difficult. Same is true for the integrals, use a library for them.

How do I learn to use Program X?

It is helpful to learn one program suite well and learn others later. The reason is that many concepts are similar between the programs. Learning one program comes down to locating good worked examples, reading the manual, attending a workshop if possible. One may for instance attempt to reproduce data from a DFT benchmark, since the supporting material usually has a detailed listing, possibly down to absolute energies.