Re: [OT] Are you using Tapestry?

2005-01-27 Thread Jim Barrows
On Thu, 27 Jan 2005 20:38:44 +0100, PA <[EMAIL PROTECTED]> wrote:
> 
> On Jan 27, 2005, at 20:29, Jim Barrows wrote:
> 
> > Record/Object are sort of the same.
> 
> Hmmm... no. A database row is a database row. Period.
> 
> The rest is algebra.

A record is not necessarily a single database row from a single table.
 Especially in 3NF.

> 
> An object on the other hand is anything your OO implementation language
> of choice allow you to express.
> 
> Certainly "Create Read Update Delete" operations can be applied to
> both, no?

An object, maybe.  Remember an object has the concept of state, and
mutators that change the state.  While this in a simple form is an
update... what if the obejct state has ripple effects?
Specifically.. your writing a publishing system.  As an article to be
published moves through the system it changes states.  When an article
moves to a Complete state, it notifies listeners that the article is
complete and ready to be edited.
Strictly CRUD would look at this as change the Article state in the
database and the next time a "listener" scans the database they'll
pick up the change.  Except that that's not the same as the lisetener
firing off an event, in an asynchronous manner.
I'm not saying this can't be solved ( JMS, RMI, blah blah), just that
it's a place where a CRUD mapping approach falls down.  We don't just
CRUD data in OO, because an object is also the method that act on it.



> 
> Cheers
> 
> --
> PA, onnay equitursay
> http://alt.textdrive.com/
> 
> -
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
> 
> 


-- 
James A Barrows

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



Re: [OT] Are you using Tapestry?

2005-01-27 Thread PA
On Jan 27, 2005, at 20:29, Jim Barrows wrote:
Record/Object are sort of the same.
Hmmm... no. A database row is a database row. Period.
The rest is algebra.
An object on the other hand is anything your OO implementation language 
of choice allow you to express.

Certainly "Create Read Update Delete" operations can be applied to 
both, no?

Cheers
--
PA, onnay equitursay
http://alt.textdrive.com/
-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


Re: [OT] Are you using Tapestry?

2005-01-27 Thread Jim Barrows
On Thu, 27 Jan 2005 19:38:44 +0100, PA <[EMAIL PROTECTED]> wrote:
> 
> On Jan 27, 2005, at 19:20, Jim Barrows wrote:
> 
> > I'm speaking of frameworks that do a lot of the work for you, which
> > Rails seems to.
> 
> Hmmm... ok... so when you say that, and under some circumstances, "CRUD
> direct mapping doesn't work" you barely implies that direct mapping of
> database record to what someone calling himself "Martin Fowler" call
> "Active Record" is not a 100% solution as far as your experience goes?
> 
> http://www.martinfowler.com/eaaCatalog/activeRecord.html
> 
> Which is what RoR does in its own way:
> 
> http://wiki.rubyonrails.com/rails/show/ActiveRecord
> 
> Of course, if you simply forget about "record" and think in terms of
> "object" (ActiveObject perhaps?), all is well in the kingdom, right?

Record/Object are sort of the same.  A record might have an array as
part of it which would be implemented as a seperate table.  MIght not.
Even then, when you start looking at things as full object graphs, the
way you do htem in OO is  not the same.  Deleting an object from a
database is not synonomous with deleting an object from an object
graph.   If I change a field in an object, I can have side effects as
I change the state of the object.  Is this an Update?  is this an
Update with triggers?  How do I ripple this change through the
database?
While all of the quesitons have answers, my point is that they aren't
just simple CRUD.

> 
> Also, I fail to quite see what any of this as to do with either Struts
> or Tapestry in the first place... does Struts or Tapestry concern
> themselves directly with such mundane persistency issues? I was under
> the impression that no, they don't. Did I miss something?

Nope neither Struts nor Tapestry do that. 

> 
> Cheers
> 
> --
> PA, onnay equitursay
> http://alt.textdrive.com/
> 
> -
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
> 
> 


-- 
James A Barrows

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



Re: [OT] Are you using Tapestry?

2005-01-27 Thread PA
On Jan 27, 2005, at 19:20, Jim Barrows wrote:
I'm speaking of frameworks that do a lot of the work for you, which
Rails seems to.
Hmmm... ok... so when you say that, and under some circumstances, "CRUD 
direct mapping doesn't work" you barely implies that direct mapping of 
database record to what someone calling himself "Martin Fowler" call 
"Active Record" is not a 100% solution as far as your experience goes?

http://www.martinfowler.com/eaaCatalog/activeRecord.html
Which is what RoR does in its own way:
http://wiki.rubyonrails.com/rails/show/ActiveRecord
Of course, if you simply forget about "record" and think in terms of 
"object" (ActiveObject perhaps?), all is well in the kingdom, right?

Also, I fail to quite see what any of this as to do with either Struts 
or Tapestry in the first place... does Struts or Tapestry concern 
themselves directly with such mundane persistency issues? I was under 
the impression that no, they don't. Did I miss something?

Cheers
--
PA, onnay equitursay
http://alt.textdrive.com/
-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


Re: [OT] Are you using Tapestry?

