You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@tapestry.apache.org by Todd O'Bryan <to...@mac.com> on 2004/12/08 05:39:54 UTC

Making the learning curve more shallow

My situation is, I'm sure, atypical for people on the list. I use 
Tapestry as a hobby. Not really, I actually use it for my job somewhat, 
but I teach high school computer science and seem to spend more time 
trying to correct problems in machine configurations so that my 
students can run Eclipse than I do actually teaching them to use 
Tapestry. As a result, I program with Tapestry a couple of hours every 
couple of days, with long blocks on the weekends.

One of the things that most frustrates me about the framework is that 
so many problems never get caught until I actually try to use the 
webapp. Spindle does a great job of checking what it can, but I can 
bounce between trying to load a page and editing it three or four times 
if it's at all complicated. Obviously, the heavy reliance on abstract 
classes and OGNL leads to this problem, and I'm not sure how amenable 
to fixing it might be.

Do other people feel that this late feedback makes the framework seem 
more difficult to use and that earlier discovery of errors (compile 
time, rather than runtime) would make the learning curve seem less 
steep? Or maybe I'm just a big baby...

Todd


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


Re: Making the learning curve more shallow

Posted by Luc Peerdeman <lj...@xs4all.nl>.
Hi Michael,

I have nothing against scripted languages, but Eclipse (in debug mode, 
with a JVM that understands how to handle hotfixes) + Spindle should 
already give instant fixing. Disabling caching totally is not necessary 
for that (and is also slower and leaks memory), calling the Tapestry 
reset service after each edit should suffice. If Spindle could do this 
automatically (don't think this is supported now) the difference with a 
script language would be neglicable.

Cheers, Luc.

Michael Henderson wrote:

> Hi,
>    Tapestry has an option for development to disable caching of page 
> templates and specifications (can't remember it off the top of my head - 
> it's on the wiki), couple that with
> listeners scripted with Groovestry (groovestry.sf.net) and you get 
> instant fixing. If your using a well formed controller layer and an IOC 
> container like Spring or Hivemind them listener code is pretty trivial 
> and you can always compile the groovy scripts for deployment.


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


Re: Making the learning curve more shallow

Posted by Michael Henderson <mh...@mac.com>.
Hi,
    Tapestry has an option for development to disable caching of page 
templates and specifications (can't remember it off the top of my head - 
it's on the wiki), couple that with
listeners scripted with Groovestry (groovestry.sf.net) and you get 
instant fixing. If your using a well formed controller layer and an IOC 
container like Spring or Hivemind them listener code is pretty trivial 
and you can always compile the groovy scripts for deployment.

Example at:

    http://examples.mjhenderson.com/groovestrysample/app

You can browse the script source in the custom Tapestry Inspector

Mike


Todd O'Bryan wrote:

> My situation is, I'm sure, atypical for people on the list. I use 
> Tapestry as a hobby. Not really, I actually use it for my job 
> somewhat, but I teach high school computer science and seem to spend 
> more time trying to correct problems in machine configurations so that 
> my students can run Eclipse than I do actually teaching them to use 
> Tapestry. As a result, I program with Tapestry a couple of hours every 
> couple of days, with long blocks on the weekends.
>
> One of the things that most frustrates me about the framework is that 
> so many problems never get caught until I actually try to use the 
> webapp. Spindle does a great job of checking what it can, but I can 
> bounce between trying to load a page and editing it three or four 
> times if it's at all complicated. Obviously, the heavy reliance on 
> abstract classes and OGNL leads to this problem, and I'm not sure how 
> amenable to fixing it might be.
>
> Do other people feel that this late feedback makes the framework seem 
> more difficult to use and that earlier discovery of errors (compile 
> time, rather than runtime) would make the learning curve seem less 
> steep? Or maybe I'm just a big baby...
>
> Todd
>
>
> ---------------------------------------------------------------------
> 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: Making the learning curve more shallow

Posted by Matt Raible <li...@raibledesigns.com>.
On Dec 7, 2004, at 9:39 PM, Todd O'Bryan wrote:

> My situation is, I'm sure, atypical for people on the list. I use 
> Tapestry as a hobby. Not really, I actually use it for my job 
> somewhat, but I teach high school computer science and seem to spend 
> more time trying to correct problems in machine configurations so that 
> my students can run Eclipse than I do actually teaching them to use 
> Tapestry. As a result, I program with Tapestry a couple of hours every 
> couple of days, with long blocks on the weekends.
>
> One of the things that most frustrates me about the framework is that 
> so many problems never get caught until I actually try to use the 
> webapp. Spindle does a great job of checking what it can, but I can 
> bounce between trying to load a page and editing it three or four 
> times if it's at all complicated. Obviously, the heavy reliance on 
> abstract classes and OGNL leads to this problem, and I'm not sure how 
> amenable to fixing it might be.

I used Howard's Tapestry Test Assist and the TapestryTestCase in CVS to 
come up with a way to test pages out-of-container.

Tapestry Test Assist: 
http://howardlewisship.com/blog/2004/05/tapestry-test-assist.html

BasePageTestCase (http://tinyurl.com/4vy9y) is the parent class for all 
my tests and loads a Spring ApplicationContext so I can set my service 
layer classes on my pages.

All junit tests: http://tinyurl.com/3tcs6

Then I use Canoo's WebTest (webtest.canoo.com) to test all my pages 
(even works with JavaScript) and confirm there are no 
errors/exceptions.  Works pretty slick.

All this is in AppFuse 1.7, which I hope to release later this evening.

Matt

>
> Do other people feel that this late feedback makes the framework seem 
> more difficult to use and that earlier discovery of errors (compile 
> time, rather than runtime) would make the learning curve seem less 
> steep? Or maybe I'm just a big baby...
>
> Todd
>
>
> ---------------------------------------------------------------------
> 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


Parameters in HTML-only Components

Posted by Andrew Chung <an...@rogers.com>.
Can someone verify this for me?

I'm testing various ways to build a Tapestry based web-site.

What I'd like to to do is be able to pass parameters down to a HTML-only 
component (i.e. no custom component class in the background) and have the 
passed parameters incorporated in the component.

Some code can be passed and bound using component binding but I'm looking 
for something more generic.

For example, I may have.

<span jwcid="@OutlinedBox" bgcolor="FFFFFF" boxcolor="000000" margin="4">
Some content here
</span>

which I'd like to show up as

<table border="0" cellspacing="0" cellpadding="1" bgcolor="000000">
<tr>
<td>
<table border="0" cellspacing="0" cellpadding="4" bgcolor="FFFFFF">
<tr>
<td>
Some content here
</td>
</tr>
</table>
</td>
</tr>
</table>

I can write a custom component class for OutlinedBox to output this.

Is there any way that an HTML only component, i.e OutlinedBox.html can be 
written to achieve this?

I have read the book and the online guide and it seems that a custom class 
is the only way.
In essense, I guess that is what all the base and contrib components are.


Regards,
Andrew


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


Re: Making the learning curve more shallow

Posted by Vince Marco <vm...@mac.com>.
I do a lot of J2EE instruction and development, and as a provider of 
technical training I would say that teaching of problem solving skills 
and the basics of technical theory does require a vehicle.  I'd rather 
see Tapestry as that vehicle rather than model 1 servlet/JSP apps or 
struts apps.  This statement seems to assume that exposure to Tapestry 
would preclude learning of algorithms and data structures.

<sarcasm>
	Of course if we start doing a better job teaching students in HS and 
college, this could dip into the need for corporate training.  Perhaps 
that isn't such a good idea.
</sarcasm>

I do see your point on covering the basics, and I agree with it 
entirely.  But all too often courses do not provide a concrete vehicle 
to enable students to realize results from the theory.  If these kids 
are building web apps (and I know they are), then why not an exposure 
to Tapestry.  Would you have them learn JSPs?  Why?  It certainly can't 
be because of widespread adoption.   You've already indicated that HS 
is not focused upon producing web developers, so current mainstream 
tools shouldn't be an issue.

I apologize if this post sounds like a harsh response.  It isn't.  I 
very much appreciate you raising the topic of learning Francis.  
Tapestry really does highlight the need to refine and extend our 
standard teaching tools and strategies to help foster new innovations 
in technology.  I plan on releasing some learning products during this 
next year to help with that ... some targeting Tapestry.  And I must 
thank and commend the folks who have already written books and 
tutorials to help us all out.

Vince

On Dec 8, 2004, at 6:34 AM, Francis Amanfo wrote:

> You're teaching Tapestry to your students at high school? Don't you 
> think at that age you rather have to focus your students on problem 
> solving skills such as algorithms and datastructures instead of 
> technology dependent stuufs since technologies come an go? Who says 
> Tapestry or worse, Java would still be the hot thing when they 
> graduate from university?
> Or are you doing this because it's the only way to motivate you to 
> learn Tapestry?


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


Re: Making the learning curve more shallow

Posted by Jamie Orchard-Hays <ja...@dang.com>.
I just implemented this and tried it out. Man, that rocks! Thanks to Laurent 
Etiemble!

Jamie

----- Original Message ----- 
From: "Jonathan Millett" <jo...@millett.net>
To: "Tapestry users" <ta...@jakarta.apache.org>
Sent: Wednesday, December 08, 2004 10:23 AM
Subject: Re: Making the learning curve more shallow

> I think we are all fighting this battle.  Just try to minimize the 
> edit/test cycle roundtrip delay and keep in mind that with more 
> experience, you will make a lot less typos.  Incidentally, you might be 
> interested in this tapestry add on which improves error reporting to show 
> highlighted source code:
> http://www.jroller.com/page/letiemble/
>
> Jon
>
> ---------------------------------------------------------------------
> 


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


Re: Making the learning curve more shallow

Posted by Jonathan Millett <jo...@millett.net>.
> On Tue, 7 Dec 2004, Todd O'Bryan wrote:
>
> My situation is, I'm sure, atypical for people on the list. I use 
> Tapestry as a hobby. Not really, I actually use it for my job 
> somewhat, but I teach high school computer science and seem to spend 
> more time trying to correct problems in machine configurations so that 
> my students can run Eclipse than I do actually teaching them to use 
> Tapestry. As a result, I program with Tapestry a couple of hours every 
> couple of days, with long blocks on the weekends.

It is awesome that you're teaching tapestry to the students!
I wish I had had such a teacher :)

> One of the things that most frustrates me about the framework is that 
> so many problems never get caught until I actually try to use the 
> webapp. Spindle does a great job of checking what it can, but I can 
> bounce between trying to load a page and editing it three or four 
> times if it's at all complicated. Obviously, the heavy reliance on 
> abstract classes and OGNL leads to this problem, and I'm not sure how 
> amenable to fixing it might be.

I think we are all fighting this battle.  Just try to minimize the 
edit/test cycle roundtrip delay and keep in mind that with more 
experience, you will make a lot less typos.  Incidentally, you might be 
interested in this tapestry add on which improves error reporting to 
show highlighted source code:
http://www.jroller.com/page/letiemble/

Jon

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


Re: Making the learning curve more shallow

Posted by Daniel Daniel <ho...@hotmail.com>.
gees I wish i got to learn some of that stuff in high school the closeest I 
got to that was excel. and a little bit of VB.



>From: Todd O'Bryan <to...@mac.com>
>Reply-To: "Tapestry users" <ta...@jakarta.apache.org>
>To: Tapestry users <ta...@jakarta.apache.org>
>Subject: Re: Making the learning curve more shallow
>Date: Wed, 8 Dec 2004 19:24:20 -0500
>
>Thanks to Erik and many others for defending me in my absence. (The school 
>system blocks access to my home email when I'm at school, so I just saw 
>these exchanges.)
>
>To allay Francis's fears, my students have previously had two years of 
>programming which covered basic OOP and introductory language constructs 
>plus data structures (stacks, queues, linked lists, binary trees--all of 
>which they really had to implement) and algorithmic analysis (big-Oh for 
>best, worst, and average cases). If they were CS majors in college, they'd 
>be doing something like Assembly, Operating Systems, or Theory of 
>Computation, and since they're never going to get credit for those classes, 
>I wanted to give them a taste of what it's like to work on a fairly large, 
>jointly developed project. I considered a Swing App, but there are lots of 
>things we currently don't have at school (message boards for classes, 
>online grade posting, etc.) that we really need, so the two ideas seemed to 
>dovetail nicely.
>
>Unfortunately, the kids get frustrated easily, and setting up all the 
>computers in my lab correctly so that all the jars are where they belong, 
>all the permissions are set correctly, and the magic happens is not 
>trivial. In addition, due to a virus outbreak, the board of education 
>knocked us off the internet for over two weeks while they sorted it out, 
>leaving my students with no access to the CVS server we're using. When they 
>finally got things working again, they had completely changed the students' 
>login permissions, home folder locations, and left them unable to get back 
>to previously stored network drives. I'm still sorting out the mess. 
>Tomorrow I may teach them FSAs.
>
>Todd
>
>P.S. Yes, we're a public school. We have a magnet program in math, science, 
>and technology that offers an introductory programming class to sophomores 
>(I'm using Scheme this year), AP Computer Science AB for juniors (roughly 
>the first year of college), and then a follow-up course called "Special 
>Topics" for the seniors. That's where we're doing Tapestry.
>
>On Dec 8, 2004, at 8:35 AM, Erik Hatcher wrote:
>
>>On Dec 8, 2004, at 8:34 AM, Francis Amanfo wrote:
>>>You're teaching Tapestry to your students at high school? Don't you think 
>>>at that age you rather have to focus your students on problem solving 
>>>skills such as algorithms and datastructures instead of technology 
>>>dependent stuufs since technologies come an go?
>>
>>Datastructures like Stack and Queue and HashMap?  Aren't those built-in to 
>>the language now?  :))
>>
>>Problem solving skills?  Like how to learn Tapestry by experimentation, 
>>reading documents, researching solutions posed in this exact forum.  
>>Sounds good to me.
>>
>>How about teaching them modern day component oriented web development?  
>>Ah, Tapestry!
>>
>>>  Who says Tapestry or worse, Java would still be the hot thing when they 
>>>graduate from university?
>>
>>So you think teaching theory is the way to educate?  What language would 
>>you propose be used?
>>
>>I'm a big fan of concrete non-abstract real-world physical learning.  
>>Theory is nice and all, but much better to have some concrete footing to 
>>stand on when going there.
>>
>>>Or are you doing this because it's the only way to motivate you to learn 
>>>Tapestry?
>>
>>The teacher must show the students how to learn by learning him/herself 
>>right there in front of them.  Lead by example - teach them how to learn 
>>by learning yourself, not by regurgitating facts.
>>
>>	Erik
>>
>>
>>>
>>>Best regards,
>>>
>>>Francis
>>>
>>>On Tue, 7 Dec 2004, Todd O'Bryan wrote:
>>>
>>>>My situation is, I'm sure, atypical for people on the list. I use 
>>>>Tapestry as a hobby. Not really, I actually use it for my job somewhat, 
>>>>but I teach high school computer science and seem to spend more time 
>>>>trying to correct problems in machine configurations so that my students 
>>>>can run Eclipse than I do actually teaching them to use Tapestry. As a 
>>>>result, I program with Tapestry a couple of hours every couple of days, 
>>>>with long blocks on the weekends.
>>>>
>>>>One of the things that most frustrates me about the framework is that so 
>>>>many problems never get caught until I actually try to use the webapp. 
>>>>Spindle does a great job of checking what it can, but I can bounce 
>>>>between trying to load a page and editing it three or four times if it's 
>>>>at all complicated. Obviously, the heavy reliance on abstract classes 
>>>>and OGNL leads to this problem, and I'm not sure how amenable to fixing 
>>>>it might be.
>>>>
>>>>Do other people feel that this late feedback makes the framework seem 
>>>>more difficult to use and that earlier discovery of errors (compile 
>>>>time, rather than runtime) would make the learning curve seem less 
>>>>steep? Or maybe I'm just a big baby...
>>>>
>>>>Todd
>>>>
>>>>
>>>>---------------------------------------------------------------------
>>>>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
>>
>
>
>---------------------------------------------------------------------
>To unsubscribe, e-mail: tapestry-user-unsubscribe@jakarta.apache.org
>For additional commands, e-mail: tapestry-user-help@jakarta.apache.org
>

