You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@tapestry.apache.org by Erik Hatcher <er...@ehatchersolutions.com> on 2003/11/01 10:20:32 UTC

Training by Howard

First, apologies are in order to the tapestry-user list community.... 
we kidnapped Howard Lewis-Ship for a couple of days for onsite training 
taking him offline from answering questions on the list - please 
forgive us :)  We, in the Darden Solutions Group within Darden Graduate 
Business School at the University of Virginia, decided to switch from 
Struts to Tapestry a few months ago for our next project.  Since then 
we've been an early previewer of Howard's wonderful Tapestry in Action 
book, and working our way through our first passes at implementing a 
Tapestry application.  We had built enough to know what we didn't know 
and where we wanted a quick boost of insight.

Our mission is to develop a suite of applications in a short period of 
time.  We brought Howard in for two days of onsite training to give us 
a kick start in the right direction and ask him detailed questions 
about implementation issues we've encountered.  It started as a 
semi-formal presentation to introduce us to Tapestry and quickly took a 
custom tangent into the areas we were most interested in, like creating 
custom components, how parameters / properties / bindings work, how do 
to deal with form validation, and much more.  Howard was adept at 
fielding our random questions.  At no time did we stump him.  He even 
very quickly picked up on our business use cases and even offered 
suggestions in that realm, unrelated to the gory Tapestry details we 
brought him in for.

Our team greatly appreciated having Howard's time and expertise.  We 
have easily saved weeks of time learning this stuff the hard way, and 
given everyone a very quick boost into how Tapestry works and how to 
use it effectively and properly.

Everyone here knows that Tapestry can have a steeper learning curve 
than other less powerful frameworks.  If your project has the same 
delivery timeframe as ours ("yesterday"), yet you want to do it right, 
I suggest you consider doing what we did and bring Mr. Lewis-Ship in 
for training.

	Erik


---------------------------------------------------------------------
To unsubscribe, e-mail: tapestry-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: tapestry-user-help@jakarta.apache.org


Re: Training by Howard

Posted by Jamie Orchard-Hays <ja...@dang.com>.
See below:


On Nov 1, 2003, at 12:36 PM, James Ward wrote:

> Erik,
> That is very cool.  I would love to hear more about your reasons for
> switching from Struts to Tapestry and what the outcome has been.  How
> much time did Tapestry save you?

We think it's about 2 to 1 or better. Plus, we get better reuse because 
we get real components.

>   What other benefits did you
> experience?

-No http plumbing to deal with--it's all hidden
-OO design
-reusable components
-better productivity
-it's fun

> Was it worth it?

Yes- no question

> How did your organization determine that
> the value of investing time to learn Tapestry exceeded the costs of not
> switching to Tapestry?

We made some prototypes in Tapestry. Based on that we evaluated that 
while we would lose some time ramping up, we would gain it back and 
save a lot of time in the long run.

>  Did your organization evaluate the risks of not
> using the "standard" web framework?

We discussed it. We looked at the pros and cons. We looked at WebWork 
as a possible compromise (more like Struts, but better design that 
Struts). In the end, we like the OO aspect of Tapestry, the component 
reuse, the fun we would have. No one thought Struts was fun.

I'm sure Erik will have more to add ;-)

-Jamie Orchard-Hays

>
> I look forward to your response.
>
> -James
>
>
> On Sat, 2003-11-01 at 02:20, Erik Hatcher wrote:
>> First, apologies are in order to the tapestry-user list community....
>> we kidnapped Howard Lewis-Ship for a couple of days for onsite 
>> training
>> taking him offline from answering questions on the list - please
>> forgive us :)  We, in the Darden Solutions Group within Darden 
>> Graduate
>> Business School at the University of Virginia, decided to switch from
>> Struts to Tapestry a few months ago for our next project.  Since then
>> we've been an early previewer of Howard's wonderful Tapestry in Action
>> book, and working our way through our first passes at implementing a
>> Tapestry application.  We had built enough to know what we didn't know
>> and where we wanted a quick boost of insight.
>>
>> Our mission is to develop a suite of applications in a short period of
>> time.  We brought Howard in for two days of onsite training to give us
>> a kick start in the right direction and ask him detailed questions
>> about implementation issues we've encountered.  It started as a
>> semi-formal presentation to introduce us to Tapestry and quickly took 
>> a
>> custom tangent into the areas we were most interested in, like 
>> creating
>> custom components, how parameters / properties / bindings work, how do
>> to deal with form validation, and much more.  Howard was adept at
>> fielding our random questions.  At no time did we stump him.  He even
>> very quickly picked up on our business use cases and even offered
>> suggestions in that realm, unrelated to the gory Tapestry details we
>> brought him in for.
>>
>> Our team greatly appreciated having Howard's time and expertise.  We
>> have easily saved weeks of time learning this stuff the hard way, and
>> given everyone a very quick boost into how Tapestry works and how to
>> use it effectively and properly.
>>
>> Everyone here knows that Tapestry can have a steeper learning curve
>> than other less powerful frameworks.  If your project has the same
>> delivery timeframe as ours ("yesterday"), yet you want to do it right,
>> I suggest you consider doing what we did and bring Mr. Lewis-Ship in
>> for training.
>>
>> 	Erik
>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: tapestry-user-unsubscribe@jakarta.apache.org
>> For additional commands, e-mail: tapestry-user-help@jakarta.apache.org
>>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: tapestry-user-unsubscribe@jakarta.apache.org
> For additional commands, e-mail: tapestry-user-help@jakarta.apache.org
>
>


