While one can disagree about the actual productivity increase offered by an IDE plugin, you can't deny that it is a major plus for new adoptions. That said, I think Tapestry is in a unique situation with the incompatibility between T3, 4 and 5. We've developed some large applications using T3 and given the direction Tap is heading in, are definitely going to evaluate other frameworks when we think of upgrading (high barrier to upgrade implies lower barrier to exit the platform). As it is, I have no incentive to adopt T4 when T5 is going to be different. By the time T5 matures, there will be several other frameworks (including Wicket, Echo2 and perhaps even .NET 2.0) that will be exciting alternatives. At the end of the day, even though I am a technologist at heart, technology exists because of business and businesses don't care about how "cool" your internal architecture is, they care about not spending millions to just upgrade to the latest without a proportional increase in business functionality or decrease in cost of operations neither of which are the case here IMHO.

Now before you respond, please note this is my personal experience. I'm sure others will beg to disagree. I am making this post for those in a similar situation aware of this being a shared experience (I know people have posted of how they vouched for Tapestry only to look not so favorable a few years down the road). With the current trend future compatibility will always be broken because there will always be the next great thing and so the temptation to make T6 incompatible. T3 for all its worth gives me enough so I can weigh options and evaluate trends with leisure.

T3: Judgement day!


----- Original Message ----- From: "andyhot" <[EMAIL PROTECTED]>
To: "Tapestry users" <users@tapestry.apache.org>
Sent: Tuesday, August 29, 2006 8:10 PM
Subject: Re: TapIDEA future, post "Time to move on"


spindle-core (for Tap4) does this way in an IDE independent way.

I was taking a look at it 4 months ago, and I was able to do exactly this.
For instance:
public static void main(String[] args) {
       TapestryCore core = new TapestryCore(new TestLogger(),
               new LocalCoreListeners(), new LocalPreferenceSource());
       ITapestryProject project = new LocalProject();
       LocalBuild build = new LocalBuild(project);

       build.build(false, new HashMap());

       System.out.println(build.problemPersister);
   }

All Local* classes where my implementations for the IDE-agnostic interfaces
that spindle-core provides.
When i first tried it, it did output a few non errors (i think it didn't
understand default-value)
so I don't know what (other) errors currently exist.
I can give the latest version a try in a big project and see how it goes.

Konstantin Ignatyev wrote:
Agreed, but that could be done as build time 'check'
step. Something like JSP compiler task
http://ant.apache.org/manual/OptionalTasks/jspc.html

I think it could be easier to create than full IDE
plugin and such core service might be a very good
foundation for people willing to build IDE specific UI
layer atop of it.

--- D&J Gredler <[EMAIL PROTECTED]> wrote:


I mostly agree with you that current tooling gets us
pretty far, but there's
a lot to be said for turning the most frequent
"runtime" errors into
"compile-time" errors, something that often requires
special Tapestry
awareness.

On 8/29/06, Konstantin Ignatyev
<[EMAIL PROTECTED]> wrote:


My point is that in case of Tapestry/Wicket there

is

no need to worry much about tools, because

existing

ones provide pretty good environment to work

within.

Therefore focus on APIs and conventions seems very
reasonable to me.





---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]





--
Andreas Andreou - [EMAIL PROTECTED] - http://andyhot.di.uoa.gr
Tapestry / Tacos developer
Open Source / J2EE Consulting


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to