_________________________________________________________________
Sell your car for $9 on carpoint.com.au  
http://server-au.imrworldwide.com/cgi-bin/b?cg=link&ci=ninemsn&tu=http://carpoint.ninemsn.com.au?refid=hotmail_tagline


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


Re: Making the learning curve more shallow

Posted by Todd O'Bryan <to...@mac.com>.
Thanks to Erik and many others for defending me in my absence. (The 
school system blocks access to my home email when I'm at school, so I 
just saw these exchanges.)

To allay Francis's fears, my students have previously had two years of 
programming which covered basic OOP and introductory language 
constructs plus data structures (stacks, queues, linked lists, binary 
trees--all of which they really had to implement) and algorithmic 
analysis (big-Oh for best, worst, and average cases). If they were CS 
majors in college, they'd be doing something like Assembly, Operating 
Systems, or Theory of Computation, and since they're never going to get 
credit for those classes, I wanted to give them a taste of what it's 
like to work on a fairly large, jointly developed project. I considered 
a Swing App, but there are lots of things we currently don't have at 
school (message boards for classes, online grade posting, etc.) that we 
really need, so the two ideas seemed to dovetail nicely.

Unfortunately, the kids get frustrated easily, and setting up all the 
computers in my lab correctly so that all the jars are where they 
belong, all the permissions are set correctly, and the magic happens is 
not trivial. In addition, due to a virus outbreak, the board of 
education knocked us off the internet for over two weeks while they 
sorted it out, leaving my students with no access to the CVS server 
we're using. When they finally got things working again, they had 
completely changed the students' login permissions, home folder 
locations, and left them unable to get back to previously stored 
network drives. I'm still sorting out the mess. Tomorrow I may teach 
them FSAs.

