Unfortunately nothing is clearer than an applicationContext.xml, I dont see the reason why they have started another project. Spring AOP is a simplifed container-restricted version of AspectJ, why more refinement on AOP? they wanna encourage people to AOP? Well spring did so...Guice is faster on prototype scope, They have highlighted the interfaces behind the beans in the container, that's great!....but I dont see the AbstractPlatformTransactionManager of Spring in its code and all other support that spring provides, I don't see enough reasons to start another IOC container. I think we dont need more evolutions. We need revolution itself.