RE (tilly) 1: Java vs. Perl from the CB
by tilly (Archbishop) on Nov 13, 2000 at 07:10 UTC
Gee, just goes to show me that you should never say anything
in public that you don't want seen in public. :-)
Just to expand on my basic point. There is a fundamental
trade-off between bureaucracy and individual productivity.
However bureaucratic constraints are critical to having
productivity scale across many interacting people. The
trade-off I mentioned in language design is therefore seen
across a broad range of human activities. In languages it
shows up as organizational work. Declarations that must be
made. Interfaces that must be defined. Things like
type-checking. Every one of these slows down the individual
programmer, but helps scaling to larger programs with more
Perl and Java are at opposite ends of that spectrum.
Intentionally so. This is a statement of fact, which can
be backed up by looking at specific design decisions,
quotes by people who like the languages, and quotes by
people who designed each language. Saying
this is not a statement of bias.
It is important when making decisions to be able to
recognize this kind of factor and decide accordingly.
Choose the right tool for the job and all that.
Now for the flame-bait.
There is a flip side to that saying which is less often
brought up. In addition to choosing the right tool for the
job, you must choose the right job for the person. And
what that job is depends for me on what the tools I will
need to use are designed for.
Java is a language that has been designed (and sold) partly
based on the PHB dream that you can replace programmers with
interchangable monkeys. Perl by contrast is well-designed
to take on tasks where programmers must be allowed to be
competent and think for themselves.
So even though I agreee that there may be many jobs for
which Java is a better fit than Perl, I prefer to work on
jobs which Perl is a good fit for.
Besides which I have read The Mythical Man-Month, I notice
random statistics, and I take them into account for my
life. The relevance of this takes some explanation.
For obvious reasons, a disproportionate share of programming
jobs out there are in larger projects. However the larger
the project, the more likely it is that it will be a
disaster. For projects that cost over a million dollars,
this outcome is far more likely than not. Having been near
(though luckily not really in) one multi-million disaster, I
have little desire to be near or in another.
Therefore even while I can cheerfully explain all of the
ways that Java is better for a large project, I would just
as happily not go near such projects. And again I find that
I prefer being around the kinds of jobs which Perl is used
for. Things involving a small team of good programmers,
taking on projects of a managable size...
Not being a programmer by trade myself (SysAdmin), could you give some examples of the projects to watch out for (i.e. larger projects), and those where Perl is a better fit?
I have always wondered why there are so many Java jobs out there. I'd always chalked it up more to the hype of Java (which is probably still very true), but this really opened my eyes to the fact that the reason that Java is so sought-after may be exactly because it's great for larger projects with less skilled programmers.
Java seems like a pretty decent language to me, but again, I don't have experience with software projects. The fact that it always whined when I didn't catch an exception, while helpful, was enough to annoy me. My last question, I had actually been thinking about learning Java, what would you recommend as a language to learn that has potential to carry a resume, as Java would now, has business appeal, as Java does, but which doesn't assert "B&D", as Perl does not?
You are asking the million dollar question.
For a sense of what you want to avoid, pick up the
by Ed Yourden.
How common are these? Well a 1997 study
found that 55% of projects were at least 50% over budget,
50% needed at least twice the estimated time, and 30% were
delivered with under half the desired functionality. (I
have heard stats like this before, but my
this time is citing an article that does not appear to be
online.) And that is counting by project. Considering that
disasters tend to be larger than non-disasters, this
understates your odds of being in one.
So how do you recognize a likely candidate? Well by a lot
of things, but size is an excellent predictor. I don't
know if they still do, but at one point Sun had an
internal rule imposed by the CIO. Projects were limited to
a maximum of 10 developers, a maximum of 1 year, and a
maximum cost of $1,000,000. Any project exceeding those
targets would be cut off because the risk of disaster was
getting too great.
Note though that Perl does not miraculously solve this risk
of disaster. In fact at least one monk I know of is
currently in the middle of a death march. Instead what
Perl does is aims to allow you to get as much done as
possible within parameters for your team which are
One thing I need to make crystal clear. The risks that I
am stating are for projects managed within the bounds of how
most software projects are managed. There are ways
to manage large software projects. IBM in particular has
a series of projects which they decided ahead of time could
not fail, which simply did not. I cannot track down the
exact quote, but the person who was in charge of designing
the AS/400 says that if development teams cared about
quality they would not have all of the bugs. Well
considering that the industry average uptime for an AS/400
is 99.9%, he may have a point. (When they went from 32 to
64-bit, your programs just ran a little slower the first
time you ran them.)
Now about your last question. Well I am the wrong person
to ask that of. I have no interest in worrying about my
resume. Three years ago I was just beginning in computers.
In two I get to leave New York City. In between I have a
job I like programming Perl...
Here come the Big Boss (Whur) let's get it on.
by frankus (Priest) on Nov 13, 2000 at 16:56 UTC
This rocks, not least of all as lots of mailing lists I
am on are contrasting these two languages. This chat was the
most fun I loaded up Carl Douglas's Kung Fu Fighting
on MP3 and read it through
I have spent years wanting to work with skilled Java Developers
, I still am. All the java developers I have experienced are proud
of their professionality, which seems to mean, their not
technically minded (waiting days for a sys admin to hold
their hand), confined to one OS and often one IDE, they see
this as a redeeming feature: presuming this makes them
Of course these are only my experiences and entirely subjective,
and have only been made since the inception of Java development.
This condition seems only to manifest itself elsewhere
with VB. Which is pretty much tied to one IDE and OS
(tye)RE: Java vs. Perl from the CB (no CB log included)
by tye (Sage) on Nov 13, 2000 at 23:44 UTC
Do you think posting a log of CB comments was wrong? Let me know. Thanks.
Yes. I voted the node down for this reason and because I'm sorry, but I really didn't see that much good content in it. I saw a lot of bickering and one important point (restated several times). I didn't think preserving the bickering for posterity was worth getting that one point across.
If you had asked the participants before doing this, then I wouldn't have minded at all.
I think the chatterbox has a different character than nodes in part because it isn't archived and we should keep that different character.
But I also can see value in preserving particularly informative chatter on occasion -- just get permission first. :)
(but my friends call me "Tye")
RE: Java vs. Perl from the CB (no CB log included)
by Macphisto (Hermit) on Nov 13, 2000 at 23:00 UTC
As one of the parties involved I was bit bothered when I saw this posted. But didn't feel the need to post. While it shouldn't have been posted, you do have every right to post what you want.
As the first person who attempted the Chatterbox Archive ( to my knowledge ) I wasn't told it was forbidden, I was simply asked not to as a matter of being polite. You can post what you, but you'll have to expect reprocussion from the other monks.
It's good of you to take it down as there are no specific rules to dictate you doing so. I don't think merlyn or anyone else has the right to tell to take it down, and hope that the others asked you to take it down instead of demanding.
On any hand, thank you for being considerate of the wishes of others.
Everyone has their demons....
A reply falls below the community's threshold of quality. You may see it by logging in.
RE: Java vs. Perl from the CB (no CB log included)
by little (Curate) on Nov 13, 2000 at 20:12 UTC
I have to agree to merlyn fully. This is one of the situations where I don't like the american way of "feel free of anything to do you want", when the following "unless you could hurt someone's personality, body, equity, rights, mind ..." was omitted
Sorry for saying it that rude but I've grown up in the GDR which was a totalitarian system.
If you tell something to someone in good mind you don't want him to go down the street alike "hey folks look and read what this person said".
Quite easy way to use cites to destroy your reputation :-(
So I don't see any reason to discuss the freedom of mind and the freedom to trust anyhow. Would you like someone who was listening in a pub what you saifd to your friend to give that to the news???
Well if, so better point out that you are a narciss.
Have a nice day
All decision is left to your taste
I appreciated the opportunity to see such an interesting debate and I would have missed it had I not been in time to see the posting.
I can appreciate people not wanting their words struck in stone due to the topic being somewhat controversial. But the discussion was lively and the arguments were well-formed, if we fired up a meditation with the same subject it would not be nearly as good in content.
If vroom does take off jptxs's points I shall blow 7 points, tomorrow voting for jptxs's things and to prove that
I am redressing an inbalance I percieve I won't even read the postings! (at least not until afterwards).
I am certain that the points will stay as whilst this was a faux pas it is not a punishable one.
It is a shame that the post was not okayed as it was very interesting.
RE: Java vs. Perl from the CB
by merlyn (Sage) on Nov 13, 2000 at 18:23 UTC
I just want to say that I'm offended immensely that my comments from a casual conversation where I don't think too much about what I say have now been recorded in perpetuity as a node for people to comment on and challenge.
We have all agreed not to maintain public logs of the chatterbox. I thought I was speaking in a safe environment, and would have spoken with more care and thought
had I known I was going to be publicly logged.
I demand this node be removed, as it violates the "no public logs of the chatterbox" rule.
-- Randal L. Schwartz, Perl hacker
Update: I'm not objecting to my specific comments in this log, but rather the principle of violation of "no public CB logs". Had jptxs asked for my permission to post my comments, I probably would have been happy to give it after a quick review. As it is now, jptxs has violated a public agreement, and I demand accountability for that.
Update 2: Thank you for removing my comments. And I hope this little scuffle brings us to an explicit understanding about the rules of operation. vroom will have to arbitrate the rule as to the permission for public logging, and I will live with his decision to permit public logs or not.
I've been around a while, and remember at least the last public CB logging discussion. Put simply, there was no "rule". Perhaps a "guideline", or "general agreement", but no rule. And to the original poster's credit (of this thread) I don't remember them being on the site during that time anyway. How would you expect them to know the "rule"?
I think that until recently everyone has asked about it before doing it(i may have missed something tho). In this case the inverse happened.
If a "rule" does get created and written to an official node, i'll have to think a long time about it's contents. I like the community aspect of the site. I like how behavior on the site is not a documented process, but an unpredictable, evolutionary process, constantly progressing and regressing like a tide with each new wave of people.
Remember that the new people who are participating on the site don't always know what guidelines of conduct the others have loosely agreed upon in the past.
P.S.- Not all node posts are always "spoken with more care" either. Some would have been better off as chatterbox posts. :)