Todd

P.S. Yes, we're a public school. We have a magnet program in math, 
science, and technology that offers an introductory programming class 
to sophomores (I'm using Scheme this year), AP Computer Science AB for 
juniors (roughly the first year of college), and then a follow-up 
course called "Special Topics" for the seniors. That's where we're 
doing Tapestry.

On Dec 8, 2004, at 8:35 AM, Erik Hatcher wrote:

> On Dec 8, 2004, at 8:34 AM, Francis Amanfo wrote:
>> You're teaching Tapestry to your students at high school? Don't you 
>> think at that age you rather have to focus your students on problem 
>> solving skills such as algorithms and datastructures instead of 
>> technology dependent stuufs since technologies come an go?
>
> Datastructures like Stack and Queue and HashMap?  Aren't those 
> built-in to the language now?  :))
>
> Problem solving skills?  Like how to learn Tapestry by 
> experimentation, reading documents, researching solutions posed in 
> this exact forum.  Sounds good to me.
>
> How about teaching them modern day component oriented web development? 
>  Ah, Tapestry!
>
>>  Who says Tapestry or worse, Java would still be the hot thing when 
>> they graduate from university?
>
> So you think teaching theory is the way to educate?  What language 
> would you propose be used?
>
> I'm a big fan of concrete non-abstract real-world physical learning.  
> Theory is nice and all, but much better to have some concrete footing 
> to stand on when going there.
>
>> Or are you doing this because it's the only way to motivate you to 
>> learn Tapestry?
>
> The teacher must show the students how to learn by learning 
> him/herself right there in front of them.  Lead by example - teach 
> them how to learn by learning yourself, not by regurgitating facts.
>
> 	Erik
>
>
>>
>> Best regards,
>>
>> Francis
>>
>> On Tue, 7 Dec 2004, Todd O'Bryan wrote:
>>
>>> My situation is, I'm sure, atypical for people on the list. I use 
>>> Tapestry as a hobby. Not really, I actually use it for my job 
>>> somewhat, but I teach high school computer science and seem to spend 
>>> more time trying to correct problems in machine configurations so 
>>> that my students can run Eclipse than I do actually teaching them to 
>>> use Tapestry. As a result, I program with Tapestry a couple of hours 
>>> every couple of days, with long blocks on the weekends.
>>>
>>> One of the things that most frustrates me about the framework is 
>>> that so many problems never get caught until I actually try to use 
>>> the webapp. Spindle does a great job of checking what it can, but I 
>>> can bounce between trying to load a page and editing it three or 
>>> four times if it's at all complicated. Obviously, the heavy reliance 
>>> on abstract classes and OGNL leads to this problem, and I'm not sure 
>>> how amenable to fixing it might be.
>>>
>>> Do other people feel that this late feedback makes the framework 
>>> seem more difficult to use and that earlier discovery of errors 
>>> (compile time, rather than runtime) would make the learning curve 
>>> seem less steep? Or maybe I'm just a big baby...
>>>
>>> Todd
>>>
>>>
>>> ---------------------------------------------------------------------
>>> 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
>


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


