I just finished reviewing mpeppler's slides to his Sybase Conference presentation, available here in Powerpoint format. Here are my thoughts:
HTML Template handling (2) The system I favor completely separates the HTML from the code.
Was it necessary to write one? Does it offer anything not found in HTML::Template or HTML::Seamstress?
Perl is a flexible language with a powerful modular structure and very strong text handling ability.
It certainly is, but this convenience and wealth of functionality in Perl has resulted in a decrease in ability to leverage the shell as well as a duplication of its functionality. Also, because so much is available within Perl, one tends to write modules to compentize complex apps instead of isolated shell scripts. The result is that large programs often have a huge memory overhead because modules cannot be unloaded after use. In contrast, Unix shell pipelines enter memory, do their job, then exit.
By forcing all access to the database through stored procedures you achieve: Data integrity
  1. By "data integrity" I think what you mean is there is one place where any alteration of the database can be found, namely the stored procedure packages.
  2. While I agree with this, my personal preference is for a flexible sqlmaker such as DBIx::Recordset, because I would hate to have to recode all of my stored procedures whenever tables change for whatever reason. For details, see the "Table Mutation" and "Scalability" sections in my DBIx::Recordset article.
  3. Finally, storing procedures is optimal from a speed standpoint but is it conceivable that the stored procedures could tax the RAM of the database server? I wrote SQL::Catalog with similar aims but then realized that it would suffer the same problem. The simplest thing is to name the queries and store each one in a file, e.g.:
/ecommerce/billing/monthly.sql /ecommerce/billing/yearly.sql /ecommerce/hosting/dnslookup.sql
and then simply prepare a statement handle by loading the text file into a lexical variable and save main memory:
my $sql = File->contents('/ecommerce/billing/yearly.sql'); my $sth = $dbh->prepare($sql); $sth->execute(@bind_var);
Table-Driven Database Calls (5) The perl subroutine has a configuration hash that defines all the inputs and outputs for the request. The configuration hash consists of several sections:

I saw nothing here via-a-vis password management. How would you handle different passwords for production and dev environments? Would your solution differ from DBIx::Connect? If so, why?

Carter's compass: I know I'm on the right track when by deleting something, I'm adding functionality


In reply to Website Application Framework with Sybase, Apache & Perl: My Thoughts by princepawn

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.