| This is exactly the reason I despise Spring with a deep and abiding passion. "Just add this dependency, and add these annotations to your class, and it will all Just Work." "But...what do those annotations actually do?" "Stop asking so many questions!" I mean, I know the answers are out there, it's open source after all. But so much of it seems deliberately designed to obfuscate the flow of execution and make reasoning about the code as difficult as possible. |
When I see people design systems where, when they break, the only way to diagnose the problem is to do a code review, (not read the logs, or fire up a debugger), I wonder how they got along in their education without understanding the importance of debuggers, or why they hate their fellow programmers so much.
Spring comes out of a book that tried to reject the arcane nature of J2EE. I wonder sometimes if Mr Johnson recognizes hay the Beast he created is just as bad as the one he slayed. And how well he sleeps at night.
It got so bad they made a mini version of Spring, and even that is very declarative, and nearly impossible to explore.