---------------------------------------------------------------------
To unsubscribe, e-mail: tapestry-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: tapestry-user-help@jakarta.apache.org


Re: Training by Howard

Posted by Erik Hatcher <er...@ehatchersolutions.com>.
On Sunday, November 2, 2003, at 01:07  PM, Kevin C. Dorff wrote:
> What Erik did with bringing in HLS was probably cut a few corners by 
> getting some direct training... people go to training courses all the 
> time -- there just doesn't exist a Tapestry course at Learning Tree 
> (yet, maybe some day). There was very little they learned from HLS 
> they couldn't have learned with a little elbow grease, studying, and 
> some postings to this group, I would venture. HLS is active in this 
> mail list and answers questions actively.

Bingo.  We had already implemented quite a bit of stuff in our app and 
were quite pleased with where we were with it.  Having Howard in person 
onsite was great to hone in on those tougher things (what about 
parameters/properties, inherited bindings, and much more) that would 
have taken us longer on our own (but we would have figured it out 
nonetheless!).

	Erik


---------------------------------------------------------------------
To unsubscribe, e-mail: tapestry-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: tapestry-user-help@jakarta.apache.org


Re: Training by Howard

Posted by "Kevin C. Dorff" <kd...@dorffweb.com>.
Learning any new technology has its hits and its misses. You can never 
hope to "get it right" but you can continually get it closer and closer 
to right, with effort.

You can use the information available (provided online documentation 
which includes samples, books as they become available, tutorials as 
they become available, sample code such as workbench, peers such as 
other people in your organization and this mailing list) and then you 
spend time developing your own applications, start with small things, 
when you cannot figure something out ask your peers, study the 
documentation and the like, look at the sample code. I would encourge 
you to recruit others in your organization to start learning Tapestry as 
your are learning it ... two learning new technologies faster that one.

Be persistant, don't give up, implement as you best know how and be 
ready to reimplement when you learn better ways. Nobody has ever said 
learning Tapestry was easy. Help exists, more help is on the way (the 
new tutorial will hopefully available today, the book available "soon" 
-- chapter by chapter starting, hopefully, this month, the book probably 
in January or so).

Keep in mind that even if the book answered every question and exposed 
every pitfall, you would have to read it all and understand it all to 
avoid those pitfalls. Such is not only unlikely but probably impossible. 
In learning Tapestry (or any new technology) you will make mistakes -- 
ask questions, and learn from your mistakes. Don't let your mistakes 
frustrate you to the point of quitting and don't expect any magic 
bullets... learning is time consuming but rewarding.

What Erik did with bringing in HLS was probably cut a few corners by 
getting some direct training... people go to training courses all the 
time -- there just doesn't exist a Tapestry course at Learning Tree 
(yet, maybe some day). There was very little they learned from HLS they 
couldn't have learned with a little elbow grease, studying, and some 
postings to this group, I would venture. HLS is active in this mail list 
and answers questions actively.

I am about 6 weeks into Tapestry and love it but the first week or two 
WAS PAINFUL. I am now quite productive with Tapestry but I don't even 
come close to "knowing it all" even though I have not read the Manning 
Book nor have I have not paid HLS to come talk to me. I have had the 
benefit of one peer at work who has been using Tapestry for a bit longer 
than I have, the online documentation, this mailing list (with lots of 
searches), and the workbench application.

Good luck on your Tapestry quest, be diligent and you will be rewarded.
Kevin

Ido M. Tamir wrote:

>If you, the "great, well-connected, finger-on-the-pulse kind of guy" (HLS) can't make it perfect without Howard, how should I ever get it right.
>
>Will "Tapestry in action" tell me about the pitfalls? -
>But you have also read it, you wrote.
>
>Best wishes
>
>Ido 
>  
>




---------------------------------------------------------------------
To unsubscribe, e-mail: tapestry-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: tapestry-user-help@jakarta.apache.org


RE: Training by Howard