Re: Making the learning curve more shallow

Posted by Erik Hatcher <er...@ehatchersolutions.com>.
On Dec 8, 2004, at 11:18 AM, Francis Amanfo wrote:
>> Datastructures like Stack and Queue and HashMap?  Aren't those 
>> built-in to the language now?  :))
>
> So they shouldn't know it's internal workings and apply such knowledge 
> later on?

Shouldn't we know the inner workings of the electrons flying around on 
the CPU?

It's turtles all the way down.

>> How about teaching them modern day component oriented web 
>> development?  Ah, Tapestry!
>
> Yeah, tapestry would still be modern when they graduate from the 
> university and try to enter the job market! :) We're talking about 
> HIGH SCHOOL students, forgotten?

Never _ever_ underestimate the ingenuity of a student to transcend and 
abstract whatever it is they are "taught".  Give them raw materials, 
briefly give them an example, and let them at it.  I'm taking a very 
Montessori-like approach here.  It is the pedagogical approach I 
subscribe to.

Abstractions emerge.  Start with the concrete.

>> So you think teaching theory is the way to educate?  What language 
>> would you propose be used?
>
> No, not completely. What I'm saying is CS should be free from 
> technology specific stuffs in the early stages of the curriculum.

I disagree.

Kids are growing up on video games, DVD players with more horsepower in 
the remote control than were in mainframes back in the day, and so on.

