RE: Perl vs Java - your feedback, not flames

Raj Mathur <[email protected]> Wed, 17 Nov 2004 22:52:54 +0530
Newsgroups gmane.user-groups.linux.delhi.devel
Message-ID <[email protected]>
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

>>>>> "Nishi" == Nishikant Kapoor <Kapoor> writes:

    Nishi> Thanks to all those who responded. Honestly, I was not
    Nishi> expecting so many responses, so quick. Thanks again.  Here
    Nishi> is some more info that I should have mentioned earlier.

    Nishi> - The only IDE we plan on using is (X)Emacs, if you
    Nishi> consider it an IDE. I have not evaluated Eclipse yet but
    Nishi> from what I have heard about it, it qualifies to be a
    Nishi> strong candidate too.

Xemacs should be fine.  There's a bit of a learning curve, but once
you're past that you can develop faster in that than in just about any
other development environment.  At least, I can :)

    Nishi> - Most of the members in our team (4/5) are freshers, and
    Nishi> much more comfortable with Java than with Perl. They have
    Nishi> already given their preference, which is Java. So, their
    Nishi> learning curve and their happiness is an important factor
    Nishi> too.

All the more reason to use Perl.  At the risk of repeating myself for
the nth time, I've yet to meet more than 2 people who can do good OO
design.  I don't even consider myself a good OO designer since it
takes a special sort of skill to be able to model a real-life problem
into a set of classes and methods, and I'm better at coding than doing
that.

People seem to be under the impression that just by using Java they
become OO programmers -- sorry, that just not true.  At least when
you're using Perl you're paying proper attention to class design,
inheritance and interaction; with Java you just ``make a class'' and
you're done -- done wrongly 99% of the time.

    Nishi> - Management is inclined towards Java, because Perl is a
    Nishi> 'difficult' language and 'it is hard to find good Perl
    Nishi> developers', whereas you can find Java expertise -
    Nishi> anywhere, anytime. Fresh graduates and even interns are
    Nishi> well-versed in Java, and that takes some pressure off of
    Nishi> maintaining the system ever after.

Again, they're well-versed in Java *syntax*, not in OO design and
implementation.

    Nishi> And now, here is my follow-up, point by point.

    >> -----Original Message----- Looks like I get first rant
    >> privileges on this one, so here goes.

    Nishi> Pleasure is all mine :-)

    >> - - The other nice thing about Java is its platform-independent
    >> GUI development model.  In your case I doubt if it'll be any
    >> use, since you're doing server-side, but for clients it makes a
    >> lot of sense to code once, run anywhere.

    Nishi> Team members would like to be able to 'duplicate' the
    Nishi> entire 'development system' on their 'home system' so that
    Nishi> they can do whatever they want to with it without
    Nishi> disrupting others, which I think is very nice. However,
    Nishi> 'development system' is a Linux based whereas some 'home
    Nishi> systems' are going to be Win* based. How far along the two
    Nishi> systems cooperate with each other, would be an interesting
    Nishi> feature to observe.

Not an issue.  Whether you use Emacs or Eclipse, Java or Perl, you can
replicate easily between Linux and Windows.

    Nishi> [snip]

    >> - - Non-free.  My biggest issue with Java is that its past,
    >> present an future are controlled by a single entity: Sun.  They
    >> decide which features go into Java and which don't.  They don't
    >> permit you to modify their code and redistribute it to your
    >> customers.  They don't indemnify you against patents in the
    >> code that they own.  I personally would never choose a language
    >> for which I couldn't be *SURE* that I could keep maintaining
    >> the version in the future or hack required features into newer
    >> versions if they were dropped.  Or just fork my own version of
    >> the language with original code if the original developer
    >> decided to start charging for his efforts.

    Nishi> This is probably not an issue for us since we have no plans
    Nishi> to modify either Perl or Java. Having them available on
    Nishi> Linux for free is one very big issue, and both take care of
    Nishi> that well.

Think again.  It doesn't matter whether you plan to modify Java/Perl
or not; the issue is whether you are guaranteed a free environment to
run your application in in the future or not.  Being subject to Sun's
whims in the matter of the language is definitely a no-no for Java in
my book.

Regards,

- -- Raju
- -- 
Raj Mathur                [email protected]      http://kandalaya.org/
       GPG: 78D4 FC67 367F 40E2 0DD5  0FEF C968 D0EF CC68 D17F
                      It is the mind that moves
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.4 (GNU/Linux)
Comment: Processed by Mailcrypt 3.5.8 <http://mailcrypt.sourceforge.net/>

iD8DBQFBm4jiyWjQ78xo0X8RAjdiAJ4/85Ykl6puQT9aho0MYLV7ArjuJQCfW7Oe
tk6gEunBKMY/b97qxrTzVFM=
=CPjO
-----END PGP SIGNATURE-----