http://www.perlmonks.org?node_id=267136


in reply to Nirvana through the templating yin yang (TT2 / CGI.pm)

What architecture to use is often dictated by your organizational and development environment, besides your teammates' skills and the merit of the technology itself.

Whimsical development process encourages PHP type of technology, which more easily allows "on-the-fly" coding with little planning.

N-tier architecture (starting with your using templating, for instance) requires intellectual and procedural supports from both programmers and non-programmers.

The idea could be characterized in the following table, as an example (be the changes due to internal or external reasons):
  Architectural1.
(Backend Logics) Changes
Rare Often
Business Rules2.
(Middle Layer Logics)
Changes
Business Rules2.
(Middle Layer Logics)
Changes
Rare Often Rare Often
Presentation
(Frontend Logics)
Changes
Rare Assembly?
(just kidding)
Template
+
scripting lang.
(ever happened?) Template
+
scripting lang.
Often Template
+
compiled
codes
PHP (not sure this
can happen)
PHP
(simple 2-tier)
+ yoga, aspirin, etc

1. This usually means DB, XML, etc.
2. This translates into Perl scripts, Java beans, COM, stored procedures etc. for most people