Let's teach the internet, but wait, maybe we should start with the HTTP 
protocol?  Or maybe packets and error correction?  Or maybe, just 
maybe, we should start with Google.

>  Technology specific products should be postponed to probably the last 
> year or two of the undergraduate curriculum.

I'm glad you're not my kids instructors.

>  Focus should be on the foundation skills the creators of technologies 
> also had when they were at school.

I will not disagree that there are fundamental skills that are 
important for all software developers.  I disagree with you in how they 
are taught (or emerge with!) those skills.

>  You had it too, didn't you?. When I was at school, all the theory I 
> learnt were backed up with an implementation which I had to do as 
> programming exercise. Meaning I didn't learn only theory.

Writing a sorting algorithm, while it certainly is educational at a 
very precise level, is not pragmatic in the "real world".  And sure, 
there is definitely room for innovation even for sorting algorithms - 
but to most kids its boring and stupid to write something that already 
exists.  Let them build on top of the wheels we've already invented.  
If they need a better wheel, have faith that the problem solving skills 
they've obtained are applicable at whatever level they choose to apply 
it.

Such a fun (off) topic!

	Erik


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


Re: Making the learning curve more shallow

Posted by Francis Amanfo <fa...@tydex.com>.

On Wed, 8 Dec 2004, Erik Hatcher wrote:

