On Tue, 08 Mar 2005 22:37:29 -0500, William Goedicke
<[EMAIL PROTECTED]> wrote:
> Dear Tom -
> 
> I've thought a lot about why perl hasn't gained respect in the
> deployment/hiring marketplace.
> 
> >>>>> "Tom" == Tom Metro <[EMAIL PROTECTED]> writes:
> 
>     Tom> This reminded me of something I've wondered about for a long
>     Tom> time. Why did PHP become as successful and popular as it is,
>     Tom> even though it mostly offers a subset of what Perl can
>     Tom> do.
> 
> I think that PHP gained popularity for two reasons.  It initially met
> a need, that is, to embed logic within html.  Second, it was simple.

And a third.  It is so limited that hosting companies have no
problem enabling PHP.  Therefore if you want to use a $20 host
you get the choice: use PHP and be fast or use Perl CGIs and
be slow.  But you can't use mod_perl unless you run your own
server.

>     Tom> Similarly, Java, seemingly through the addition of servlets,
>     Tom> succeeded at enterprise web development, despite Perl having
>     Tom> been there first.
> 
> It was more than that.  There was a successful marketing campaign
> which portrayed security, deployability and state-of-the-artness.

And don't forget that Java had the aura of corporate support
before "open source" had any mindshare.  (Sun began
marketing Java before "open source" was even a phrase!)

>     Tom> Today mod_perl is only rarely recognized as being an
>     Tom> application server.
> 
> But, among productivity focused programmers mod_perl is recognized as
> one of the best frameworks to deliver web applications.

I'm not sure whether, at this point, there is much in
practice to distinguish mod_perl from competitors like
mod_python.  I'm also not sure how many people have
the mindset that mod_* is really an application server
that just happens to work over the web really well.

I'm also dubious of how well disseminated basic
mod_perl best practices are.  For instance how many
know to use reverse proxies for performance?  See
http://perl.apache.org/docs/1.0/guide/strategy.html#Adding_a_Proxy_Server_in_http_Accelerator_Mode
for details.

>     Tom> More recently, there's Python [...] great success with its
>     Tom> own application server, Zope.
> 
> As a perdominately perl programmer I must say I love zope and bemoan
> the lack of comparable CMS in perl.

Well you can use Zope from within Perl:

  http://www.zope.org/Wikis/zope-perl/FrontPage

Personally I don't like Zope.  It made the mistake of
pushing you to have code in an opaque repository
that cannot be trivially integrated (or at least could
not when I last checked, which was a long time ago)
with standard revision control systems. They may
have fixed this since I looked - they certainly have
fixed a lot of potential problems, but from my point
of view this is a deal breaker.

For the same reason, no matter how tempting it is
to have code in a database, don't.  Ditto for your
basic configuration information.  See
http://www.perlmonks.org/?node_id=394251 for a
slightly longer rant about this.

>     Tom> And lastly, C#, which has borrowed ideas from Perl, Java, and
>     Tom> C++.
> 
> Competing with the commercial software world is a whole different animal.

We were already discussing Java which is part of the
commercial software world.

>     Tom> All of these are aspects of the same theme - Perl loosing
>     Tom> mindshare to other technologies. It started out as a quiet,
>     Tom> underground language (telling someone you programmed in Perl
>     Tom> back in the late 80's, early 90's just got a blank stare) and
>     Tom> is perhaps heading back there (I've noticed it getting
>     Tom> dropped off the list of programming languages listed on trade
>     Tom> magazine qualification forms).
> 
> Siiggghhhh...... You're right, of course, but, isn't that issue all
> about the battle with the commercial world.

My impression is that the Perl job scene has been
improving in the last couple of years.  My other
impression is that Perl has an unfortunately high
proportion of "programmers" who have messed with
basic CGI but do not understand programming very
well.

> Having said that, I'm a leader in a consulting firm and I'm struggling
> to convince my firm that we should develop a "LAMP Enabling" practice.
> I see tons of organic LAMP deployment occuring.  The idea of my
> consulting product is that LAMP deployments are immature and that
> there's value-adding consulting in making LAMP deployments "enterprise
> quality" and by aligning them with strategic goals.

I love using the phrase "enterprise quality" and I
hate hearing it.  Both for the same reason.  You can
mean anything you want by it, but the listener is
likely to give it a very generous interpretation. :-/

> Perl's strength, in my mind, is that it has enormous breadth.  As an
> example; I write some app and after the fact realize I need to process
> barcodes.  No problem.

This is an important strength, but it becomes less
important as projects become more significant.

What I mean by that is this: for small projects you
can often get them mostly done by just picking up
some pre-built chunks from CPAN.  But once you've
actually developed a significant amount of custom
code, the effort of developing, say, your own code to
handle barcodes is a fairly minor increment.  The
closer to your core development the project is, the
less relatively important CPAN becomes.

As an example take a look at Paul Graham's viaweb.
This is touted as an example where Lisp was a big
competitive advantage.  And it was - for the core
editor (custom, nothing like that really existed yet
because it was written so early).  However they went
with Perl for a lot of their system administration.

The difference is that the editor was a big piece of
custom software so existing libraries mattered less,
while in system administration you wind up with a
lot of "shallow problems" where finding the right
library is a huge timesaver.

Ovid makes a very similar point at
http://www.perlmonks.org/?node_id=408483.

Cheers,
Ben

PS I'm not sure how much access I'll have to the
net in the next couple of weeks in particular.  So it
may be good to plan to continue this discussion at
the Wed social meeting...
 
_______________________________________________
Boston-pm mailing list
[email protected]
http://mail.pm.org/mailman/listinfo/boston-pm

Reply via email to