My current project has a huge dependency on Windsor. Basically everything that goes on has to go through Windsor. This has made my life a lot simpler, but I just today noticed something interesting. Sometimes at the beginning of the application, we have defined the core services (logging, authorization authentication, etc) and then we forgot about them.
What do I mean by that?
Well, I mean that after the initial setup, we have continued to develop the application, but because of the way Windsor is structured, and because I have some defaults in the application (auto-configure controllers, for instance), it has literally been: Create new controller, expose dependencies in the constructor, move on to the real use case. Everything just falls into place without much thought, and it matches correctly.
I am very pleased with the way it turned out. :-)