> On Dec 8, 2004, at 8:34 AM, Francis Amanfo wrote:
>> You're teaching Tapestry to your students at high school? Don't you think 
>> at that age you rather have to focus your students on problem solving 
>> skills such as algorithms and datastructures instead of technology 
>> dependent stuufs since technologies come an go?
>
> Datastructures like Stack and Queue and HashMap?  Aren't those built-in to 
> the language now?  :))

So they shouldn't know it's internal workings and apply such knowledge 
later on?

> Problem solving skills?  Like how to learn Tapestry by experimentation, 
> reading documents, researching solutions posed in this exact forum.  Sounds 
> good to me.

> How about teaching them modern day component oriented web development?  Ah, 
> Tapestry!

Yeah, tapestry would still be modern when they graduate from the 
university and try to enter the job market! :) We're talking about HIGH 
SCHOOL students, forgotten?

>>  Who says Tapestry or worse, Java would still be the hot thing when they 
>> graduate from university?
>
> So you think teaching theory is the way to educate?  What language would you 
> propose be used?

No, not completely. What I'm saying is CS should be free from technology 
specific stuffs in the early stages of the curriculum. Technology specific 
products should be postponed to probably the last year or two of the 
undergraduate curriculum. Focus should be on the foundation skills the 
creators of technologies also had when they were at school. You had it 
too, didn't you?. When I was at school, all the theory I learnt were 
backed up with an implementation which I had to do as programming exercise. Meaning I didn't 
learn only theory.
What language would I propose? Any language that one can use to backup the 
theory.