Posted by "Howard M. Lewis Ship" <hl...@comcast.net>.
There's a difference between getting it right eventually, and getting it right NOW. When you bring
in a domain expert, you should be doing so to save time. Everyone in the class felt that they could
eventually understand all the details and connections inside Tapestry given enough time, but were
pleased to get a big jump-start ... big enough to more than cover the (modest!) expense of briging
me down to Virginia for two days.

--
Howard M. Lewis Ship
Creator, Tapestry: Java Web Components
http://jakarta.apache.org/tapestry
http://jakarta.apache.org/commons/sandbox/hivemind/
http://javatapestry.blogspot.com

> -----Original Message-----
> From: Ido M. Tamir [mailto:tamir@imp.univie.ac.at] 
> Sent: Sunday, November 02, 2003 11:48 AM
> To: Tapestry users
> Subject: Re: Training by Howard
> 
> 
> On Sunday 02 Nov 2003 4:01 pm, Erik Hatcher wrote:
> 
> > Already we've got a cool custom wrapper component over 
> contrib:Table, 
> > message resources in the database, and a login application 
> inside our 
> > WAR file that allows our main "/app" to work with J2EE security 
> > decently.  Each of these customizations were less than perfect and 
> > having Howard in to critique them was extremely valuable 
> and I'll be 
> > fixing up the loose ends on those things soon based on 
> recommendations 
> > from Howard.
> >
> > 	Erik
> 
> If you, the "great, well-connected, finger-on-the-pulse kind 
> of guy"(HLS) 
> can't make it perfect without Howard, how should I ever get it right.
> 
> Will "Tapestry in action" tell me about the pitfalls? -
> But you have also read it, you wrote.
> 
> Best wishes
> 
> Ido 
> 
> 
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: tapestry-user-unsubscribe@jakarta.apache.org
> For additional commands, e-mail: tapestry-user-help@jakarta.apache.org
> 


---------------------------------------------------------------------
To unsubscribe, e-mail: tapestry-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: tapestry-user-help@jakarta.apache.org


Re: Training by Howard

Posted by Erik Hatcher <er...@ehatchersolutions.com>.
On Sunday, November 2, 2003, at 11:48  AM, Ido M. Tamir wrote:
> If you, the "great, well-connected, finger-on-the-pulse kind of 
> guy"(HLS)
> can't make it perfect without Howard, how should I ever get it right.
>
> Will "Tapestry in action" tell me about the pitfalls? -
> But you have also read it, you wrote.

Fair questions.  First, I'm learn by trying and failing and tweaking 
and trying again.  That is what I've done.  I've learned more from 
Tapestry's source code than anywhere else, and that is how I figured 
out how to do the message resources thing as that is an advanced topic 
not even covered in his book (or at least not in much detail).  
Howard's book gave me insight into lots and lots of API things to look 
into and it put me on the right path no question.  Also, I've read 
Howard's earlier drafts of the book, and it has since been refactored 
and improved - I have not looked at the new revisions - and I've read 
it in Word document form (I much prefer the dead-tree version 
personally, and its hard for me to really get a lot out of electronic 
versions).  Keep in mind that I do Tapestry half-time, or less (as I 
have other responsibilities beyond just Tapestry) and I think I've come 
up to speed pretty rapidly even before having Howard come in.

Yes, Tapestry in Action will definitely give you a great head-start.  
Much better than trying by yourself with just the Javadocs and a simple 
tutorial.

There is no question that Tapestry has a steep learning curve.  The 
same was for WebObjects.  WO is still known as the king of all web 
presentation tier frameworks.  Writing reusable components requires 
know-how.  Creating a custom Engine implementation requires you know 
what the implications are (as in, I learned quickly that there is one 
engine instance per session, which really is important to know when 
caching message resources!).

	Erik


---------------------------------------------------------------------
To unsubscribe, e-mail: tapestry-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: tapestry-user-help@jakarta.apache.org


Re: Training by Howard

Posted by "Ido M. Tamir" <ta...@imp.univie.ac.at>.
On Sunday 02 Nov 2003 4:01 pm, Erik Hatcher wrote:

> Already we've got a cool custom wrapper component over contrib:Table,
> message resources in the database, and a login application inside our
> WAR file that allows our main "/app" to work with J2EE security
> decently.  Each of these customizations were less than perfect and
> having Howard in to critique them was extremely valuable and I'll be
> fixing up the loose ends on those things soon based on recommendations
> from Howard.
>
> 	Erik

If you, the "great, well-connected, finger-on-the-pulse kind of guy"(HLS) 
can't make it perfect without Howard, how should I ever get it right.

Will "Tapestry in action" tell me about the pitfalls? -
But you have also read it, you wrote.

Best wishes

Ido 




---------------------------------------------------------------------
To unsubscribe, e-mail: tapestry-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: tapestry-user-help@jakarta.apache.org


