To possibly bring the discussion to a higher level:

Why is T5 so far from being the DE FACTO STANDARD web framework?

Is getting web developers to use T5 comparable to encouraging 80-year-olds
to throw away their radio and use MP3 instead?

The two actually seem related:
- There's a learning curve (probably more intimidating seen from a distance)
- There exists a strong standard that feels comfortable, familiar and
somewhat sufficient
- The supporters of the alternative are not your age, not your kind of
people, and they don't hang where you hang.

So who are we? Are we the new cool teenagers drawing the shape of the
future, or are we the crazy religious people committing suicide together to
try to get to the sacred planet?

Inge

On Fri, May 1, 2009 at 8:16 AM, Otho <taa...@googlemail.com> wrote:

> alex,
> sorry you are right. I was blown away on points 2 & 4.
>
>
> 2009/5/1 kranga <kra...@k2d2.org>
>
> > For Tap 3, we had a very elaborate form with loop implementation and we
> > added Ajax-validation such that you only write validation code once in
> Java
> > and for javascript validation, an ajax call is made to run the same
> > validation code and bring back the results. The error handling could
> > correctly handle n-input fields in a form all generated via a loop.
> Needless
> > to say the code was quite complex and horrendously convoluted and now is
> > outdated :( haha
> >
> > --------------------------------------------------
> > From: "Inge Solvoll" <inge.tapes...@gmail.com>
> > Sent: Thursday, April 30, 2009 6:09 PM
> >
> > To: "Tapestry users" <users@tapestry.apache.org>
> > Subject: Re: T5: What is NOT beautiful about Tapestry?
> >
> >  Agree with Alex on the last comment about proving that issues don't
> exist!
> >>
> >> I have one example of a trivial thing that I have found difficult to
> >> implement in all Tapestry versions I have used(3, 4, 5):
> >>
> >> - A form with a loop in it.
> >>
> >> This is extremely common in the pages I make, and my mind always
> struggles
> >> when trying to find how this is done in the new Tapestry version. I
> never
> >> figured out a way to do it in 3 and 4 that made sense to me and looked
> >> correct.
> >>
> >> It also happened in T5. Maybe I'm stupid, but I really had to struggle
> >> hard
> >> to track down the details needed to implement this correctly, using
> >> encoders, initializing my form objects in the correct method in the
> >> correct
> >> way, and so on. I didn't find an example in the docs showing me the best
> >> practice for this (for me) very trivial and very common pattern.
> >>
> >>
> >> On Thu, Apr 30, 2009 at 11:17 PM, Alex Kotchnev <akoch...@gmail.com>
> >> wrote:
> >>
> >>  I will echo Kranga's #1 and #2 and add a couple. I'm all for
> >>> convention over configuration, but when you have to dig out the
> >>> convention out of source code, mailing list, or somewhere else, I'd
> >>> wish I had a well defined interface that I could just implement. The
> >>> not-so-pojo aspect becomes too apparent when you have to write some
> >>> test cases against the said components and you start scratching you
> >>> head about "now, how do I make all of those magical annotations work
> >>> if I don't do the whole IoC bit where it will inject everything".
> >>>
> >>> One additional difficulty is that T5's model is so different in
> >>> respect to AJAX that it takes a while to wrap (or warp) your head
> >>> around what you need to do in order to do something seemingly simple
> >>> w/ a known Javascript framework (e.g. think Dojo, Prototype, jQuery).
> >>> There are a plethora of people out there that know how to make up a
> >>> snazzy ajaxy interface; however, when it comes down to T5 you have to
> >>> jump through a couple of hoops just to get the URL to which the Ajax
> >>> code will hook into (e.g. the componentResources.createPageLink ,
> >>> createEventLink, etc). Componetization support and all within T5  is
> >>> nice, but when you have to climb a big hill of learning a lot of T5
> >>> before you can do a silly autocompletion example for Dojo or jQuery,
> >>> it just makes it harder than necessary. Certainly not a boon.
> >>>
> >>> Finally, it's great that T5 is so well decomposed into small
> >>> interfaces , so that you can override anything you want. However, too
> >>> many small classes/interfaces + a bunch of dependencies on each other
> >>> (which are really easy to do when IoC can magically inject
> >>> dependencies for you) starts being a drag when you want to
> >>> implement/override one, and then you realize that in order to do one,
> >>> you need to figure out a bunch more things that need to be injected
> >>> (or something like that). It's really easy to get into a rabbit hole
> >>> of "oh, I wanted to implement this one thing, now I have to understand
> >>> these other three before I can implement the first one"
> >>>
> >>> Otho,
> >>>  I don't think the point of this thread is for us to prove that the
> >>> issues that are brought up are not actually issues. The fact that
> >>> people bring them up, means that those issues still exist. I doubt
> >>> that someone will go through the trouble of typing up a big email
> >>> regarding his troubles w/ T5 if these were not issues that he/she has
> >>> dealt with.
> >>>
> >>>
> >>> Cheers,
> >>>
> >>> Alex K
> >>> On Thu, Apr 30, 2009 at 9:28 AM, kranga <kra...@k2d2.org> wrote:
> >>> > 1) Documentation: It is one thing to remove dependencies on framework
> >>> > interfaces but quite another to leave the developer hanging with no
> >>> > documentation. Programming by convention is programming in the dark
> if
> >>> the
> >>> > convention is not known.
> >>> > 2) Although Tapestry claims to be POJO, you still have to have a >
> >>> contract
> >>> > (whether it is methods by convention or annotated methods). In the
> long
> >>> run
> >>> > whether this is really better than interface implementation is not >
> >>> fully
> >>> > proven (much like the current debate of whether dynamically typed
> >>> languages
> >>> > will prove more difficult to maintain in the long run).
> >>> > 3) Lack of a component marketplace: Wow, 4 years on and this is still
> >
> >>> on
> >>> my
> >>> > list. We wrote a gigantic application in Tapestry 3 which is still in
> >>> > production. But we've decided to write all new apps in JSF with the
> aim
> >>> of
> >>> > quickly adopting 2.0 when the spec is released. The main reason - a
> >>> plethora
> >>> > of components to choose from.
> >>> > 4) Developer mindshare: Our analysis with Tapestry 3 shows that for >
> >>> every
> >>> > developer we hire, we have to write off 2-4 weeks until they become >
> >>> well
> >>> > versed in Tapestry. I don't believe T5 will be any different. You >
> >>> cannot
> >>> > argue against a standard like JSF that is supported by vendors. The >
> >>> lack
> >>> of
> >>> > penetration of JSF speaks to its terrible initial design which >
> >>> hopefully
> >>> > will be rectified in 2.0
> >>> >
> >>> > I don't believe Tapestry will dwindle and die but I don't see it >
> >>> becoming
> >>> > the defacto standard ala Struts in the early 2000s.
> >>> >
> >>> > --------------------------------------------------
> >>> > From: "Pedro Januário" <prnjanua...@gmail.com>
> >>> > Sent: Thursday, April 30, 2009 5:43 AM
> >>> > To: "Tapestry users" <users@tapestry.apache.org>
> >>> > Subject: Re: T5: What is NOT beautiful about Tapestry?
> >>> >
> >>> >> I totally agree with Hugo's ideia.
> >>> >> The wiki sounds good and should be a easy to make documentation
> about
> >>> >> common
> >>> >> problems.
> >>> >>
> >>> >> 2009/4/30 Hugo Palma <hugo.m.pa...@gmail.com>
> >>> >>
> >>> >>> I agree a book would be great, what happened to the tapestry5-book
> >>> >>> project http://code.google.com/p/tapestry5-book/ ?
> >>> >>>
> >>> >>> Still, i think a lot better could be done with the online
> >>> documentation.
> >>> >>> I believe the structure of the online documentation should be very
> >>> >>> similar to a book, it should start with the basics and evolve to
> more
> >>> >>> "hardcore" stuff from there. Just the fact that the current
> >>> >>> documentation is structured with only one level of depth and the
> list
> >>> >>> of item is ordered alphabetically makes the task of finding some
> >>> >>> information much more difficult.
> >>> >>>
> >>> >>> I for example really like how the hibernate documentation is
> >>> >>> structure, i usually have to problem finding what i'm looking for
> >>> >>> there.
> >>> >>> So, maybe the wiki could be a starting place for the birth of a
> >>> >>> documentation with such a structure.
> >>> >>>
> >>> >>> On Thu, Apr 30, 2009 at 10:06 AM, Blower, Andy
> >>> >>> <andy.blo...@proquest.co.uk> wrote:
> >>> >>> > I think you hit the nail on the head Carl. The documentation is
> >>>
> >>> > okay
> >>> >>> generally (some bits poor, some very good) but there is not enough
> to
> >>> tie
> >>> >>> it
> >>> >>> all together and guide new developers so they know what they can do
> >>> with
> >>> >>> T5.
> >>> >>> I'm not convinced that the main documentation should attempt this
> on
> >>> its
> >>> >>> own, or whether it should strive to be a great reference with some
> >>> >>> more
> >>> >>> higher level introductory/discovery bits along with a good
> published
> >>> book
> >>> >>> to
> >>> >>> handle introducing everything and tying it together. Having the
> only
> >>> >>> published book for T5 being so out of date is a huge problem for
> the
> >>> >>> framework in my opinion.
> >>> >>> >
> >>> >>> > I don't think a wiki is the answer to this, I really like knowing
> >>> that
> >>> >>> the documentation that I'm looking at is for a specific version of
> >>> >>> Tapestry
> >>> >>> and is updated when the code is - I would not want to lose that.
> >>> >>> >
> >>> >>> > Andy.
> >>> >>> >
> >>> >>> >> -----Original Message-----
> >>> >>> >> From: Carl Crowder [mailto:carl.crow...@taptu.com]
> >>> >>> >> Sent: 29 April 2009 22:04
> >>> >>> >> To: Tapestry users
> >>> >>> >> Subject: Re: T5: What is NOT beautiful about Tapestry?
> >>> >>> >>
> >>> >>> >> Discovery of it's parts. Franky the documentation is lacking and
> >>> even
> >>> >>> >> with reading the mailing list, reading the howtos wiki, buying
> the
> >>> >>> >> Tapestry 5 book and working with it for over a year I still come
> >>> >>> >>  >>
> >>> >>> >> across
> >>> >>> >> things I never knew existed that would have solved a problem
> I've
> >>> had.
> >>> >>> >> I
> >>> >>> >> often spend ages writing something myself after searching for a
> >>> >>> >> solution.
> >>> >>> >>
> >>> >>> >> What's beautiful about Tapestry? That almost every problem has a
> >>> >>> >>  >>
> >>> >>> >> simple
> >>> >>> >> solution built in. What's not beautiful about Tapestry? That I
> >>> >>> >> generally
> >>> >>> >> find these solutions by accident, and way after I've written my
> >>> >>> >> own!
> >>> >>> >>
> >>> >>> >> Lots of things are obvious and easy to understand once you know
> >>> >>> >> what
> >>> >>> >> they are but it's learning what they are that is the problem.
> I've
> >>> >>
> >>> >>> >> been
> >>> >>> >> waxing lyrical about Tapestry where I work and while the >>> >>
> >>> developers
> >>> >>
> >>> >>> >> who
> >>> >>> >> tried it love it, their main gripe is always that it's difficult
> >>> >>> >> to
> >>> >>> >> understand what it can do.
> >>> >>> >>
> >>> >>> >> The cookbook is the right idea but it's only got 5 entries right
> >>> now.
> >>> >>> >> It
> >>> >>> >> needs to be way more comprehensive
> >>> >>> >>
> >>> >>> >> Inge Solvoll wrote:
> >>> >>> >> > Hi!
> >>> >>> >> >
> >>> >>> >> > I have been reading the "beautiful" thread and added my
> opinion
> >>> >>> >> >  >>
> >>> >
> >>> >>> >> > about
> >>> >>> >> what's
> >>> >>> >> > great about Tapestry. It's nice to sum up why we all are so
> >>> excited
> >>> >>> >> about
> >>> >>> >> > this, it obviously makes both us and the creator(s) feel good
> >>> about
> >>> >>> >> > ourselves. But for a little while, I challenge us all to stop
> >>
> >>> >>> >> >  >
> >>> >>> >> > tapping
> >>> >>> >> each
> >>> >>> >> > others' backs and go into depth about what's not to like about
> >>> >>> >> > our
> >>> >>> >> beloved
> >>> >>> >> > framework.
> >>> >>> >> >
> >>> >>> >> > The most obvious questions that could be asked probably have
> >>>
> >>> >> > some
> >>> >>> >> very
> >>> >>> >> > obvious answers. But T5, as I see it, is all about addressing
> >>> stuff
> >>> >>> >> that
> >>> >>> >> > other frameworks have given up on and create excellent
> >>> >>> >> implementations
> >>> >>> >> > rather than just looking the other way. Difficult and
> >>> uncomfortable
> >>> >>> >> > questions should be addressed the same way.
> >>> >>> >> >
> >>> >>> >> > So:
> >>> >>> >> >
> >>> >>> >> > What are the main reasons that T5 isn't one of the "big ones",
> >>> when
> >>> >>> >> we all
> >>> >>> >> > seem to agree that it is so much better than most other >>> >>
> >
> >>> frameworks
> >>> >>> >> out
> >>> >>> >> > there? Why is T5 NOT beautiful?
> >>> >>> >> >
> >>> >>> >> > Hope I'm not insulting anyone, I'm a big fan too, I just think
> >>> this
> >>> >>> >> actually
> >>> >>> >> > could lead to significant insight :)
> >>> >>> >> >
> >>> >>> >> > Regards
> >>> >>> >> >
> >>> >>> >> > Inge
> >>> >>> >> >
> >>> >>> >>
> >>> >>> >>
> >>> ---------------------------------------------------------------------
> >>> >>> >> To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
> >>> >>> >> For additional commands, e-mail: users-h...@tapestry.apache.org
> >>> >>> >>
> >>> >>> >
> >>> >>> >
> >>> >>> >
> >>> >>> >
> >>> ---------------------------------------------------------------------
> >>> >>> > To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
> >>> >>> > For additional commands, e-mail: users-h...@tapestry.apache.org
> >>> >>> >
> >>> >>> >
> >>> >>>
> >>> >>>
> ---------------------------------------------------------------------
> >>> >>> To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
> >>> >>> For additional commands, e-mail: users-h...@tapestry.apache.org
> >>> >>>
> >>> >>>
> >>> >>
> >>> >>
> >>> >> --
> >>> >> Cumprimentos...
> >>> >> Pedro Januário
> >>> >>
> >>> >
> >>> > ---------------------------------------------------------------------
> >>> > To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
> >>> > For additional commands, e-mail: users-h...@tapestry.apache.org
> >>> >
> >>> >
> >>>
> >>> ---------------------------------------------------------------------
> >>> To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
> >>> For additional commands, e-mail: users-h...@tapestry.apache.org
> >>>
> >>>
> >>>
> >>
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
> > For additional commands, e-mail: users-h...@tapestry.apache.org
> >
> >
>

Reply via email to