> Or you doing this because it's the only way to motivate you to learn 
>> Tapestry?
>
> The teacher must show the students how to learn by learning him/herself right 
> there in front of them.  Lead by example - teach them how to learn by 
> learning yourself, not by regurgitating facts.
>
> 	Erik
>
>
>> 
>> Best regards,
>> 
>> Francis
>> 
>> On Tue, 7 Dec 2004, Todd O'Bryan wrote:
>> 
>>> My situation is, I'm sure, atypical for people on the list. I use 
>>> Tapestry as a hobby. Not really, I actually use it for my job somewhat, 
>>> but I teach high school computer science and seem to spend more time 
>>> trying to correct problems in machine configurations so that my students 
>>> can run Eclipse than I do actually teaching them to use Tapestry. As a 
>>> result, I program with Tapestry a couple of hours every couple of days, 
>>> with long blocks on the weekends.
>>> 
>>> One of the things that most frustrates me about the framework is that so 
>>> many problems never get caught until I actually try to use the webapp. 
>>> Spindle does a great job of checking what it can, but I can bounce 
>>> between trying to load a page and editing it three or four times if it's 
>>> at all complicated. Obviously, the heavy reliance on abstract classes 
>>> and OGNL leads to this problem, and I'm not sure how amenable to fixing 
>>> it might be.
>>> 
>>> Do other people feel that this late feedback makes the framework seem 
>>> more difficult to use and that earlier discovery of errors (compile 
>>> time, rather than runtime) would make the learning curve seem less 
>>> steep? Or maybe I'm just a big baby...
>>> 
>>> Todd
>>> 
>>> 
>>> ---------------------------------------------------------------------
>>> 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
>

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


Re: Making the learning curve more shallow

Posted by Erik Hatcher <er...@ehatchersolutions.com>.
On Dec 8, 2004, at 8:34 AM, Francis Amanfo wrote:
> You're teaching Tapestry to your students at high school? Don't you 
> think at that age you rather have to focus your students on problem 
> solving skills such as algorithms and datastructures instead of 
> technology dependent stuufs since technologies come an go?