2005-01-27 Thread Jim Barrows
On Thu, 27 Jan 2005 19:03:21 +0100, PA <[EMAIL PROTECTED]> wrote:
> 
> On Jan 27, 2005, at 18:50, Jim Barrows wrote:
> 
> > http://www.lightbody.net/~plightbo/archives/000144.html
> 
> "RoR is simply a RESTful CRUD framework" sounds like very high praise
> to my uninformed hears :)
> 
> > If you're trying to do anything beyond CRUD direct mapping doesn't
> > work.
> 
> Hmmm... care to elaborate and expend a bit on that line of thoughts?
> Concrete example would greatly help in understanding what precisely
> "doesn't work" as you see it.

I'm speaking of frameworks that do a lot of the work for you, which
Rails seems to.

1) Tracking every change and view made to or of a record.  The record
doesn't necessarily come from one table.
2) Any odd mix of SQL and stored procedures.   Which is how 1 was
implemented.  No I didn't implement, no I couldn't change it, and no I
don't I don't want to remember anymore.
3) Restricting CRUD functionality by record, or part of record. Again
where a record is not one table.
4) Anywhere one page updates more then one table.

My personal favorite:
Mapping a UseCase object, Actor object and the 0+ Diagrams on which
they can be viewed. UseCase can refer to one and only one actor, while
and actor can have 1 or more uscases. This is not a parent child
relationship, but a peer relationship.   Any Actor/UseCase can appear
on more then one diagram.  Diagrams, just to really muck things up ,
inherit from Artifact.  A project has 1 or more Artifacts, and there
is a whole heirarchy of Artifacts that a project might have.



> 
> As an asside, are you familiar with Zope's ObjectPublishing?
> 
> http://zope.org/Documentation/Books/ZDG/current/ObjectPublishing.stx
> 
> Cheers
> 
> --
> PA, onnay equitursay
> http://alt.textdrive.com/
> 
> 
> -
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
> 
> 


-- 
James A Barrows

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



Re: [OT] Are you using Tapestry?

2005-01-27 Thread PA
On Jan 27, 2005, at 18:50, Jim Barrows wrote:
http://www.lightbody.net/~plightbo/archives/000144.html
"RoR is simply a RESTful CRUD framework" sounds like very high praise 
to my uninformed hears :)

If you're trying to do anything beyond CRUD direct mapping doesn't 
work.
Hmmm... care to elaborate and expend a bit on that line of thoughts? 
Concrete example would greatly help in understanding what precisely 
"doesn't work" as you see it.

As an asside, are you familiar with Zope's ObjectPublishing?
http://zope.org/Documentation/Books/ZDG/current/ObjectPublishing.stx
Cheers
--
PA, onnay equitursay
http://alt.textdrive.com/
-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


Re: [OT] Are you using Tapestry?

2005-01-27 Thread Jim Barrows
On Thu, 27 Jan 2005 12:40:51 -0500, Kris Schneider <[EMAIL PROTECTED]> wrote:
> Even more bizarre that it's a sibling Apache project. Along that same line, I
> thought this was just hilarious:

I'm taking this in a friendly competitive way rather then as animosity.

> 
> http://www.lightbody.net/~plightbo/archives/000144.html
> 
> Because, and I'll risk a generalization here, the WebWork devs have always 
> been
> pretty public about their loathing of Struts. Now that there's a lot of buzz
> around Rails, Stuts seems to have magically fallen off their radar.

The interesting things is that, they're right about direct mapping
tables to UI.  If you're trying to do anything beyond CRUD direct
mapping doesn't work.  I've even agreed with some of their comments
about Struts.  It has it's warts.  However, the warts are going away,
and Struts, unlike any of it's leading competitors does JSP better.
Then of course, you have the simple fact that I've seen more requests
for Struts skills then I have for WebWork or Tapestry.

> 
> I'll just take another quick second to use these two examples as an indirect 
> way
> to compliment the Struts community (especially the devs) on how they deal with
> other web frameworks. There's more to a project than the code...
> 
> Quoting James Mitchell <[EMAIL PROTECTED]>:
> 
> > http://howardlewisship.com/blog/2005/01/safety-first.html
> >
> >
> > And I didn't even realize there was animositywhat a fool I've been :P
> > 
> > --
> > James Mitchell
> > Software Engineer / Open Source Evangelist
> > EdgeTech, Inc.
> > 678.910.8017
> > AIM: jmitchtx
> 
> -- 
> Kris Schneider 
> D.O.Tech   
> 
> -
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
> 
> 


-- 
James A Barrows

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



Re: [OT] Are you using Tapestry?

2005-01-27 Thread Kris Schneider
Even more bizarre that it's a sibling Apache project. Along that same line, I
thought this was just hilarious:

http://www.lightbody.net/~plightbo/archives/000144.html

Because, and I'll risk a generalization here, the WebWork devs have always been
pretty public about their loathing of Struts. Now that there's a lot of buzz
around Rails, Stuts seems to have magically fallen off their radar.

I'll just take another quick second to use these two examples as an indirect way
to compliment the Struts community (especially the devs) on how they deal with
other web frameworks. There's more to a project than the code...

Quoting James Mitchell <[EMAIL PROTECTED]>:

> http://howardlewisship.com/blog/2005/01/safety-first.html
> 
> 
> And I didn't even realize there was animositywhat a fool I've been :P
> 
> --
> James Mitchell
> Software Engineer / Open Source Evangelist
> EdgeTech, Inc.
> 678.910.8017
> AIM: jmitchtx

-- 
Kris Schneider 
D.O.Tech   

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