Hi, the recent discussions about the import interface revealed a conflict between two goals of open source software development, that split the developers in two types: - enhance the codebase to make it maintainable, extendable and state-of-the-art - add new domain specific functionality that users need
(The purpose of this mail is to clearly state that I'm more interested in the latter, and also make clear that both is extremely important, I don't want to judge over which one is more important.) About the second goal first: developers working on that tend to not care about the internals too much. They are often users of the software and have a clear idea of new features they would like to see. They just implement them, trying to follow the coding guidelines and existing interfaces, but they are also willing to introduce dirty hacks for the sake of their desired functionality. I must admit that I'm of that type. When I look on the activities in the ArgoUML project, then I get the impression that we're weak here. But the main intention behind open source project is that users add needed features and share them with others! About the first goal: it is extremely important, because it provides the basis on which new features could be integrated. Developers working on that have a clear understanding of software engineering and carefully watch about used patterns, interfaces, processes and such. They prevent the project from chaos and the death of unmaintainable monster code. Their goal also is (or should be) to provide a framework on which extensions by the other type of developers can safely and easily be coded. I think ArgoUML concentrated on that for a long time. There are common interest and goals of both developer groups for sure, like moving to UML2. But sometimes there arise conflicts which must be handled: the "user" developers introduce dirty code that makes the life of the "framework" developers hard. On the other hand, the "framework" developers always restructure the code base that sometimes can prevent the "user" developers to code something usable within their limited time. I'm a "user" developer, as stated before, and had to postpone my feature ideas for YEARS for several reasons, sometimes I even had to abandon plans. First there was the breaking of sequence diagrams, then the move from NSUML to MDR, then multiple reworks of whatever event mechanism, now we will have sequence diagram 2 or 3 and UML2/EUML/AMOF/DI/... and so on. Back then there was Thierry, then Jaap, and I thought "ok let them finish their work, then I'll continue", but now I see this is a neverending story. (BTW, now we have good old Tom that follows that tradition, hey Tom, don't misunderstand me, I appreciate your work VERY MUCH!) I don't know if there's any solution to the conflicts beside just being aware of the differences and respecting each others work. Maybe ArgoUML someday WILL reach a state where new features can easily be added (there was made HUGE progress towards this!), maybe by a powerful scripting mechanism without even changing the code, or maybe even some graphically feature builder, ... I'm still hoping for the KILLER features that no other UML tool has, like this was the case for the critics mechanism. I try to work towards such a killer feature by providing functions that will get you from source code (or huge model) to useful eye-opening static and dynamic diagrams in no-time, others might have other ideas. If we have such killer features, then users will come and even forgive us the absense of things like undo or diagram interchange or completeness of UML2 support (who really needs that?). I'm starting to drift away, so I better stop... :) Regards, Thomas -- GMX startet ShortView.de. Hier findest Du Leute mit Deinen Interessen! Jetzt dabei sein: http://www.shortview.de/[EMAIL PROTECTED] --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
