• Post Reply Bookmark Topic Watch Topic
  • New Topic

Tapestry and longevity...  RSS feed

 
Darrin Smith
Ranch Hand
Posts: 276
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
I have read that Tapestry seems to be a very nice framework, but there is one thing that really bothers me about it. What I have read is that Tapestry will not support JSF and that it is more of a competitor to JSF twhere as Struts or the Spring framework can integrate with it.

Given that JSF has the backing of Sun, how certain can we be that over the long haul (over 5 years say) Tapestry will survive if it really does compete with JSF?

I asked a similar question on another forum and the response was that Tapestry is now under the Apache umbrella, which gives it some weight, but that didn't convince me 100%.

What I see happening is folks using JSF where they can now with Struts or Spring and using EJB 3.0 in place of Spring when it comes out.

Please convince me I'm wrong here, and it would be worth my effort (stake my career...short term at least) to tackle the Tapestry learning curve. I don't have time to learn it, Struts, Spring and JSF. It must be any two (leaning toward Spring with JSF now).
 
Gregg Bolinger
Ranch Hand
Posts: 15304
6
Chrome IntelliJ IDE Mac OS X
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
My 2 cents for what it is worth. I'm sure Howard will have more of an "insider track" response than me.

I would say that yes, Tapestry is a competitor to JSF. Is that bad? No. That will make JSF strive to be better and make Tapestry strive to be better. Competition is good. Look what happened to the Desktop OS community where MS really has no competition. It sucks.

JSF is nice and from what I have been reading the tool support is comming which will help JSF out temendously.

I have dabbed just enough into both JSF (see my tutorial in my sig) and Tapestry to know that I favor Tapestry over JSF, right now.

Given that JSF has the backing of Sun, how certain can we be that over the long haul (over 5 years say) Tapestry will survive...

No one can be certain, but look at Struts. It's been around for about 4 years now and it is the "Industry Standard" web framework right now. Sun backing, IMHO, doesn't mean a lot to me. Hibernate is probably the most popular persistance API right now. JDO is backed by Sun. The new JDO spec that is planned, from what I have been reading, is going to do a lot of things that Hibernate is doing.

Please convince me I'm wrong here, and it would be worth my effort (stake my career...short term at least) to tackle the Tapestry learning curve. I don't have time to learn it, Struts, Spring and JSF. It must be any two (leaning toward Spring with JSF now).

I'm sure Howard would try and convince you that Tapestry is the way to go. I would if it was my baby. But really, I don't think anyone can convince you. It's really a decision you need to make. But others more in the know than me can help you realize where the industsry is heading right now.

I will say this in closing, Tapestry and JSF are more similar than Tapestry and Stuts or JSF and Struts. I haven't even looked at Spring except to visit the web site so I can't speak intellegently about it.
 
Howard Lewis Ship
author
Ranch Hand
Posts: 38
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Gregg is right ... nobody can convince you but yourself. Please, tell me what "it's a standard" means to you.

Does it mean that it'll work in a wide range of application servers? Tapestry does.

Does it mean that there will be tool support in your IDE? Tapestry has that for Eclipse (Spindle) and more are coming (such as JBuilder).

Doe it mean some kind of pretty drag-and-drop interface tool? No, and Tapestry doesn't want and doesn't need it. D&D UI building doesn't reflect how web apps are really built, where HTML guys use the tools they like (HomeSite, Dreamweaver, etc.) and won't go anywhere near a Java IDE. Tapestry excels in that environment, JSPs, JSF, etc., fall flat.

Does it mean it will be around in five years? Will Sun? Will Java? Will BEA? As an open-source project, Tapestry has a potential longevity that exceeds proprietary companys ... companys can always change focus or go bankrupt. Tapestry is aloof from such concerns.

Results Not Standards is the phrase Rod Johnson (the lead Spring guy) and I came up with. People are getting excellent results with Spring, Tapestry, Hibernate and a number of other non-standards. You can either follow standards, and be at the mercy of vendors, or you can choose to succeed.
 
Darrin Smith
Ranch Hand
Posts: 276
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Originally posted by Howard Lewis Ship:

Results Not Standards is the phrase Rod Johnson (the lead Spring guy) and I came up with. People are getting excellent results with Spring, Tapestry, Hibernate and a number of other non-standards. You can either follow standards, and be at the mercy of vendors, or you can choose to succeed.


How about results with standards? I really don't think that following standards means that you won't succeed, but your point is well taken in that you should use what works.

My point was that if JSF and Tapestry both work, why would you use Tapestry over JSF that integrates with Spring and has the support of Sun? Unless you think that Sun is going under, and even if so, that doesn't mean that JSF wouldn't be picked up any more than it means that Java would die.

Perhaps I should have asked how well Tapestry has been received (as in how many commerical projects are using it). FWIW, I just went to Monster and searched on job openings for Java Struts (a ton came back), Java Spring (many came back), Java JSF (several came back), Java Tapestry (none came back that dealt with the Tapestry framework ).

Again, Tapestry seems nice, but I want to make sure it seems viable long term before spending too much time on it when other tools, IMHO, seem just as nice and MAY be more viable long term.
 
Gregg Bolinger
Ranch Hand
Posts: 15304
6
Chrome IntelliJ IDE Mac OS X
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Originally posted by Darrin Smith:


How about results with standards? I really don't think that following standards means that you won't succeed, but your point is well taken in that you should use what works.

My point was that if JSF and Tapestry both work, why would you use Tapestry over JSF that integrates with Spring and has the support of Sun? Unless you think that Sun is going under, and even if so, that doesn't mean that JSF wouldn't be picked up any more than it means that Java would die.

