I NEVER use the HAL, not ever.
IMO You will never learn about the peripherals and chip in depth using the HAL
Well, yes, or no. Unless you're doing very simple stuff, it's often required to learn about the underlying peripherals in order to understand the parameters that you pass to HAL functions.
But for those not "curious", it may (?) push them to just use basic features of the MCU instead of really taking advantage of it. (Then again, if we take the extreme of the Arduino framework, you get the same problem, but even much worse.)
As we said in other threads, the main benefit IMO, in a longer term than just when you discover the chips, is for portability across MCUs of the same vendor. And, admittedly, it does help with that.
I might use the HAL source though if I cant get something working and want to see ' how they did it'
Yes, that can be used like that.
And yes, I don't like using third party-code either, unless it's very good. It has very little chance of matching my requirements in terms of code style, robustness, readability, testability, and whatnot.