I have a feeling that Avalon, and specifically Merlin is focusing too much on the enterprise.
+1. I'm going to enter rant mode now. Not meaning to offend anyone though.
I know that the enterprise features are necessary for some folks, but others simply do not need it. It never really had simplicity, and to be honest I can't tell what it does and does not do. I know of a couple of people who are concerned (and will remain nameless until they choose not to be).
that would include me. But everyone already knew that:D
To be honest, I am not in a situation where I need enterprise level architecture anymore. I just need something simple.
+1
The current Fortress does fit my needs, and I am almost scared to try Merlin. To be fair, I should declare what I mean by simple. By simple, I mean that I have a set of components I need, but I don't need security, proxying, etc.
+1. While "simple" is hard to define, here's a few pointers as to what is not:
* excessive use of reflection (especially when it doesn't make sense; like AbstractMerlinTestCase.setUp()) * sourcefiles that are 1000 lines long * methods that are 300 lines long * 5 levels of indirection / increased abstraction along the lines of
repository--1..n-->kernel--\
/-----------------------/
\-1->block-1..n->appliance-1->factory--1..n-->model--\
/--------------------------------------------------/
\-1..n->profile--1-->configuration* instantiation of roughly 10 helper classes for the instantation of a single component * undocumented use of weak references * undocumented and inconsistent use of synchronization * lack of unit tests * mismatch between functional use and classname * mismatch between functional use and javadoc description * an execution stack of 15 levels or more for the simplest tasks
several more (while less serious, many apply one way or another) can be found at
http://lsd.student.utwente.nl/jicarilla/TooMuchMagic
I am not really for a cease and desist type of action, but I really want to know if my needs are truly that distinct from where Avalon is going. For a long time we have talked about something that would be easy to modify or easy to extend.
My "[merlin] problems plugging in type 3 lifestyle" shows how hard it is for a seasoned (wouldn't dare say "absolute authority in the field" :P) to modify or extend merlin.
Many of us can prove that it can be done--but noone is interested in a complete rebuild or new work. I don't blame them. I feel the need for simplicity is being drowned out by the need for features.
+1. It certainly feels a lot like drowning.
Another thing that scares me is the rate of mutation for Merlin.
+1. And it is not just that new features are added every week, it is also that api documentation, inline code comments, unit tests (etc) do not keep up with the feature additions. Running a code analysis on the kernel impl/src/java directory finds me 110 non-trivial issues that I wouldn't consider even committing.
And that's in just 3 classes (arguably the core of the core package). I would have run a unit test coverage tool on the same 3 classes, but I can do the calculation by head - its 0%.
What I can understand is people saying unit testing or test-first is silly, that verifying the results obtained from simple set and get operations is a waste of time (I disagree, but I can understand why). What I cannot understand is why the core of a robust enterprise development platform hosted at apache (the number of open source projects with as good a reputation to protect as apache is quite small) deserves the mandate "final release".
You may know what it does this week, but come back to it a couple weeks later and everything is different. There are hundreds of commit messages that go by all the time, and it is difficult for me to try to keep up with what is really going on.
I seem to recall that a release was held up over badly written shell scripts a week or two ago. Had I been able to keep up, that would not have happend (I believe I wrote the original scripts by copying the basis from phoenix which was copied from ant which are some well-tested scripts).
I can think of countless other examples.
The questions I have are this (for those who have not seen this earlier):
1) Am I alone in my concerns?
no. Many people are starting to avoid touching avalon with ten feet poles because of it.
I will try to answer 2) and 3) seperately.
-- cheers,
- Leo Simons
----------------------------------------------------------------------- Weblog -- http://leosimons.com/ IoC Component Glue -- http://jicarilla.org/ Articles & Opinions -- http://lsd.student.utwente.nl/jicarilla/Articles ----------------------------------------------------------------------- "We started off trying to set up a small anarchist community, but people wouldn't obey the rules." -- Alan Bennett
-- cheers,
- Leo Simons
----------------------------------------------------------------------- Weblog -- http://leosimons.com/ IoC Component Glue -- http://jicarilla.org/ Articles & Opinions -- http://lsd.student.utwente.nl/jicarilla/Articles ----------------------------------------------------------------------- "We started off trying to set up a small anarchist community, but people wouldn't obey the rules." -- Alan Bennett
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
