Beefy Boxes and Bandwidth Generously Provided by pair Networks
Don't ask to ask, just ask
 
PerlMonks  

Java vs. Perl from the CB (no CB log included)

by jptxs (Curate)
on Nov 13, 2000 at 05:22 UTC ( [id://41244]=perlmeditation: print w/replies, xml ) Need Help??

I always think I'm going to miss something super cool in the CB if I'm not here all the time. Well, for all of you who feel the same way and were not here for this one (and I know you're out there), I've got a good one for you.

update:well, you did miss it. deal with it. this has been removed at the request of a few monks who feel it was wrong to be here. I have requested that vroom subtract the +7 XP which I gained from this node and will not be posting any more nodes like this at all. It makes me sad, though. It was such an eloquent discussion of this matter which so many monks are faced with. Please do not contact me for the transcript as I think that these monks would be even more pissed I started giving out other copies like that.

Do you think posting a log of CB comments was wrong? Let me know. Thanks.

<myExperience> $mostLanguages = 'Designed for engineers by engineers.'; $perl = 'Designed for people who speak by a linguist.'; </myExperience>

Replies are listed 'Best First'.
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 people.

    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 graphically titled Death March 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 reference 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 relatively low-risk.

        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 specialists.

    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

    --
    
    Brother Frankus.
(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. :)

            - tye (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.

    Macphisto

    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.

      --
      
      Brother Frankus.
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. :)

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: perlmeditation [id://41244]
Approved by root
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others lurking in the Monastery: (4)
As of 2024-03-28 20:46 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found