Re: Training by Howard

Posted by Erik Hatcher <er...@ehatchersolutions.com>.
On Saturday, November 1, 2003, at 12:36  PM, James Ward wrote:
> Erik,
> That is very cool.  I would love to hear more about your reasons for
> switching from Struts to Tapestry and what the outcome has been.  How
> much time did Tapestry save you?  What other benefits did you
> experience?  Was it worth it?  How did your organization determine that
> the value of investing time to learn Tapestry exceeded the costs of not
> switching to Tapestry?  Did your organization evaluate the risks of not
> using the "standard" web framework?
>
> I look forward to your response.

Jamie responded before I got a chance and said what I would have said.  
We're still in the early stages of our Tapestry work, but everyone 
working on it is more than pleased with it.  We decided to reevaluate 
all aspects of our architecture between projects (as we all should!) 
and Struts was an area where we had spent the most time.  It shouldn't 
be this way - we should be spending the bulk of our time in our 
business logic and value-add to our clients, not on writing plumbing.  
Now that we seem to have a good handle on Tapestry I think we can do 
just that.

We aren't sure how much Tapestry will save us in time, but we're all 
pretty sure it will over the long term of developing several 
applications in a suite and getting component reuse.  Thankfully we're 
in an environment where management says "get the job done" rather than 
mandating how we get it done.  So while Struts does have some benefits 
in the hiring process and in terms of other resources available, we 
decided the time saved and elegance of the architecture was more 
important.

Yes, we'll have some areas where we'll end up doing custom Tapestry 
stuff, but hopefully these are things I can take care of as a part-time 
consultant rather than letting the full-time staff deal with it.  
Already we've got a cool custom wrapper component over contrib:Table, 
message resources in the database, and a login application inside our 
WAR file that allows our main "/app" to work with J2EE security 
decently.  Each of these customizations were less than perfect and 
having Howard in to critique them was extremely valuable and I'll be 
fixing up the loose ends on those things soon based on recommendations 
from Howard.

	Erik



---------------------------------------------------------------------
To unsubscribe, e-mail: tapestry-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: tapestry-user-help@jakarta.apache.org


Re: Training by Howard

Posted by James Ward <ja...@ectropic.com>.
Erik,
That is very cool.  I would love to hear more about your reasons for
switching from Struts to Tapestry and what the outcome has been.  How
much time did Tapestry save you?  What other benefits did you
experience?  Was it worth it?  How did your organization determine that
the value of investing time to learn Tapestry exceeded the costs of not
switching to Tapestry?  Did your organization evaluate the risks of not 
using the "standard" web framework?

I look forward to your response.

-James


On Sat, 2003-11-01 at 02:20, Erik Hatcher wrote:
> First, apologies are in order to the tapestry-user list community.... 
> we kidnapped Howard Lewis-Ship for a couple of days for onsite training 
> taking him offline from answering questions on the list - please 
> forgive us :)  We, in the Darden Solutions Group within Darden Graduate 
> Business School at the University of Virginia, decided to switch from 
> Struts to Tapestry a few months ago for our next project.  Since then 
> we've been an early previewer of Howard's wonderful Tapestry in Action 
> book, and working our way through our first passes at implementing a 
> Tapestry application.  We had built enough to know what we didn't know 
> and where we wanted a quick boost of insight.
> 
> Our mission is to develop a suite of applications in a short period of 
> time.  We brought Howard in for two days of onsite training to give us 
> a kick start in the right direction and ask him detailed questions 
> about implementation issues we've encountered.  It started as a 
> semi-formal presentation to introduce us to Tapestry and quickly took a 
> custom tangent into the areas we were most interested in, like creating 
> custom components, how parameters / properties / bindings work, how do 
> to deal with form validation, and much more.  Howard was adept at 
> fielding our random questions.  At no time did we stump him.  He even 
> very quickly picked up on our business use cases and even offered 
> suggestions in that realm, unrelated to the gory Tapestry details we 
> brought him in for.
> 
> Our team greatly appreciated having Howard's time and expertise.  We 
> have easily saved weeks of time learning this stuff the hard way, and 
> given everyone a very quick boost into how Tapestry works and how to 
> use it effectively and properly.
> 
> Everyone here knows that Tapestry can have a steeper learning curve 
> than other less powerful frameworks.  If your project has the same 
> delivery timeframe as ours ("yesterday"), yet you want to do it right, 
> I suggest you consider doing what we did and bring Mr. Lewis-Ship in 
> for training.
> 
> 	Erik
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: tapestry-user-unsubscribe@jakarta.apache.org
> For additional commands, e-mail: tapestry-user-help@jakarta.apache.org
> 


---------------------------------------------------------------------
To unsubscribe, e-mail: tapestry-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: tapestry-user-help@jakarta.apache.org