Things have been going very well for Aspect-Oriented Programming in the last year. There has been a continuing increase in interest and effective use across the board. With the recent AspectJ5 announcement, both IBM and BEA are sponsoring the same, leading open source implementation. And both Spring and JBoss continue to deliver valuable frameworks using AOP.
As AOP has gained use, the industry analysts have started noticing. The Gartner Group has tracked Aspect-Oriented Software Development as an emerging technology for the past two years, with positive assessments as they project it moving towards mainstream adoption.
Last month, Richard Monson-Haefal, a senior analyst at the Burton Group wrote a carefully researched in-depth analysis "Ghosts in the Machine: Aspect-Oriented Programming" that concluded
Aspect-oriented programming (AOP) provides significant advantages in
terms of modularization. However, AOP has not reached mainstream
adoption because it is difficult to learn, and historically, it lacked
decent tool support. Most damaging was its lack of visibility: AOP
code changed the behavior of an application, but its functionality
wasn't seen. It was as if there were ghosts in the machine. Although
AOP is still difficult to learn, tool support and visibility are no
longer a problem. Integrated development environments (IDEs) have
advanced to the point where an organization can now safely use, and
benefit from, the powerful modularization capabilities offered by AOP.
Shortly thereafter, Carl Zetie of Forrester wrote a 5 page report "AOP Considered Harmful" that is quite negative. I have heard that this cited only a single workshop paper from graduate students. If this is true, it is surprising to me that an analyst would write an extremely negative assessment of something without seeking input from the leading proponents (or opponents!), and understanding the intended uses. It is interesting to speculate if there are other motives involved, e.g., it appears that the anti-AOP camp inside Sun are in control and, of course, being contrarian can be useful as an analyst.
Regardless, this is just the most visible example of that the AOP backlash has arrived. At this stage, I find most of the opponents of AOP are those who dislike it on first encounter and don't seek to understand it well, not those who tried and found it lacking. In a way, that's the best news possible. A backlash is inevitable. But negative reactions primarly from those who aren't experienced is far better. It suggests to me that the message of go carefully and adopt incrementally has worked. In addition, AOP advocates tend to be realistic in our assessment, rather than offering a silver bullet. This has resulted in far less disillusionment from real users. I'd suggest that this is one of the big benefits of open source rather than commerically-led technologies. It has also given AOP more time to mature before the backlash began.