SPUG: software libertarianism (was: Scope question)

Pommert, Daniel Daniel.Pommert at verizonwireless.com
Thu Jun 13 14:45:48 CDT 2002


I must speak up.  I have written a fairly large application in OO Perl.  It
was 20,000+ lines, not counting comments, blank lines, POD, curly brace
lines, etc.  Counting those, it was 80,000+.  I was one of the five main
authors.  However, I was able to define interfaces that let me work without
interference with other developers on their portion of the project.  It was
developed on Unix, under X, using Oracle, as a back end process.  The front
end was also written in Perl (up to the HTML and JavaScript).  I am not
counting the lines of code for that.  The two sides talked through Oracle
and MQM (and later Oracle's AQ instead of MQM).

I saw no problem extending this program to be much larger than it was.  Much
of it (i.e. the bulk of the lines of code) were quite modular and performed
a particular polymophic function.  About 4,000 lines were more difficult to
write and involved message passing between multiple processes, managing
messages, process states, etc.

It survived a late stage major structural change (new management, new
paradigm).  These changes benefited the project by making all of the
interfaces more rigorously defined.  It was a hassle.  But, it certainly did
not kill things.

It worked great until the company paying for the development decided that we
should scrap it all in favor of a legacy Windows solution.  (We had failed
to achieve one key goal that arose during development.  Also, the UI people
repeated changed the "spec" causing the implementation people to always need
to change things.  The CEO decided that he was throwing good money after bad
and that was that.)

In short, OO Perl can be quite useful for large complicated systems.  The
fact that you don't have to worry about many of the gotchas or restrictions
of other implementation languages (as much) really helped.  (e.g. Memory
leaks, difficulty in writing virtual constructors, clunky string handling,
fussing with type conversion routines)

(Yes.  I have mentioned this project here before.  And, yes.  When I get the
time, I intend to rewrite the kernel of it for CPAN.)

-- Daniel Pommert 
  Verizon Wireless
  425-603-8612


-----Original Message-----
From: dancerboy [mailto:dancerboy at strangelight.com]
Sent: Thursday, June 13, 2002 11:15 AM
To: SPUG
Subject: Re: SPUG: software libertarianism (was: Scope question)


At 9:38 am -0700 2002-06-13, Dan Ebert wrote:
>On Wed, 2002-06-12 at 23:35, dancerboy wrote:
>>  Java and C# are meant for large-scale applications, not one-liners.
>
>I hope you are not implying perl cannot be used to write large
>applications.  I have seen perl used effectively for some decent size
>(and fairly complex) programs.

I would say that there's significant overlap in what different 
languages are good for.  Java is crappy for one-liners, but great for 
medium- to large-scale applications.  Perl is great for one-liners, 
crappy for truly *large*-scale applications.  For medium-sized 
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
applications, Perl can be great OR crappy, depending on the skills of 
the developer(s) involved.  To paraphrase something I say on my web 
page:  Perl empowers programmers to write code in any way that they 
want.  In many cases, however, that means empowering programmers to 
write code very, very badly.

-jason


 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
     POST TO: spug-list at pm.org       PROBLEMS: owner-spug-list at pm.org
      Subscriptions; Email to majordomo at pm.org:  ACTION  LIST  EMAIL
  Replace ACTION by subscribe or unsubscribe, EMAIL by your Email-address
 For daily traffic, use spug-list for LIST ;  for weekly, spug-list-digest
     Seattle Perl Users Group (SPUG) Home Page: http://seattleperl.org

 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
     POST TO: spug-list at pm.org       PROBLEMS: owner-spug-list at pm.org
      Subscriptions; Email to majordomo at pm.org:  ACTION  LIST  EMAIL
  Replace ACTION by subscribe or unsubscribe, EMAIL by your Email-address
 For daily traffic, use spug-list for LIST ;  for weekly, spug-list-digest
     Seattle Perl Users Group (SPUG) Home Page: http://seattleperl.org




More information about the spug-list mailing list