babellog

Thursday, July 29, 2004

Paul Graham says ...

Paul Graham says...

"The programmers you'll be able to hire to work on a Java project won't be as smart as the ones you could get to work on a project written in Python. And the quality of your hackers probably matters more than the language you choose. Though, frankly, the fact that good hackers prefer Python to Java should tell you something about the relative merits of those languages"

from the rest of the "essay", he seems to spend a lot of time slamming Java for no apparent reason. Of course, he also thinks that

"... you find that open source operating systems already have a dominant market share, and the number one language is probably Perl."

But why does Java suck ? I've gotten used to it over the years and while I would rarely program in it voluntarily, I'm sure it doesn't deserve the abuse.

16 Comments:

  • At 12:40 PM, Blogger edg said…

    Well I have always wanted to learn Java, but I think its to late for me. Cause the vastness of it is just mind boggling for me.

    So I have decided to learn Python and maybe C.

     
  • At 12:46 PM, Blogger longdeparted said…

    starting with little pieces helps. Python isn't so small anymore, is it ?

    Of course, the best (or worst) way to learn it is to be given a job and being in a position to have to finish with a tight deadline. And the job has to be done in Java. Nothing like being thrown in at the deep end to motivate.

     
  • At 5:34 PM, Blogger edg said…

    Hey, I think its a painting of the tower of babel on PG's book ... :D

     
  • At 11:32 AM, Blogger 88Pro said…

    I respect Paul Graham, he has written and contributed a lot to the software world. But this is the same guy who dismissed Java (without writing a single line of Java code)

    http://www.paulgraham.com/javacover.html

    Ok if you ask him, whats the best language in the world, he is going to say LISP. OK Agreed he ran a software company which did web development in LISP and was successful. Despite the fact that its a great language where does Lisp stand in the industry today? May be No where? May this post at JoelOnSoftware would interest you

    http://discuss.fogcreek.com/newyork/default.asp?cmd=show&ixPost=1998&ixReplies=32

     
  • At 12:47 PM, Blogger longdeparted said…

    I think his point wasn't about what is successful in the industry now. Certainly in that sense, Python would be nowhere as well. His point was about what is ahem.. cooler :) Interestingly enough, another person who seems like Python is Bruce Eckel.

    Preferring semicolons as a statement terminator, I don't necessarily agree with either of them. *grin*

     
  • At 1:12 PM, Blogger 88Pro said…

    "The programmers you'll be able to hire to work on a Java project won't be as smart as the ones you could get to work on a project written in Python."

    I don't agree with that statement at all (of course how can I? I write java code for living:-)) I don't think smartness is in what language you use, its in how elegant your solution is. Moreover, please don't hire people for their language expertise; hire people who can get things done.

    http://www.joelonsoftware.com/articles/fog0000000073.html

     
  • At 5:05 PM, Blogger longdeparted said…

    Marduk, I am shocked. No, really. If you think Perl OO is a hack, you haven't figured out how much can actually be done with it. As opposed to other languages which fasten straitjackets and become all pissy about their objects.

    We all know ... is a bit presumptive, if nothing else :) Some misguided persons think so, but it ain't necessarily the case. Python is clean OO for those who're used to OO implementations from other languages. Actually, I'd argue the coolest OO language of all is probably Smalltalk (which I'm slowly picking up when I have free time)

     
  • At 2:05 AM, Blogger edg said…

    This comment has been removed by a blog administrator.

     
  • At 2:08 AM, Blogger edg said…

    White space indenting might seem like a bad idea but atleast the programmer is forced to indent the code. Considering how lazy some people are, this is a nice feature.

    As for one liners, I agree with you totally. I burnt my fingers trying to use python for everything, I want to get back to learning awk and sed, while following up on python.

     
  • At 2:32 PM, Blogger longdeparted said…

    sorry, Marduk. I wasn't flaming you, alright? :) But yes, Perl got objects from version 5 onwards. I had the brief (dis)pleasure of writing Perl 4 for a short time.

    But two things (to add to the vigorous Perl OO defensive position which I feel compelled to take, for some inexplicable reason); would you consider C++ a hack compared to C? Is Perl 4 vs Perl 5 so different from C vs C++ ?

    Secondly, would you continue to write for loops in Perl because the "other languages" don't have a foreach ? (Obviously, I am referring to pre Java 5.0 and C# era languages). ie: Would it make sense to evaluate Perl's object implementation solely by the standards of other languages ?

     
  • At 2:42 PM, Blogger longdeparted said…

    Ed, ironically, I'm wishing for a nifty interactive shell in Perl at times :) although it is a bit much to give up the oneliner -e hacks that I do with Perl, so maybe another command line switch would be handy.

    As for indentation, yes, it does make sense, but your own sample code of a few posts ago (err, I mean ahead) shows why it can sometimes be a problem. Whitespace is not always easy to "transfer correctly" from an editor to say .. a browser or an email. Don't even get me started on the spaces vs tabs for whitespace issue ;)

     
  • At 3:37 PM, Blogger edg said…

    I haven't dabbled with Perl, I saw somewhere that awk is an early predecessor of perl?

     
  • At 3:50 PM, Blogger edg said…

    yes I did encounter some problems and I do remember have problems when transferring it as well.

    If the users are responsible enough to indent their code and keep it neat and tidy it's fine.

    I guess it is open to debate, are their anymore lanaguages which uses whitespaces for indenting? As I can remember COBOL (not that I have used it) had specific places for stuff.

     
  • At 8:29 PM, Blogger longdeparted said…

    *grin*Perhaps we're saying the same thing, my point was that in your terms, C --> C++ was a bolton of OOP. Ditto Perl 4 to Perl 5. Would you rather force people to use nothing but objects ?

    On the whole @ISA issue, no I admit that it's not clean, but it does depend on perspective. I think it better to have explicit typeglobs, symbol tables and ancestor structures than have it hidden away somewhere. That by the way, reflects a personal belief and will probably be looked on as heresy by the OOP purists.

    psh => thank you kindly. I had seen it before. I remember a p5p discussion a while back on having an interactive shell as core (which is what I wished for, actually), but I couldn't remember why it was shot down. There are good reasons for not having it, I am sure. Till then, there is always perl -d ;)

    Ed, Fortran uses column delimition, IIRC. Never used it, but I remember reading something to that effect.

     
  • At 12:00 PM, Blogger 88Pro said…

    http://fishbowl.pastiche.org/2004/07/31/hiring_great_hackers

     
  • At 10:00 AM, Blogger 88Pro said…

    A view from Borland/Delphi community on Paul Graham's, great hackers essay.

    Great Hackers - huh?

     

Post a Comment

<< Home