Datastructures like Stack and Queue and HashMap?  Aren't those built-in 
to the language now?  :))

Problem solving skills?  Like how to learn Tapestry by experimentation, 
reading documents, researching solutions posed in this exact forum.  
Sounds good to me.

How about teaching them modern day component oriented web development?  
Ah, Tapestry!

>  Who says Tapestry or worse, Java would still be the hot thing when 
> they graduate from university?

So you think teaching theory is the way to educate?  What language 
would you propose be used?

I'm a big fan of concrete non-abstract real-world physical learning.  
Theory is nice and all, but much better to have some concrete footing 
to stand on when going there.

> Or are you doing this because it's the only way to motivate you to 
> learn Tapestry?

The teacher must show the students how to learn by learning him/herself 
right there in front of them.  Lead by example - teach them how to 
learn by learning yourself, not by regurgitating facts.

	Erik


>
> Best regards,
>
> Francis
>
> On Tue, 7 Dec 2004, Todd O'Bryan wrote:
>
>> My situation is, I'm sure, atypical for people on the list. I use 
>> Tapestry as a hobby. Not really, I actually use it for my job 
>> somewhat, but I teach high school computer science and seem to spend 
>> more time trying to correct problems in machine configurations so 
>> that my students can run Eclipse than I do actually teaching them to 
>> use Tapestry. As a result, I program with Tapestry a couple of hours 
>> every couple of days, with long blocks on the weekends.
>>
>> One of the things that most frustrates me about the framework is that 
>> so many problems never get caught until I actually try to use the 
>> webapp. Spindle does a great job of checking what it can, but I can 
>> bounce between trying to load a page and editing it three or four 
>> times if it's at all complicated. Obviously, the heavy reliance on 
>> abstract classes and OGNL leads to this problem, and I'm not sure how 
>> amenable to fixing it might be.
>>
>> Do other people feel that this late feedback makes the framework seem 
>> more difficult to use and that earlier discovery of errors (compile 
>> time, rather than runtime) would make the learning curve seem less 
>> steep? Or maybe I'm just a big baby...
>>
>> Todd
>>
>>
>> ---------------------------------------------------------------------
>> 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: Making the learning curve more shallow

Posted by Francis Amanfo <fa...@tydex.com>.
Hi Todd,

You're teaching Tapestry to your students at high school? Don't you think 
at that age you rather have to focus your students on problem solving 
skills such as algorithms and datastructures instead of technology 
dependent stuufs since technologies come an go? Who says Tapestry or 
worse, Java would still be the hot thing when they graduate from 
university?
Or are you doing this because it's the only way to motivate 
you to learn Tapestry?

Best regards,

Francis

On Tue, 7 Dec 2004, Todd O'Bryan wrote:

> My situation is, I'm sure, atypical for people on the list. I use Tapestry as 
> a hobby. Not really, I actually use it for my job somewhat, but I teach high 
> school computer science and seem to spend more time trying to correct 
> problems in machine configurations so that my students can run Eclipse than I 
> do actually teaching them to use Tapestry. As a result, I program with 
> Tapestry a couple of hours every couple of days, with long blocks on the 
> weekends.
>
> One of the things that most frustrates me about the framework is that so many 
> problems never get caught until I actually try to use the webapp. Spindle 
> does a great job of checking what it can, but I can bounce between trying to 
> load a page and editing it three or four times if it's at all complicated. 
> Obviously, the heavy reliance on abstract classes and OGNL leads to this 
> problem, and I'm not sure how amenable to fixing it might be.
>
> Do other people feel that this late feedback makes the framework seem more 
> difficult to use and that earlier discovery of errors (compile time, rather 
> than runtime) would make the learning curve seem less steep? Or maybe I'm 
> just a big baby...
>
> Todd
>
>
> ---------------------------------------------------------------------
> 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