Perhaps I should have asked how well Tapestry has been received (as in how many commerical projects are using it). FWIW, I just went to Monster and searched on job openings for Java Struts (a ton came back), Java Spring (many came back), Java JSF (several came back), Java Tapestry (none came back that dealt with the Tapestry framework ).

Again, Tapestry seems nice, but I want to make sure it seems viable long term before spending too much time on it when other tools, IMHO, seem just as nice and MAY be more viable long term.


I think the best response to this type of question is, who the heck knows?

Who knew struts was going to be worth invested time back in 2000? Granted, Tapestry has been around just as long, but it is gaining mementum in the community.

Here is my advice. If your concerns are over what do you need to know to get a job, then find out what job requirements are and learn them. Pick up what you need as you go along. don't commit yourself to 1 or 2 things and say, this is what I am going to learn and that's all.

Web Frameworks can be buzztechs. Standards of the moment. Who knows what tommorrow brings in this wacky and crazy technology market we dwell in.

Learn what you need to make a living. Stay familiar with everything else.
[ May 27, 2004: Message edited by: Gregg Bolinger ]
 
Gregg Bolinger
Ranch Hand
Posts: 15304
6
Chrome IntelliJ IDE Mac OS X
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
My point was that if JSF and Tapestry both work, why would you use Tapestry over JSF that integrates with Spring and has the support of Sun? Unless you think that Sun is going under, and even if so, that doesn't mean that JSF wouldn't be picked up any more than it means that Java would die.

Just wanted to put forth one more comment on this. Let's say you know of a feature or issue that needs to be resolved with JSF. Who do you think you might contact at Sun to get this issue or feature implemented? Even if you find the right person, how long before the feature is available or the issue is resolved?

This is one of the most amazing things about the Open Source community, IMO. Tapestry's future is user driven. JSF's is vendor driven.

If I had to guess at the reason Tapestry has taken this long to come of age I think it would be:

  • Good and Available documentation
  • The design


  • To me, Tapestry is really different from Struts, Webworks, and all those familiar frameworks. And I think it's hard for people to look at Tapestry's differences and see that they are actually quite brilliant and innovatiave. Technology is so bla today and because of "what does the industry want" people are scared of innovation. Howard has no fear.
     
    Junilu Lacar
    Sheriff
    Posts: 11494
    180
    Android Debian Eclipse IDE IntelliJ IDE Java Linux Mac Spring Ubuntu
    • Mark post as helpful
    • send pies
    • Quote
    • Report post to moderator
    It does seem to me that Tapestry is still in the "Early Adopters" stage of use at this point, at least in my immediate corner of the world (US Midwest).

    Widespread adoption contributes a lot to longevity; just look at COBOL and FORTRAN. Two years ago, I tried introducing Struts to a project with limited success. After I left the project, the code that I wrote to use Struts was revised to use straight JSPs and servlets. Now most of the web projects that I know of are using Struts. If Tapestry is as good as I've been hearing it to be, it has a great chance of gaining popularity and use in the mainstream.

    The stated principles are encouraging, especially simplicity and consistency. Struts is a good framework but I have seen many variations in its application and use that are often more on the side of misuse and abuse. Of course, any framework can fall victim to the vagaries of a bad developer but at the very least, it should be easy to "get" how the framework fits in with a good OO design. It would be even nicer if the framework somehow forced (albeit gently) you to develop in a way that is consistent with good programming practices and conducive to good designs. Or am I asking too much?
     
    Geoff Longman
    Greenhorn
    Posts: 16
    • Mark post as helpful
    • send pies
    • Quote
    • Report post to moderator
    Originally posted by Junilu Lacar:
    ......It would be even nicer if the framework somehow forced (albeit gently) you to develop in a way that is consistent with good programming practices and conducive to good designs. Or am I asking too much?


    You ask a valid question and I think Tapestry provides its own answer. The 4 goals ( Simplicity, Consistency, Efficiency, and Feedback) are implemented in Tapestry with one overriding driver in mind. That driver is, to paraphase Howard, "The simplest choice is the easiest choice".

    Knowing that when you come up against a business problem, the easiest choice in Tapestry is the right one is a lot better than being forced. Even if its gently!

    Geoff
    [ May 27, 2004: Message edited by: Geoff Longman ]
     
    Junilu Lacar
    Sheriff
    Posts: 11494
    180
    Android Debian Eclipse IDE IntelliJ IDE Java Linux Mac Spring Ubuntu
    • Mark post as helpful
    • send pies
    • Quote
    • Report post to moderator
    Originally posted by Geoff Longman:
    ...That driver is, to paraphase Howard, "The simplest choice is the easiest choice".

    Knowing that when you come up against a business problem, the easiest choice in Tapestry is the right one is a lot better than being forced. Even if its gently!
    [ May 27, 2004: Message edited by: Geoff Longman ]


    "The problem is choice." -- Neo

    Yes, that's what I was looking for: the obvious choice being more likely to be the right one.

    One of the biggest problems I have seen working with Struts is that it's all too easy to make the wrong choices and code yourself into an unrefactorable corner. Framework classes can quickly become Big Balls of Mud in the hands of developers who either don't know any better or are not conscientious enough to spend the time to properly allocate responsibilities.

    Here's a quote from the article that I'm sure many can relate to:

    "...architects depart in futility, while engineers who have mastered the muddy details of the system they have built in their images prevail..."

    If Tapestry can help keep this from happening, I certainly hope it becomes widely used.
     
    • Post Reply Bookmark Topic Watch Topic
    • New Topic
    Boost this thread!