NYCPHP Meetup

NYPHP.org

[nycphp-talk] Site Quote

Eddie Haber php at haberco.com
Wed Aug 11 13:34:24 EDT 2004


Love this thread. And some great advice has already been posted. I
completely concur with all of Joel De Gan's points, too. And I sympathize
with Ajai's remarks.

I wanted to also add, in the beginning of Brooks's The Mythical Man-Month,
he makes a big point about the difference between a Software Application and
a Programming System. Not to be pedantic, but briefly: a programming system
differs in that it is extensible and adaptable in the future. In web
parlance, we can say the difference between a first-generation PHP site
(with code and logic interspersed throughout and procedural calls placed
directly in the scripts) vs. a web-application built on a framework that is
OO, component-based, internationalized, and skinable. Clearly the latter has
tons more value. Brooks concludes the exact amount is **9** times the
financial cost.

It may be possible to meet some clients' needs with very unsophisticated
brute-force solutions. And sometimes this is exactly what the client wants
and needs. There are PC-based apps that generate PHP and SQL code already.
And some websites may be a matter of designing nice HTML-based templates,
and utilizing these applications to inject some generic features.

Another possibility, maybe even another tier lower, would be to try to
implement an "off-the-shelf" solution like MamboServer or Plone, or even a
slick blogger; and then customize the look and feel for them. A solution
like this could be provided for under $1,000.

So, I usually make these distinctions clear to my clients. If what they want
is a Programming System, that is going to carry a much higher price tag (9x
according to Brooks, but you all know this to be the case from experience
anyway). If your client laughs at you when you say you can at the push of a
button dish out his site in French or German, then clearly that is a case of
your desires for boss programming architecture over-ruling the needs of your
client.

So, I'd say read your client. Explain these possibilities and consequences.
Explain the pros and cons of building specialized apps verses programming
systems. Ultimately at the end of the discussion, the client should see
clearly the justification for their budget. I believe it is possible, in
broad terms, to communicate this to the client.

Eddie
 





More information about the talk mailing list