I saw a conversation on IRC today that really surprised me. basically, it went like this: guy comes in, and says "I need to write a library for service acquisition, so I can get a service with something like getService(PersonService.class)." This person was aware of Spring and Guice, and was told that he was to create his own instead of using a third party library. This is nuts.