Ted Neward writes about garbage collection, motivated by Jason Whittington's reference to my lamenting about GC problems:

You need to know how it works. [...] So knowing the details of your managed environment's underlying resource allocation/deallocation implementation can be crucial to getting decent performance out of your enterprise system, just as knowing when you had to take control of C++'s default memory allocation algorithms (by overloading new and delete) was crucial for the same reasons. 95% of us out there will never have to do it 95% of the time, granted, but when that situation arises, you have to be able to know this stuff. [The Mountain of Worthless Information]

I agree. Just as being able to read x86 assembly is extremely important for a Win32 developer although (s)he may never ever touch MASM (again), it's very important to familiarize yourself with the essential knowledge about the internals of any environment you're working with. It remains important to be able to at least assess whether a bug is your fault or someone else's fault.  Your fault or their fault -- in the end, it's your problem.

Updated: