Discussions

News: AOP Alliance: Bring together different AOP frameworks

  1. There was a lot of talk about AOP at the TSS Symposium (mirroring the community at large). Bob Lee and Rod Johnson both talked about the AOP alliance that has been formed, with the goal of standardizing some AOP interfaces.

    In theory, this could let you write to the alliances "standard" and use multiple frameworks / have portable aspects.

    The AOP alliance also merged with the AOPI effort to bring everyone together.

    Many people asked if this should be/become a JSR, and many people actually would prefer that these guys flush it out first, and maybe a JSR effort would come along a lot later.

    http://sourceforge.net/projects/aopalliance

    Currently, all the action is happening in the discussion list on soureforge. They are working out common interfaces and abstractions about AOP on the list, and have not published a working document or spec as of yet. The link to the list archive is here:

    http://sourceforge.net/mailarchive/forum.php?forum_id=33808.

    Developers taking the lead:

    Andrei Popovici
    Bob Lee
    Rod Johnson
    Renaud Pawlak
    Jon Tirsén

    Threaded Messages (66)

  2. This is good news for the community. All the different frameworks out there can make your head spin.

    It will be great when the technology is there to enable the reuse of prepackaged aspects. Enabling the creation of ones own customized container to fit a paricular application's needs.

    Portable aspects, great idea.

    Matt
  3. Renaud Pawlak deserves a lot of credit for leading the interface effort and carrying out all the discussions, first with aopi and now with the Alliance. I like the current state of the Alliance right now and I am confident that even if this initial effort ends up stalling, what we did will eventually be picked up by someone or something else (a JSR maybe).

    As for a possible JSR, the general sentiment shared by pretty much everyone on the Alliance is that it's way too early to hand out this initiative to a standard body. Let's focus on defining the foundation and see if all the AOP frameworks available as of today can implement this API.

    One last note of interest: as far as I can tell, the authors of pretty much all the AOP frameworks available today are on the Alliance (except for Gregor, which is unfortunate).

    --
    Cedric
    http://beust.com/weblog
  4. "...as far as I can tell, the authors of pretty much all the AOP frameworks available today are on the Alliance (except for Gregor, which is unfortunate). "

    Cedric, I have not seen Jonas Boner from aspectwerkz. Is he? It would also be fun to add Bill Burke from JBoss "AOP" and then add Rickard on top - I'm sure they'd find something to talk about ;)
  5. Cedric, I have not seen Jonas Boner from aspectwerkz. Is he? It would also be fun to add Bill Burke from JBoss "AOP" and then add Rickard on top - I'm sure they'd find something to talk about ;)

    Jonas and Rickard were on aopi and as far as I can tell, they moved to the Alliance with the rest of us, but only Renaud can tell for sure (Rickard posted not long ago).

    As for Bill, Marc told me that their absence of their alliance was on purpose. I hope they will change their mind.

    --
    Cedric
    http://beust.com/weblog
  6. Cedric: Jonas and Rickard were on aopi and as far as I can tell, they moved to the Alliance with the rest of us, but only Renaud can tell for sure (Rickard posted not long ago).
     
    As for Bill, Marc told me that their absence of their alliance was on purpose. I hope they will change their mind.


    This is true. Jonas and Rickard are in the Alliance.
    I had also some talk with Marc. I really like the work they have done (really fast) to implement AOP in JBoss!! However, as I told Marc, AOP is a really transversal technology and it would be cool to have standards that fit other platforms beyond JBoss. There are already a lot of techniques to implement efficient AOP (e.g. we can implement very efficient weavers using code inlining techniques instead of an interception mechanism). We really hope that the Alliance will help projects to use these implementations in different contexts and environments. And I really wish that JBoss guys will change their minds!

    I would like to add that the Alliance is very young and fragile for the moment. So, I am glad to see that people are interested in it. This cannot be bad :-)

    Renaud.
  7. I think this is a great idea. I'm a newbie to AOP but I spent a week studying AspectJ and JBoss AOP during my vacation. I hope JBoss eventually gets on board and implements the interfaces when they're finalized, and if they want to add more on top, that's great too.

    We're JBoss customers and for me, they really pushed AOP into the minds of the masses, I know Cedric et al. have been into it same time/before. But JBG has really pushed it, and Sun is making EJB easier with version 3.0, and a lot of the pressure has come from them. Now we'll see how JBoss can react to market pressure from the other side.

    Yay community! <smirk>
    Steve
  8. <steve>
    ...Sun is making EJB easier with version 3.0, and a lot of the pressure has come from JBoss Group
    </steve>
    Some of the pressure, certainly, but a lot of other people have been complaining about EJB complexity... I seem to remember writing a book last year that had quite a bit to say about it :-)

    I think what JBoss 4 is doing with AOP is really interesting. I think it's sad that they don't seem to be interested in standardization. I think it will hurt them if they stick to this, as I doubt developers will want their AOP code to be tied into JBoss. Interestingly, I think BEA are much more open to AOP standardization.

    Regards,
    Rod
  9. Sorry, I didn't read your book. :) My point wasn't to point out individual people who may or may not have been way ahead of JBoss. But you know that. :) I WAS trying to give props to everyone in my "Cedric, et al." but I can't list everyone who is smarter than me, cuz that'd be approximately 6 billion people.
    Steve
  10. Great to see that the community takes charge and doesn't wait until the sunnyboys take over with yet another Java Fortune 500 Process spec locking us into questionable results.

    Creating new community standard initiatives seems the latest fashion trend and for full disclosure I out myself as a fashing victim by organizing the XUL Alliance.

    Let's learn from each other. Instead of repeating history over and over again. I suggest studying how and why community standard initiatives succeed or fail.

    Here's my line-up from the real-world:

    * XUL Alliance @ http://xul.sourceforge.net

    * RSS/Pie/Echo/Yet-To-Be-Renamed @ http://intertwingly.net/wiki/pie/RoadMap

      - Gerald

    PS:Tim Bray (father of the XML spec) wrote an insightful piece about standardization called "I Like Pie".
  11. I think any announcement or excitment about the alliance is monstrously premature. Right now, there's a bunch of interfaces that are still very much in flux, and a discussion board. Without some in-depth docs, fully working code with at least three AOP implementations, and some good examples, it's not much good to any outsiders.

    Until the alliance produces something working, along with readable documentation to go with it, it's nothing but alot of talk and some interfaces :-)

        -Mike
  12. I think any announcement or excitment about the alliance is monstrously premature. Right now, there's a bunch of interfaces that are still very much in flux, and a discussion board. Without some in-depth docs, fully working code with at least three AOP implementations, and some good examples, it's not much good to any outsiders.

    >

    Until the alliance produces something working, along with readable documentation to go with it, it's nothing but alot of talk and some interfaces :-)

    This is *exactly* the goal: producing interfaces. There is no point in writing some sort of reference implementation. The idea right now is just to bring some standardization across all the AOP frameworks currently available.

    All of them have different features, strengths and weaknesses, and I want this to continue, because diversity is what gives you choice. But it doesn't mean there cannot be a minimalistic API that all frameworks implement, and this is the goal of the Alliance.

    --
    Cedric
    http://beust.com/weblog
  13. I think any announcement or excitment about the alliance is monstrously

    > premature. Until the alliance produces something working, along with readable
    > documentation to go with it, it's nothing but alot of talk and some interfaces :-)


    There are two kinds of announcements in the open source world. There's announcements meant for developers and there's announcements meant for end-users. This one is meant for developers (i.e. developers of AOP frameworks), not end-users (i.e. software developers using these frameworks), so it's not premature.
  14. The right path[ Go to top ]

    I am excited as smart people who are working with AOP+Java are actually coming together to work on things. They each have their own ideas, shown by the fact that they worked on their own frameworks (and didn't just use another one), but they can respect eachother, and work together to come up with some standard interfaces.

    It is normally quite hard to get people to work together like this, so I applaud their work, and look forward to see what comes of it.

    Dion
  15. <mike>
    I think any announcement or excitment about the alliance is monstrously premature. Right now, there's a bunch of interfaces that are still very much in flux, and a discussion board. Without some in-depth docs, fully working code with at least three AOP implementations, and some good examples, it's not much good to any outsiders.
    </mike>
    I'm sorry you're not excited. So you think it's better to do the work in secret? Don't you think there's just a slight chance that by letting people know about the initiative they might subscribe to the list and contribute something helpful? A lot of developers are interested in AOP, and I think it's important to try to get away from formulating "standards" and handing them down from on high.

    Btw, Dion made the announcement as an outsider, not on behalf of the AOP Alliance.

    <mike>
    Until the alliance produces something working, along with readable documentation to go with it, it's nothing but alot of talk and some interfaces :-)
    </mike>
    Well I happen to think interfaces are pretty good as a form of documentation at least in the first instance. Renaud has already begun to put together some excellent Javadoc, with examples, and we will produce concise, readable, documentation. No 600 page specs, however.

    Regards,
    Rod
  16. Agree,
    This kind of API does not need something more than interfaces and generated documentation.
    I think it is a very good initiative to define the *open* standard and the way is right.
  17. \Johnson\
    I'm sorry you're not excited. So you think it's better to do the work in secret? Don't you think there's just a slight chance that by letting people know about the initiative they might subscribe to the list and contribute something helpful? A lot of developers are interested in AOP, and I think it's important to try to get away from formulating "standards" and handing them down from on high.
    \Johnson\

    "Secret" is such a value laden word, and wasn't where I was going. Rather, actively encouraging people to get in early is, to me, rather like shooting yourself in the foot. People are going to see yet another sourceforge site with nothing that works, just some interfaces they can grab from CVS and a discussion board. I suspect a number of people will look at it and dismiss the effort.

     \Johnson\
    Well I happen to think interfaces are pretty good as a form of documentation at least in the first instance. Renaud has already begun to put together some excellent Javadoc, with examples, and we will produce concise, readable, documentation. No 600 page specs, however.
    \Johnson\

    Javadoc isn't documentation. It's a reference that backs up documentation.

    I'm no fan of 600 page specifications myself, and nor is there any need for them. But by going, ah, minimalist in this area, frankly your effort seems more than a little half-cocked. I'm still constantly surprised how often people sell their own work short by not documenting it adequately. There's alot of stuff out there that seems interesting, but at the same time I don't have the fortitude to look at a 12-line readme that instructs me to pore over javadoc to figure out what the heck's going on.

    The things that get me early into Weblogic and log4j (one commercial, one not) was that I could get alot of real documentation not on just how to use 'em, but what they're about, their philosophy and context. If you're trying to do something like make AOP portable across implementations, I'd think you'd want a unifying document that outlines what you're trying to do, backed up with some more explicit information (not javadoc!) on how it works and how to use it.

    Obvious, it's your business to arrange this as you and your collaborators would like. But I'm rather surprised that someone of your stature in the community is advocating in doing it in such a loosey goosey manner. A discussion board and some interfaces w/ javadoc isn't an alliance.

    Write some docs, put together working examples and some code that works across multiple AOP implementations, and people will likely beat a path to your door and clamor for the details in the discussion group and CVS tree. But only providing the tree and the discussions is, IMHO, shooting yourself in the foot.

         -Mike
  18. Mike Are You A Sunny Boy?[ Go to top ]

    <mike>
    "Secret" is such a value laden word, and wasn't where I was going. Rather, actively encouraging people to get in early is, to me, rather like shooting yourself in the foot. People are going to see yet another sourceforge site with nothing that works, just some interfaces they can grab from CVS and a discussion board. I suspect a number of people will look at it and dismiss the effort.
    </mike>

    Mike are you a bitter Sun undercover agent spreading some FUD?

    You might wonna read up on Dave Winer's RFC titled "What is Stop Energy?" @ http://www.userland.com/whatIsStopEnergy

    Let's cheer on the AOP alliance and don't spoil the party before it got started with your endless whinning. Get over it there's life beyond the Sun universe.

    - Gerald
  19. Mike Are You A Sunny Boy?[ Go to top ]

    \Gerald Bauer\
    Mike are you a bitter Sun undercover agent spreading some FUD?
    \Gerald Bauer\

    According to TSS posters, I seem to simultaneously work for Microsoft, Sun, BEA, IBM, and probably someone is trying to connect me to CIA somewhere. I wish I did work for all those companies - I'd be sitting on a beach earning 20%, not posting on TSS.

    \Gerald Bauer\
    You might wonna read up on Dave Winer's RFC titled "What is Stop Energy?" @ http://www.userland.com/whatIsStopEnergy
    \Gerald Bauer\

    An excellent argument against prematurely opening something up to wider exposure.

    \Gerald Bauer\
     Let's cheer on the AOP alliance and don't spoil the party before it got started with your endless whinning. Get over it there's life beyond the Sun universe.
    \Gerald Bauer\

    I'm curious - have you actually gone and checked out the interfaces and mailing list? If not, then you don't have a leg to stand on.

    If so - please tell me in detail how the AOP Alliance is going to achieve interoperability between AOP implementations. Specifically, based on the interfaces and discussion list.

    Personally, I rather lost track of how the alliance is going to achieve interoperability in the discussions over how to arrange the source code in CVS, and back-and-forth discussions about basic terminology to use on the project. I frankly haven't the slightest clue from the materials presented what exactly their stuff is going to do, how interoperable interoperable really is in their context, or even whether they're going to have a layer put on top of other AOP implementations, or are writing a spec to be used by AOP implementations.

    Anyway - since you're such a big fan of the AOP alliance, please tell me how you divined what they're doing from the sourceforge site. I _do_ assume that you became a fan because you've read the site in detail and approve, right?

         -Mike
  20. Mike Are You A Sunny Boy?[ Go to top ]

    I'd be sitting on a beach earning 20%, not posting on TSS.

    According to the Top Posters of the Week (you are #2), you must be a really poor guy, not earning anything, living in a carton.

    -- Andreas
  21. Mike Are You A Sunny Boy?[ Go to top ]

    \Andres Mueller\
    According to the Top Posters of the Week (you are #2), you must be a really poor guy, not earning anything, living in a carton.
    \Andres Mueller\

    Actually, I've found it doesn't take very many posts to make it on that list.

        -Mike
  22. Yippee-ki-yay, mother....[ Go to top ]

    <Mike Spille>
    I wish I did work for all those companies - I'd be sitting on a beach earning 20%, not posting on TSS.
    </Mike Spille>

    Always good to see a reference to Die Hard.

    Ryan
  23. Mike writes:
    Write some docs, put together working examples and some code that works across multiple AOP implementations, and people will likely beat a path to your door and clamor for the details in the discussion group and CVS tree. But only providing the tree and the discussions is, IMHO, shooting yourself in the foot.


    This is exactly what we are doing, and the first step -- as you say it yourself -- is to provide the tree and the API's. The rest will come in time.

    I would argue that providing portable working examples is premature. Isn't this exactly what you want to avoid? :-)

    --
    Cedric
    http://beust.com/weblog
  24. \Cedric Beust\
    This is exactly what we are doing, and the first step -- as you say it yourself -- is to provide the tree and the API's. The rest will come in time.

    I would argue that providing portable working examples is premature. Isn't this exactly what you want to avoid? :-)
    \Cedric Beust\

    I would argue that what you have right now is inscruitable to anyone trying to understand what it's all about. That in and of itself isn't a big deal - you do have to start somewhere. But you've opened up the pre-pre-pre-sub-alpha 0.001 organization stage of your project up and invited people to contribute, and there isn't a sufficient base for people to really contribute to. And the reaction of many people is going to be "Oh, it's just another one of _those_ source forge sites", and the end result is you lose credibility.

    You may gain that credibility back, but you've kinda set yourself up to make it as hard as possible. People don't want to read developer disucussion lists about implementation details and setting up your source tree. They're going to lose interest in interfaces that are still in flux. They're going to be confused as hell without some simple documents to set the stage and walk them through what the goals are and how the thing works in detail. The end result is that it looks very much like an amateur effort because you opened the doors way too soon. You and yours may be reacting to some of the ridiculous 20-pounder standards that have come down the pike over the years, but I'd say you're over-reacting and coming off as some kids playing on source forge, not a professional team trying to create an industry alliance and de-facto standard. I don't want to sound abusive about this, because that's really not my intent. You're just simultaneously pumping up press for this, and at the same time all you have to show is ultra-early organizational setup pains. Why you'd do that to yourselves is beyond me. On a personal level, my expectations of the end results have gone way down.

        -Mike
  25. <mike>
    And the reaction of many people is going to be "Oh, it's just another one of _those_ source forge sites", and the end result is you lose credibility.
    </mike>
    Why don't you let all those people make up their own minds? Or do you have such a special insight into the reactions of the developer community that you can confidently predict how lots of people will react right now?

    Btw, no one from AOP Alliance "pumped the press." I spoke about AOP Alliance as a work in progress at TSS Symposium. Dion's post came as a surprise to me (he and I didn't discuss AOP Alliance in Boston). Judging from the reactions of everyone but you on this thread, TSS readers think Dion was right to post.

    Rod
  26. \Rod Johnson\
    Why don't you let all those people make up their own minds? Or do you have such a special insight into the reactions of the developer community that you can confidently predict how lots of people will react right now?
    \Rod Johnson\

    Chill out. I wasn't aware that I wasn't letting people make up their own minds, or that I had some special power over you or your new alliance. If you make something public, I'd think you'd expect public comment. I guess not.

    \Rod Johnson\
    Btw, no one from AOP Alliance "pumped the press." I spoke about AOP Alliance as a work in progress at TSS Symposium. Dion's post came as a surprise to me (he and I didn't discuss AOP Alliance in Boston). Judging from the reactions of everyone but you on this thread, TSS readers think Dion was right to post.
    \Rod Johnson\

    It's been posted about on TSS here before. You spoke about it at the TSS Symposium. It's on sourceforge. I'd say I can safely say you want people to know about it, yes?

    As for reactions...most people seem to think interoperability is a good thing. Which is rather a no-brainer. The question is, what is the AOP Alliance specifically going to bring people (and please don't say 'interoperability' - some actual detail would be nice)? Everyone's for making things work together, but no one seems to know what you're actually doing. The bulk of my comments are that you might get alot more direct community support if you communicated better (formally and informally) what this thing is all about, what the actual design is, and perhaps some design goals that spell out what you can and cannot do with this emerging standard. The impression I get from the entire alliance is you somehow thing this isn't a good idea, or somehow out of your charter.

        -Mike
  27. <mike>
    It's been posted about on TSS here before. You spoke about it at the TSS Symposium. It's on sourceforge. I'd say I can safely say you want people to know about it, yes?
    </mike>
    My apologies. Next time I want to get together with others in the AOP community to achieve anything towards standardization, I'll keep it a complete secret. Defining standards works best that way. I only presented 1 slide out of about 120 in total in my 3 talks at TSS Symposium on AOP Alliance, but I now realise that that was unacceptable and that someone may have been listening and might tell others about it. And you're absolutely right, Sourceforge was much to open. I have room in my loft for a dedicated CVS server. If we use decent encryption, that might just do the job.

    You're right to want to protect developers from these dangerous, unfinished ideas.
  28. Jesus H. Christ. You'd think a published author would be able to read written text.

    Rather than ranting about "secrets", just accept that you made the work and the site public, and I'm commenting based on what you guys made public, and IMHO it'd be in your best interests to make your project more understandable to the masses.

    I am, in fact, a very big fan of open source and open development. I'm not into "secret" development. You obviously read about three lines of my response, skimmed the rest, and then went into full blown sarcastic rant mode.

    As I said, you obviously want people to know what you're doing. And, as I said, more power to you. Standardizing AOP can only be a good thing. In that vein, my suggestions were merely suggestions that, as a public effort, you might want to put some polish on it, and write some baseline docs so people know what you're doing. In other words, help people out so they can more easily contribute.

    If you're too much of an ******* to even understand that, though, then obviously I've wasted alot of time even bothering to attempt to communicate.

        -Mike
  29. <mike>
    If you're too much of an ******* to even understand that, though, then obviously I've wasted alot of time even bothering to attempt to communicate.
    </mike>
    Thanks very much Mike. I was wondering why I bothered to reply to you in the first place. Your attitude now and your attempt to hijack this thread (along with your exhibition of "stop energy in other threads) have earnt you the distinction of the first ServerSide poster I'm going to completely ignore in future. I suspect I won't be the only one.

    Rod
  30. \Rod Johnson\
    Thanks very much Mike. I was wondering why I bothered to reply to you in the first place. Your attitude now and your attempt to hijack this thread (along with your exhibition of "stop energy in other threads) have earnt you the distinction of the first ServerSide poster I'm going to completely ignore in future. I suspect I won't be the only one.
    \Rod Johnson\

    Get over yourself. My "hijacking" was a single comment I made, and it was all I intended to make, and you got bent out of shape that someone had the unmitigated gall to criticize something you've done. That's all this thread has turned out to be - you getting pissed off that everyone didn't give you shining accolades for one of your endeavours. Well, as I said, if you can't take criticism you shouldn't invite people to inspect your work.

    As for publically stating you'll be ignoring me in the future, that's just another sign of egoism that refuses to listen to criticism. If you were that fed up with my comments you'd just stop responding - no need to publically announce it. Or is this supposed to be my "punishment"?

    As a final parting shot, on the outside chance you're not ignoring me right at this moment, I still think the alliance should consider doing more on the documentation and example side, and that doing so will garner much wider support for your efforts.

        -Mike
  31. My apologies. Next time I want to get together with others in the AOP >community to achieve anything towards standardization, I'll keep it a complete >secret. Defining standards works best that way.


    You did it the right way.
    I am going to implement it in http://voruta.sf.net, it is not a AOP framework
    (just some of aspect implementations ), but this standard will be a very good thing for voruta too (to use it as one of aspects in AOP framework).
    Thanks TSS for information.
  32. Mike writes:
    I would argue that what you have right now is inscruitable to anyone trying to understand what it's all about.


    I think you misunderstood the purpose of the Alliance.

    This is not an end-user forum, but a place for all authors of AOP frameworks around the world to get together and standardize on the base API's.

    After that, it's up to each AOP framework to document their work and provide examples that make sense to end users, but this is beyond the scope of the AOP Alliance.

    Does that make sense?

    You're just simultaneously pumping up press for this, and at the same time all you have to show is ultra-early organizational setup pains.

    As Dion pointed out, we certainly didn't pump up any press, he did it on his own initiative because he thought it was an interesting and innovative effort (and as far as I know, he's not even part of the Alliance, but of course he's welcome to join us :-)).

    Why you'd do that to yourselves is beyond me. On a personal level, my expectations of the end results have gone way down.

    Good, this way you won't be disappointed :-)

    --
    Cedric
    http://beust.com/weblog
  33. I think having a set of interfaces is extremely important. If Sun had done this with Swing, then we wouldn't have all the complaining about Swing/SWT and people could improve issues themselves with their own implementation.

    A set of interfaces for aspects is even more important, because it will be a central part of containers. It's great if I have my POJO and don't have to worry about interfaces, just add services at runtime, but it'd be great if there was an expected set of basic hooks for setting up those services on my POJO.

    I'm glad someone who has been doing these things for a few years is looking into this (AOP Alliance). This is too important to mess up. This will propel Java light-years ahead of Microsoft.

    Steve
  34. \Cedric Beust\
    I think you misunderstood the purpose of the Alliance.

    This is not an end-user forum, but a place for all authors of AOP frameworks around the world to get together and standardize on the base API's.

    After that, it's up to each AOP framework to document their work and provide examples that make sense to end users, but this is beyond the scope of the AOP Alliance.
    \Cedirc Beust\

    A statement just like that prominently displayed on the home page would go a long way towards avoiding confusion.

    In addition ... I would argue that a standard AOP API _would_ be of interest to end users, and an indepedent source of what the standard actually is. Certainly, leaving it up to individual vendors/implementors to document what the standard is seems a bit bass ackwards.

    At a minimum, I hope you'll document what conforming to the framework means, what capabilities it gives you, and possibly what things are not covered by it.

    Certainly, I really don't understand your "not an end-user forum" comment in the least. If it's not, why have people from the alliance posted about the sourceforge site in AOP threads here?!?!

    \Cedric Beust\
    As Dion pointed out, we certainly didn't pump up any press, he did it on his own initiative because he thought it was an interesting and innovative effort (and as far as I know, he's not even part of the Alliance, but of course he's welcome to join us :-)).
    \Cedric Beust\

    Funny, I recall now and in the past several invitations to the general Java community to come to the web site, check it out, and offer comments in the forums. It has been directly referred to publically by members of the alliance.
    If this alliance has nothing to do with end users, why then are you wasting the time of end users?

         -Mike
  35. You may gain that credibility back, but you've kinda set yourself up to make it

    > as hard as possible. People don't want to read developer disucussion lists about
    > implementation details and setting up your source tree. They're going to lose
    > interest in interfaces that are still in flux.

    Actually, if you go to the web site:
      http://aopalliance.sourceforge.net/
    the first thing you see is:
    # On line Sourceforge CVS Repository
    # Online Javadoc-generated AOP Alliance specifications preview (this is unstable work in progress).

    It clearly states this is is a preview unstable work in progress specification and there is no non-CVS downloads. If this doesn't scream out "developer's only", I don't know what does.

    As I said before, this is the way open source works. You attract new developers by publicizing that you're doing it. If I'm developing a new AOP framework because I don't like the others, how will I know that the AOP alliance exists unless they announce it? If they wait 'til it's done, I won't have a chance to influence the decisions and I'll create an incompatible AOP framework.

    In open source, you gain credibility by not hiding anything, no matter how "messy". None of us are naive. We know all products (commercial or not) contain bugs and limitations. At least with open source, you can know what those bugs and limitations are and plan for them. With closed source you have to rely purely on the reputation of the company and hope that the bugs/limitations don't inconvenience you too much.

    The AOP development will be messy and confusing, but take a look at the Linux kernel mailing list. It's not for the faint-hearted, but then again, the typical IT workplace isn't either.

    If you don't want to know how sausage is made, the don't walk into a sausage factory or go to a sausage maker's convention. I agree that most people don't want to know how sausages are made, so they tend to avoid things that show how they are made. Most people don't want to know how open source is made, so they tend to recognize and avoid the developer areas unless they have the stomach for them.

    I don't see how this announcement can harm the AOP Alliance or why the announcement should be postponed.
  36. Hi Mike,

      why are you so outraged about the AOP alliance? What do you fear? Who are you, anyway? Why don't you cool off and let them work it out.

      - Gerald
  37. Gerald, from your response I take it you either didn't go to the site, or didn't understand a thing that was there. When you can't answer honestly, always go to the old tried and true "what do you fear? Who are you, anyway?", and God forbid you actually address an issue.

    As to who I am, a web search for me on google finds me quite easily.

        -Mike
  38. Hi Mike,

    > As to who I am, a web search for me on google finds me quite easily.

    Well, in google you popup in the Yahoo! Groups netslaves forum with the headline "A New List and soon-to-be e-Zine Devoted to Real-Life 'Dilberts'. If you've worked in New Media, chances are you've been". In case you haven't realized it, this is the wrong forum if you're looking for therapy.

    Peace.

    - Gerald
  39. If you're trying to do something like make AOP portable across implementations, I'd think you'd want a unifying document that outlines what you're trying to do, backed up with some more explicit information (not javadoc!) on how it works and how to use it.


    Point taken. We need to prioritize documentation. UML diagrams will probably be helpful as part of this. But right now we're looking for community involvement in finalizing the interfaces. This is a bit different from going out and selling this as a finished standard. However I and others will be doing documentation etc to help make this technology accessible to a wide audience in the near future.

    As soon as the interfaces stabilize (they've recently changed but are looking good now) Spring will update to support latest version. Expect a point release in the next few weeks. This should also make a sample application possible.

    Regards,
    Rod
  40. SourceForge[ Go to top ]

    <quote>
    People are going to see yet another sourceforge site with nothing that works, just some interfaces they can grab from CVS and a discussion board. I suspect a number of people will look at it and dismiss the effort.
    </quote>

    Are you trying to discredit SourceForge? SourceForge is the best site for development! Very reliable, fast and you have every stuffs there. The support is also very fast! Many good Open Source projects are hosted by SourceForge. Without SourceForge we would never ever reach the situation like now in Open Source world!

    Regards,
    Lofi.

    ** SourceForge fan club **
  41. SourceForge[ Go to top ]

    \Lofi\
    Are you trying to discredit SourceForge? SourceForge is the best site for development! Very reliable, fast and you have every stuffs there. The support is also very fast! Many good Open Source projects are hosted by SourceForge. Without SourceForge we would never ever reach the situation like now in Open Source world!
    \Lofi\

    No, I'm not trying to discredit SourceForge. But there are a very, very large number of projecs on it which never get out of the discussion stage, or have barebones code on it with no documentation. SourceForge in and of itself is very nice, but not all projects on it necessarily are.

       -Mike
  42. <Mike>
    No, I'm not trying to discredit SourceForge. But there are a very, very large number of projecs on it which never get out of the discussion stage, or have barebones code on it with no documentation.
    </Mike>

    Mike, I hope I don't have to remind you that it's no different with Sun's Java Fortune 500 Process (TM). It's even worse. So please stop your AOP alliance FUD campaign.

    - Gerald
  43. Gerald, it's a very very (very!) well known fact that for every really good source forge project there are twenty that are effectively abandoned ghost towns. This isn't any negative reflection on open source or source forge, it's just the way it is.

    Sorry if the reality doesn't match the platitudes you were looking for.

        -Mike
  44. This is good news! I wish them to become apache of AOP, so that xerox don't a chance to sue anyone because of silly patent infringement.

    I am a big fan of AOP because, it works for me.
  45. Misuse of aspects?[ Go to top ]

    This is probably off-topic here (as it is completely Microsoft-centric) and I am not even sure if its relevant to this thread but in any case here is a link to a great post which explains the experience of one person who used aspects to implement interception and came away with burned fingers...

    [1] http://radio.weblogs.com/0108971/2003/06/30.html#a206
  46. More Lessons from the RSS crowd[ Go to top ]

    with the goal of standardizing some AOP interfaces.


    If you haven't noticed, the civil war going on in RSS-land (RSS 0.9* vs. RSS 1.0 vs. RSS 2.0 vs. Echo/Yet-To-Be-Renamed-to-RSS) is currently escalating and worth further study. For example, why bother about standardization at all?

    Read the dialog-style Mr. Safe skits from Tim Bray and John Udell for insights:

    * Houston, We Have A Problem (You need to scroll down a bit).

    * My conversation with Mr. Safe

    Anyone wants to try a Mr. Safe for AOP?
  47. Why did I write up this post? The reasons are:

    - People are interested in the goings-on of AOP at the moment
    - There are many AOP frameworks, and I thought people would be interested in learninig that these guys are working together
    - It is interesting to see another example of trying to work on a standard without going through Sun/expert group (it will be interesting to track this example)
    - Keeping people in "the know" is a good thing. For all we know, someone may read about this, check out what is going on, and come up with some really good ideas!

    So, although there isn't a 1.0 release, I am excited about the potential. [btw, Noone from the alliance asked/pushed/told me to post about it.]

    Dion
  48. Curious -

       - have you gone to the site and looked through it?

       - If so, what did you make of it? What did you get out of it?

     -Mike
  49. Curious -

    >
    > - have you gone to the site and looked through it?
    >
    > - If so, what did you make of it? What did you get out of it?
    >
    > -Mike

    Oh man, would you just let them start their work, for Christ's sake? You are sounding like a whinner and nothing more. They´ve read your comments, now let them fix that, or else just get on with your life. It's just a sandbox for their initial efforts and nothing else, for now at least. Anyone can see that, but you. For developers, as said many times before! And you want a full blown PDF, PPS, UML, JCP, JavaDoc, ref implementation already. Give them a break.

    MMMmmmm... maybe you are a end-user, not a developer. That would explain it all. It's always the end-user's fault! :-)
  50. \Yet another one\
    Oh man, would you just let them start their work, for Christ's sake? You are sounding like a whinner and nothing more. They´ve read your comments, now let them fix that, or else just get on with your life. It's just a sandbox for their initial efforts and nothing else, for now at least.
    \Yet another one\

    The art of reading is obviously a lost one. Read the fucking thread before you respond, here's my very first post on the subject:

    - Me -
    I think any announcement or excitment about the alliance is monstrously premature. Right now, there's a bunch of interfaces that are still very much in flux, and a discussion board. Without some in-depth docs, fully working code with at least three AOP implementations, and some good examples, it's not much good to any outsiders.

    - Me -

    So thank you one and all refuting and saying "it's too early to make anything of it" when that's what I fucking said to start with.

        -Mike
  51. The art of reading is obviously a lost one. Read the fucking thread before you respond, here's my very first post on the subject:

    >
    > - Me -
    > I think any announcement or excitment about the alliance is monstrously premature. Right now, there's a bunch of interfaces that are still very much in flux, and a discussion board. Without some in-depth docs, fully working code with at least three AOP implementations, and some good examples, it's not much good to any outsiders.
    >
    > - Me -
    >
    > So thank you one and all refuting and saying "it's too early to make anything of it" when that's what I fucking said to start with.
    >
    > -Mike

    So just use your reading art, and see that no one thinks starting a project like they are doing is a premature thing, while you surely do, smarto. I am not agreeing with you, in case that is not clear to your reading capabilities.
  52. \Steckelberg\
    So just use your reading art, and see that no one thinks starting a project like they are doing is a premature thing, while you surely do, smarto. I am not agreeing with you, in case that is not clear to your reading capabilities.
    \Steckelberg\

    I said it was premature for anyone to get excited about it. If/when they have something real, maybe it'll be time to get out the horns and banners. When they have something more than vaporware, great. But who gives a **** (and since when is it news) when a bunch of guys put up a bunch of interfaces on source forge? Who wants to participate in an alliance that's still getting its source directories straight?

    In general, if you weren't aware of it, premature means it's not mature _yet_. It doesn't mean it's bad, it doesn't mean it's great. It just means that it hasn't developed sufficiently yet to take it seriously. And being open source (and not "secret") doesn't change that. A bunch of guys wielding interfaces at Microsoft have accomplished no more and no less than a bunch of guys on source forge doing the same. Being open doesn't magically make it better.

        -Mike
  53. The more I read your responses, the more I think about Troll.

    Before you ask further, yes I did go through this whole thread. And yes, I did visit AOP Alliance and read most (if not all) the threads in their discussion board (have you?), even the discussion boards in AOPI before they all join AOP Alliance (have you?). If you don't want to participate in this alliance, fine, but there's no point telling the whole world not to join this alliance.

    Is there anything wrong with put up a bunch of interfaces on SourceForge? We all have to start somewhere.

    About the source directories, when you start a project, do you really spend sometime to think of how a source directories structure should be? Do you never change your source directory structure now and then during each project? Give them a break (a give this thread a break), let them do their work.

    Do you cheer your children when they start learning to walk? Or you do expect your children to be born with the ability to walk instantly. :p
  54. \Benny Ng\
    Before you ask further, yes I did go through this whole thread. And yes, I did visit AOP Alliance and read most (if not all) the threads in their discussion board (have you?), even the discussion boards in AOPI before they all join AOP Alliance (have you?). If you don't want to participate in this alliance, fine, but there's no point telling the whole world not to join this alliance.
    \Benny Ng\

    Obviously my over-strenuous wording has caused people to miss most of what I was saying and concentrate on the invective. Which is entirely my fault. Yes, I have read all of the forums in both places. I've looked through the source code. My reaction to reading all of that was that all the excitement and "attaboys" weren't based on much. Certainly, I tried very hard to understand just what it is the alliance is trying to standardize, and get some insight into how it works. I failed, and I don't think it's because I'm an idiot (although that's always possible). I think I failed because the alliance, at this moment, doesn't have any design documents, has no primary design goals beyond the fuzzy "interoperability". They in fact have very little on which an intelligent person could base an opinion on.

    I suggested that creating some documentation, more clearly stating their goals and how they were getting there, and providing examples would go a long way towards people helping them understand what it's all about, and possibly helping them to contribute. This was done with the best intentions, with no malice aforethought. For my trouble, I got brutalized, castigated, ridiculed, and now, apparently, ignored.

    I regret the tone of my remarks, and how they escalated, but frankly much of it came from frustration - frustration over many individuals who see no room for improvement, and who obviously are too smart to consider advice from outside people, and frustration over many posters here toasting me slowly over a fire who never even visited the web site.

    I would love to contribute in a more positive manner, and perhaps others would as well, but how? Without some baseline docs describing what they want to do and how they're trying to accomplish, anyone coming in fresh to it isn't going to have a clue. This could easily be changed, probably in a manner of a week or so of stopping coding and writing up a design and rationale (which frankly I would think most software developers would do as a matter of course before they started banging out code). According to Rod Johnson and others, apparently such basics is work you do after the coding is done (e.g. create a design from the code), and appears to be an after thought.

    I agree that you have to start somewhere. I also think it's monotonous to have new parents invite people over their house to watch the baby blow its first drool bubble. I'd think the alliance would want to get their house in order a bit before inviting wide comment on it. But, apparently, they want to invite everyone to watch the diaper changes and 3 am feedings, and believe since it's "open source" that everyone will understand. Personally, I've always felt that software endeavors should start with requirements and goals, show a design, start implementing, and continuously iterate between all the levels as feedback comes in (e.g. start with a thin base and build it up over time). Frankly, it's obvious to me that Rod et al believe that since they're "open source" they don't need requirements, don't need a design, and they'll create those things as afterthouhts after the design is done. This is, indeed, how things are often done on open source projects, but it doesn't make it the best way to do it.

    Finally, if Rod et al don't want criticism because something is too new, then don't announce it at industry symposiums, and don't post the web address on TSS (yes, the link was posted here long before this week by another alliance member). If you're not ready for criticism, don't publicize it.

    Oh, and, a note to Rod, criticism in itself does not make a troll. Sometimes the object of criticism has actual flaws, and considering them objectively can lead to improvements. Rejecting people out of hand is the best way to lose touch with the realities of the market.

        -Mike
  55. Open vs. Closed[ Go to top ]

    <mike>
    A bunch of guys wielding interfaces at Microsoft have accomplished no more and no less than a bunch of guys on source forge doing the same. Being open doesn't magically make it better.
    </mike>

    Not agree. Surely just being open *DOES MAKE* it better. If you have two same applications (one open source, one closed source) with all the same functionalities. The one with open source *IS* always better because you have a chance to learn from it.

    If Microsoft's workers write a specification within their group and you cannot look into it, it's useless. What all the guys here (AOP Alliance) want to do is to have an open process for the specification within AOP frameworks and this is great! Just imagine they will do this in closed source. Does it make no difference to you?

    Please try to understand the meanning of "open" and "closed" before saying something like this.

    Lofi.
    http://openuss.sourceforge.net
  56. Negative contribution is a very usefull contribution.
    Thanks for your feadback Mike, you help for AOP too.
  57. In general, if you weren't aware of it, premature means it's not mature _yet_. It doesn't mean it's bad, it doesn't mean it's great. It just means that it hasn't developed sufficiently yet to take it seriously. And being open source (and not "secret") doesn't change that. A bunch of guys wielding interfaces at Microsoft have accomplished no more and no less than a bunch of guys on source forge doing the same. Being open doesn't magically make it better.

    >
    >     -Mike

    Well, like anything else in life, it depends. If what you expect is something ready to be used, then cool off, and wait. But if what you expect is to participate and contribute to their effort, then by all means this is the time to spread the word about it, so they can gather interested people who could add to the project, even in its early stages. In nether case, exposing their project like they did is a bad thing for the project itself, either because of the "know it" factor, or because AOP framework developers are attracted to join their work, however early it is now. To say it is a premature thing is plain wrong, they are not looking for cheers, but for people who can contribute now.

    Almost all projects in sourceforge start like that, with almost nothing done and working. But it doesn't mean it's bound to fail. The more you spread the word about a project, the greater the chances of gathering people to help, and the greater are the chances of your project achieving success. I thought it was obvious.
  58. \Henrique Steckelberg\
     But if what you expect is to participate and contribute to their effort, then by all means this is the time to spread the word about it, so they can gather interested people who could add to the project, even in its early stages. In nether case, exposing their project like they did is a bad thing for the project itself, either because of the "know it" factor, or because AOP framework developers are attracted to join their work, however early it is now. To say it is a premature thing is plain wrong, they are not looking for cheers, but for people who can contribute now.
    \Henrique Steckelberg\

    My main argument is that the way things are set up right now makes it very difficult to participate directly, because there hasn't been any effort up to now to explain in depth what it's about and the solution they're persuing. Once that have that, I think outside comments and contributions will go up significantly. I understand how much sourceforge projects get set up - but that doesn't make it the right way to do it, or the best. If they honestly want outside input, they're going to have to go through some extra effort to explain what they're doing, why, and how they plan on getting there.

        -Mike
  59. Mike Will You Shut Up Please[ Go to top ]

    Hi Mike,
      
      Please cool off and relax for a while.

      - Gerald
  60. First you start with your own project propaganda and then you just asks someone to shut up with no arguments? Why don't you cool off yourself?

    Just in case you're thinking about posting some insults like you did last time I recommend you don't waste your time... they will be simply ignored.. I won't start a whole flame thread.

    > Hi Mike,
    >
    > Please cool off and relax for a while.
    >
    > - Gerald
  61. You:
    "First you start with your own project propaganda and then you just asks someone to shut up with no arguments? Why don't you cool off yourself?

    Just in case you're thinking about posting some insults like you did last time I recommend you don't waste your time... they will be simply ignored.. I won't start a whole flame thread. "


    Me:
    There's nothing wrong with having a project and being creative. At least he's not a spammer or a phone salesman. Just chill, everything will be okay. It's just AOP. A lot of these people, while they may or may not have some financial connection to whatever they're pushing, spend an AWFUL amount of time helping others, and solving problems for everyone else in their free time. I'm not one of them, but being a whiny bitch never solved anything. And that's learned from my days as a whiny bitch.

    Steve
  62. One man's whining is another's constructive criticism. And criticism can be a positive force in the world, Rod's mystic comments aside.

    The AOP Alliance's mailing list has been very, very busy the past couple of days. Here's some quotes - they are of course edited for the point I'm getting across, but you can peruse the list yourself if you'd like the full flavor :-)
    And many of the comments were from Gregor Kiczales....

    Anyway, my point is not to whine or point out flaws - it's to say that documentation is good, goals are good, and it's tough to create an alliance without it. And despite Ron's invective, the alliance at large seems to understand that perhaps having more documentation and less nebulous code would be a good thing...certainly there is alot of confusion within the alliance that would have been solved if it had been requirements/design/impl, instead of impl/everything else :-/

    Anyone interested in details should, of course, go to their forums and read the posts in detail for themselves. I'm posting a few snippets here just for flavor. :-)

    " How serious are you? Is this something your companies are behind? Or is this a spare time project?"

    "What is the goal? I'm not asking about whether you intend to produce a spec or an implementation, I'm asking about the goal for the spec/implementation you produce"

    "What is the basic architecture. For some reason there seems to be more discussion of package structure than there is of what are the key concepts, and I can't tease out the three paragraph description of the architecture from the email."

    [Response on architecture] " I actually, ehm... don't know... I guess something might crystallize as we go along. It hasn't really been clear from the beginning."


    " I know that all this should be written down somewhere. It is rapidly
     described on the web site. Regarding the thread on TSS, I think that I
     will start to write down some natural language specs (even if I think
     that a good javadoc is very important and far more useful to have
     precise and efficient discussions between developpers!!)"

    " I encourage anybody to look at the javadoc since it is the only spec we have for the moment :-( But I will try to fix this using all the good material we already have from the discussions."

    "Mumble. If the first step of AOP alliance is to settle on an interceptor framework, then I guess I have a lot of skepticism about that."

    "I don't understand. AspectJ is an implementation of AOP. As of today, the goal of the Alliance is not to produce an implementation but a set of interfaces."

    "I do not think that we are using the wrong words here. But we have to cleanly define the different abstraction levels and that is why we need some global architecture overview."

       -Mike
  63. Alliances[ Go to top ]

    I read the list a bit and it seems to me that they aren't very happy with this announcement (at least after you've jumped in).

    Anyway, my opinion is that standardization requires power. I don't think that 2 book authors plus some open source [tiny] AOP framwork authors plus Cedric have the power to create a standard. Keep in mind that no vendor, even open source "products", want to share their user base. They want to lock them into their product. So it's out of interest to have a standard.

    For example, in my area, JMS, it would be very nice to have a JMS wire protocol. Well, I could open a jmswire.org site and could make it very nice looking with a nice spec and all that. What do you think - will any of the important vendors join in? Of course, no.

    However, if IBM with their 75% MQ market share would open some poor pages on developerworks and start some blah blubb discussions about a JMS wire protocol, be sure that everybody will support it, no matter how the protocol looks like, how the spec looks like etc blah. You know. Interoperability is to participate in market shares, at least from the perspective of vendors.

    So my humble opinion is that the few people out there calling itself an AOP Alliance should spend their time with some more productive stuff. Whatever you do in that area - it is senseless, except you have the power. But you haven't. Cedric is not BEA. You can't create a standard. Nobody wants it and you don't have the power to create the pressure to drive things.

    It might work, of course, if the intention of the alliance is self promotion to sell your books.

    -- Andreas
  64. Alliances[ Go to top ]

    It might work, of course, if the intention of the alliance is self promotion to sell your books.

    >
    > -- Andreas

    I want to "sell" AOP as idea, not a product or book. I need this stuff for my projects and I
    believe it will be more easy to "sell" it as standard for my coworkers.
  65. Selective quotation[ Go to top ]

    I invite anyone who's interested in what's really happening on the list to go and check it out for themselves, rather than rely on these selective quotations. There is currently a lot of activity. There were far too many posts yesterday to fit in this thread.

    Rod
  66. Yes - the[ Go to top ]

    \Rod Johnson\
    I invite anyone who's interested in what's really happening on the list to go and check it out for themselves, rather than rely on these selective quotations.
    \Rod Johnson\

    I guess since you're busy ignoring me, Ron, you're doomed to make yourself look silly repeating me. From my post:

     "The AOP Alliance's mailing list has been very, very busy the past couple of days. Here's some quotes - they are of course edited for the point I'm getting across, but you can peruse the list yourself if you'd like the full flavor :-)
    And many of the comments were from Gregor Kiczales...."

    "Anyone interested in details should, of course, go to their forums and read the posts in detail for themselves. I'm posting a few snippets here just for flavor. :-) "

    In case you didn't notice, I explicitly said they were "edited for the point I'm getting across", and that people should go to the site to read for themselves.

    I'm curious how one makes money selling books when they have problems reading?

        -Mike
  67. Well... I was actualy *not* talking about the AOP Alliance but about Gerard Bauer posting about XUL Alliance in several un-related threads here at the server side and more specifically about him asking someone to shut up just because he thinks someone else has no right to talk about the AOP Alliance in a thread about the AOP Alliance... talking about XUL is ok.