Outstanding post, +1 Gary!

-----------------------------------------------------------------
    Throw away my code, but never, never throw away my tests.
-----------------------------------------------------------------
Jeffrey D. Brekke                                   Quad/Graphics
[EMAIL PROTECTED]                              http://www.qg.com
-----------------------------------------------------------------



> -----Original Message-----
> From: Gary Lawrence Murphy [mailto:[EMAIL PROTECTED]]
> Sent: Monday, July 02, 2001 12:50 AM
> To: [EMAIL PROTECTED]
> Subject: Re: Comparison between Enhydra+Barracuda, ACS 4.0.1,
> Tomcat+Turbine+Cocoon
> 
> 
> >>>>> "C" == C R Oldham <[EMAIL PROTECTED]> writes:
> 
>     C> And regarding Turbine directly, something that concerns me
>     C> greatly is the way a Turbine app has to interface with the
>     C> database--via the Peer objects, right?  
> 
> Not quite; when Jon says Turbine offers options, he refers to 
> the history
> of Turbine as a collection of tools (which I believe is stated on the
> website) and that is exactly what you get, a collection of tools.  If
> peers works for you, it's there, and if not, you ignore it.  Even the
> core Turbine servlet, which is intended for session-managed multi-page
> web applications, will be overkill for many situations --- no problem,
> you just leave it out of your app and use it as a model for building
> your own session-less website using all the other great tools 
> in the kit.
> 
>     C> ...  Is working with the Peer objects a real pain?
> 
> Buddha said that suffering arises from attachment, and this is just as
> true with software ;) All Turbine means by "peer" is that where one
> object represents the table row, the peer contains the static methods
> used to move rows in and out of the database.  It makes no 
> sense to ask
> an object to return 100 dissimilar objects of the same type, 
> so instead
> you ask the peer of that class to do the lookup and fetch the list.
> 
> Where it becomes a pain is where you _know_ what you want to do in SQL
> and stored procedures and you try to force the Torque model to do this
> within its simple object-database mapping; fortunately, Torque
> _extends_ JDBC, it does not replace it: If you know how to get the
> effect you want in SQL, just use normal JDBC execute/query calls to do
> it.  Torque is just a convenience tool for the general case of
> fetching records from one or more tables according to some criteria.
> 
>     C> What if I need to slap a quick page on our site
>     C> that pulls a query from the database and shows it in a table.
>     C> In Turbine, is that easy, or not?
> 
> In _Turbine_ it is impossible; strictly speaking, turbine is just a
> web-app framework servlet that allows for hooking services and
> templates together with session management and multi-level
> authentication.  
> 
> If, on the other hand, you decide to use Turbine with the Velocity
> template service and the Torque OM service, and you provide your own
> $data service that provides a method to effect the query and return
> a list of results, the page you describe is simply
> 
> #foreach $item in $data.getList
>   <tr><td>$item.col1</td><td>$item.col2</td></tr>
> #end
> 
> which is pretty darn simple.
> 
> (those who know velocity macros better than I could probably craft a
> better example)
> 
> If Velocity is not your thing, use WebMacro or JSP or plug in your
> own.  If Torque doesn't turn your crank, use Castor or whatever you
> like.  The services bundled with Turbine are just examples of useful
> (Apache licenced) tools.  You are free to use them, change them, steal
> from them, or ignore them.
> 
>     C> Sorry about the ramble--I'm having a hard time getting my head
>     C> around this development model...Thanks in advance for any help.
> 
> As with any new technology, I know where you're coming from: You are
> looking at a package and wondering if it would take more time (=money)
> to learn it than to re-write it, or whether some other application
> framework might cost less to implement; any response that does not
> provide this information or demands your placing a sizeable investment
> of time (=money) is not all that helpful (it just makes Turbine more
> expensive and thus less attractive).
> 
> You should know up front that Turbine is not a product, it is not a
> service by one company to another. It has no business case or sales
> pitch to give you, no salesman will ever call ;) To my mind, this is a
> great advantage because, unlike ACS or WebSphere, Turbine is not the
> worm on the end of a hook that eventually wants to make money off you,
> but is instead a community thing that really wants and honestly
> invites your participation to help make things better for the whole
> community.  Working together, we can (and do) blow WebSphere out of
> the water.
> 
> Turbine is just a collection of web-application-oriented code, amassed
> by fellow developers as they needed it, modified by others as they saw
> fit, and kept in sync and order by a few volunteers. There's no
> guarantee, no promises and we can't really tell you if it works for
> your project because we are all busy on our own projects; the best
> endorsement we can offer is a word-count for the number of times the
> phrase "Turbine rocks" shows up in the mailing list ;)
> 
> Personally, the total control of having a stake in Turbine
> development, the freedom of being a participant rather than a
> consumer, and the power to determine my own production schedules and
> not be at the mercy of some corporate todo list, all of these abstract
> business-case features more than compensate for the inconvenience of
> having to reverse-engineer Turbine to use it.
> 
> -- 
> Gary Lawrence Murphy <[EMAIL PROTECTED]> TeleDynamics 
> Communications Inc
> Business Innovations Through Open Source Systems: 
http://www.teledyn.com
"Computers are useless.  They can only give you answers."(Pablo Picasso)


---------------------------------------------------------------------
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