As to the question of Oracle documenting its internal workings, I certainly wish more documentation was available. However, several thoughts spring to mind:
1. As was pointed out, this would allow other companies to incorporate some good ideas. You never know when a big-pockets competitor will spring into existence. 2. In sales situations this can be used against Oracle in at least two ways: - A competitor claiming to be just as good as Oracle because they use the same algorithm. - A competitior claiming to be better than Oracle because of an improved algorithm. 3. Someone utilizes the inner workings and then Oracle gets stuck supporting them. This has happened to Microsoft a lot. For example, Microsoft's NT operating system originally didn't support Windows/DOS compatibility (back in the day when Windows sat on top of DOS). Then Microsoft decided to implement a Windows emulator on NT. Then they ran several popular commercial programs and found there was a lot of reliance on the internals of DOS. So they then had to implement special code to say if the user is running Lotus 123, then implement specific behaviors.
That said, I believe several people have given classes on Oracle Internals. If I'm recalling correctly, I think Oracle Education has even taught these.