Paul Graham is a tedious windbag
As tawdry as it might be to descend to everyone else’s level and discuss this pathetic piece of writing, where one Mr Graham decides to singlehandedly define hackerdom and those privileged enough to live there (us poor java folks just don’t cut it), I feel there’s just too much there not to give it a good solid harpooning.
First, this loon proclaims that all the great hackers he knows use python or some such nonsense. Well, let me contrast that with my own experience. Every single java guy I know who has advocated python is guaranteed to be middling and the kind of person who is amused by shiny baubles. The ‘greatest hackers’ on MY list happen to be a bunch of java guys, with lispers and erlangers thrown in. No python, no ruby, and definitely, definitely, no perl.
Even more presumptuous are his claims that hackers are some kind of holy being, that must be treated with the utmost caution and be given endless reams of open sores to play with. In his silly makebelieve world, there are no meetings that said hacker has to attend. Said hacker would never use windows voluntarily, and have all sorts of other bizarroworld properties that I suspect all happen to accidentally apply to the author himself and his friends.
He also claims that perl is the most popular language for voluntary open source work. Hmm, what backing does he have for this claim? On freshmeat in fact, where every little turd releases his open source effluent, java is in second place behind C (yes, even narrowing beating out perl). So I in turn will exercise my ‘make a wild claim through determined arm-flailing’ rights, and say that that proves that when hobbyists need to get things done or hack up stuff for fun, they will choose C or java in their spare time.
The whole article is offensive and ridiculous, and typical of the American attitude he so readily derides. That whole ‘me and my friends are great, let me tell the world about how great we are’ bullshit to try and pretend that he matters, or that his life isn’t as worthless as he probably suspects, deep down inside. The feeble ‘it has nothing to do with arrogance’ attempts fool no one. Pauly rather obviously thinks very highly of his hackerdom and its delighful asshat citizenry.
It’s quite one thing to be proud of what you do, and feel that you’re at the top of your game, for some defined value of game. It’s quite another to be an offensive wanker about it and think that you’re some kind of special animal who matters in the grand scheme of things. You have your place, and it’s not more exalted, relevant, profitable, or contributing to the general advancement of humankind than that of a pretty good salesman possibly selling a decent product. Or that of a pretty decent java developer, or a decent graphics designer.
July 30th, 2004 at 8:21 am
Hani, you are truly the master of subtle self-deprecation.
“It’s quite another to be an offensive wanker about it and think that you’re some kind of special animal who matters in the grand scheme of things.”
Indeed.
July 30th, 2004 at 8:25 am
When Hani is accusing Paul Graham of being “an offensive wanker”, it’s an amusing world indeed. Pot, kettle, black.
July 30th, 2004 at 8:27 am
Ach, all the Javites are whining like a bunch of crybabies about how he insulted their language and their tribe (and their API and their platform and their taste in programming). BFD!!
He was spot on about “the death of a thousand cuts” and why VC’s are dummies and why N-T spells D-O-O-M.
If he’s such a LISP wunderkind, let’s see him make a nice gnarly tool to turn XML into executable S-expressions…
July 30th, 2004 at 8:31 am
Of course the greatest hackers are in the Perl group. You have to be a great hacker just to read some of the stuff churned out by the Perl camp. :-)
July 30th, 2004 at 8:54 am
A fair and just bile of an ignorant piece of shit. In terms of great hackers Paul Graham is right up there with Al Gore.
Anyone know any commercial quality apps written in perl? The people I know that think perl is so wonderful were programming in Microsoft Access before they discovered the great hacking tool that is perl.
July 30th, 2004 at 10:15 am
“Anyone know any commercial quality apps written in perl?”
Amazon.com ? ;)
July 30th, 2004 at 10:39 am
Don’t make fun of the man who brought to the world the first web application (in 1995): Show some respect, be humble. Bow.
July 30th, 2004 at 11:28 am
So if Java programmers are such great hackers, where is the great Java code? All I see are failed efforts to reproduce the functionality of 25-year-old tools, more web application frameworks than there are web applications, apps that force their users to write XML scripts or configuration files because the developers don’t know how to write a parser, and loons who think that XML is a good way of representing data in network messages.
July 30th, 2004 at 12:26 pm
Perhaps because the Java programmers are busy making real apps?
It’s obvious that “Anonymous”, above, only spends time on SlashDot and Sourceforge.
Don’t forget, most of us Java programmers have real jobs–the fruits of which are never seen by the general public.
If you want an example of a Java app….try eBay.com.
July 30th, 2004 at 12:46 pm
Ebay.com does nothing new technically. The business idea is fantastic, but it uses traditional, conservative design behind the scenes. I disagree with Anonymous, Java can push technological boundaries (Jini, for example). But Java users don’t use the technology to its fullest potential. The really cool aspects of Java — like transfer of code across the network — is never used by 99.999% of Java applications.
July 30th, 2004 at 1:18 pm
Who even said java was a great hacker tool blahblah? Why get all defensive? All you perl wank0rs get back to creating your unique and new tools that noone has seen before and stfu!
Something that *is* common knowledge about hackers is that they don’t brag, they do! They leave running mouths to wankers.
July 30th, 2004 at 2:13 pm
I dunno. I think Larry Wall is a great hacker. But I guess everyone’s greatest list is going to look different.
I suspect that, like me, Hani is just jealous of all these hacker dudes who never have to attend meetings or work with Windows.
July 30th, 2004 at 2:48 pm
a lot of ground breaking stuff has been done in Java. Such as…
language parsers, speech recognition engines, barcode recognition engines, OCR engines, app servers, text editors, IDEs, database servers, office packages, operating systems and gaming engines to name just a few.
Perl has a long way to go.
July 30th, 2004 at 4:10 pm
Rob Abbe,
and which of those was groundbreaking? Just stop this ridicoulus penis measurement contest. Leave that to the wankers!
July 30th, 2004 at 5:07 pm
What’s wrong with Perl?
July 30th, 2004 at 5:33 pm
” The ‘greatest hackers’ on MY list happen to be a bunch of java guys, with lispers and erlangers thrown in. No python, no ruby, and definitely, definitely, no perl.”
WRONG. Try C dude. It’s the only way to overload them buffers!
July 30th, 2004 at 5:54 pm
JW,
You can find ground breaking work in every area I mentioned if you care to look. Take a look at the advancements in IDEs as an example. Love them or hate them, IOC and AOP also come to mind since so much that work has become popular on the Java platform.
A cross platform barcode recognition engine is ground breaking since there are few such engines for platforms other than Windows.
You’d have to be one hell of a “hacker” to create any of these things in perl.
Rob
July 30th, 2004 at 7:41 pm
My favourite quote is..
“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”
This is ill-informed nonsense. Where is the research to back this up. Not only does it piss off the Java community, I imagine the Python community have their heads in their hands thinking “Who is this tool?”.
A quality developer is one who is multi-lingual and knows when to use the right tool for the right job. Java has it’s place, as does Ruby, Python, Perl, and C. Sometimes there may be justification for assembler.
Another gem is “Great hackers also generally insist on using open source software. Not just because it’s better..”. This is naive at best. There is some great open source software out there. But being open source doesn’t guarantee it is great software. Following this logic, to say open source is better must mean closed source/proprietary software is shite right? Not quite so. There is some great proprietary, closed source software out there.
All in all, he sounds like a complete knob-jockey.
July 30th, 2004 at 7:42 pm
A quick glance through Graham’s writings shows that he’s not really prejudiced against Java in particular, just against object orientation in general: “I don’t think it has much to offer good programmers, except in certain specialized domains … Object-oriented programming offers a sustainable way to write spaghetti code. It lets you accrete programs as a series of patches.” He is as critical of C++ as he is of Java, just because they are primarily designed as OO languages. He admits to not having ever written in Java. Basically all programming advances since the 60s have just passed the guy by. Why is anyone taking any notice of a guy whose main claim to fame is that he wrote an Internet shopping mall in Lisp?
July 30th, 2004 at 7:49 pm
Oh sorry, I forgot, he also applied a basic statistical concept to email filtering as well that worked for like at least one year. Somebody give the man a fuckin Nobel prize tout suite.
July 30th, 2004 at 8:14 pm
The whole foundational discourse bullshit about “hackers” is what’s really offensive in Graham’s missive. Stinking fucking prima donnas who don’t want to get their hands dirty and who can’t cut code that someone else can maintain if their life depended on it. Spaghetti code producing fuckwits who couldn’t produce a half decent build system, configuration management system or write a unit test. Children drawing stickman drawings with crayons on the walls of their parents houses who think they’re goddamn Rembrandt! How could this be possibly be regarded as “elite”?!
July 30th, 2004 at 8:42 pm
Great bile, as usual.
Maybe true, except for the “profitable” part. The dude made a bundle selling his web store software to Yahoo!
July 30th, 2004 at 8:59 pm
“Somebody give the man a fuckin Nobel prize tout suite.”
–Or at least the Village Idiot Award
July 31st, 2004 at 5:05 am
I like this “top quality hackers insist on using OSS in every spot” claim. Boy, there is so much crappy open source stuff, that in fact you can only use very few projects to do real work. Another interessting issue is counting successfull projects in terms of used languages. Every language can highlight some big big projects, so this cant be a measurement. The java camp allways mention ebay and the perl guys allways amazon. The only interessting point is, amazon started quite small and still commit to perl, while Ebay is on the way redesigning their C++ DLL shit to Java. But whatever language, you can release good software, but getting skilled perl programmers (with enterprise backround) seems a little bit harder than finding J2EE folks.
July 31st, 2004 at 9:27 am
Who is “Paul Graham”? And what is “lisp”? Is this just another poor sod that has a hard time pronouncing things?
July 31st, 2004 at 9:31 am
I understand Amazon has an extensive Java infrastructure alongside that perl, these days. Or so I was told by a perl chap I know who used to work there, and is now redundant, bitter, and learning java. Hehe.
July 31st, 2004 at 3:17 pm
Hmph!
Amazing how we consistent we are in deciding that just about everyone else in the world of [choose random topic here] are “berks and wankers”.
And no; being: able – to say who, it is i’m quoting and why(?) they said it… doesnt’ make you clever. so there
July 31st, 2004 at 8:36 pm
how can you belittle perl, consider how big is the java program to rename the extension of a number of files in a directory tree vs a perl one… see you java guys in 15 min, I’m done…
for real, java vs perl arguments are such bs, I can’t believe that people don’t find occasion to use both in tandem all of the time
July 31st, 2004 at 10:59 pm
Paul Graham has spent years trying to demonstrate what an effete ponce he is, “how I am so so much like Van Gogh, that I should get laid more”, that this diatribe is really beneath him, and really at odds with all of his previous writings.
Anybody who steps into the my math/physics/language is stronger/better/cooler than yours is an elitist plain and simple. This is something I would expect of a medical student or a perl programmer who couldn’t finish college.
IMHO, Perl is the easiest language for an ass to express a fart in! Period! Lets move on, shallow grave the carcass and drive the buick away quickly…
August 1st, 2004 at 3:12 am
Perl is a wham-bam-thank-you-ma’am language, while Java…
August 1st, 2004 at 5:59 am
Java is for long nights of hot man-love.
August 1st, 2004 at 6:46 am
Java is a coitus reservatus language: takes more time and effort, but usually yields memorable, high-quality results.
Perl is good for quickies: has instant gratification appeal, but usually yields forgettable, low-quality results.
Both have their right times. A “Great Hacker” knows when.
August 2nd, 2004 at 6:18 am
Hi,
I’m having troubles deploying CMP entitybean to websphere application server 5.0.
Everytime I try to generate deployment code using that gay-ish Application Assembly Tool, I get this error message:
Could not find type map for attribute ‘denomination’. (No type mapping defined for java.math.BigDecimal to DOUBLE)
What should I do?
August 2nd, 2004 at 6:23 am
And please be hurry. I have to fix this as soon as possible. Customers are standing in line, tellers can not process transaction because of this problem. The bank is loosing many transaction opportunities today.
What should I do?
August 2nd, 2004 at 6:39 am
Hi Y’all!? Are you deaf? Can’t you be more agile? Answer my question… or suck my dick.
August 2nd, 2004 at 7:05 am
Ho hum
“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. [2]”
This is gets pretty funny when you consider his reference:
“[2] When Google advertises Java programming jobs, they cleverly require Python experience.”
Right. Well. Any semblance of scientific credibility just went right down the toilet.
“What do hackers want? Like all craftsmen, hackers like good tools. In fact, that’s an understatement. Good hackers find it unbearable to use bad tools.”
This part of the article sounds like someone loudly proclaiming “Golf clubs are the best way to propel small white balls through the air.” In fact giant steam powered cannons work much better. But the said arm waver always uses golf clubs because he wants to be part of the exclusive band of sniggering fuckwits who use them out of some kind of bizarre homoerotic masochistic urge.
for those of you not good at metaphors:
java=cannon
python=three iron
perl=sand wedge
ha!
August 2nd, 2004 at 7:34 am
I don’t consider someone who develops products and applications for some corporate IT department a hacker. Hackers exploit security and if you ever bother to read phrack or other expert publications you’ll know C and ASM are the ways to go.
August 2nd, 2004 at 9:55 am
Actually crackers are the ones who exploit security weaknesses. Hackers have always been people who hack code.
So go fuck yourself dickbrain. And stop reading popular rags that use incorrect terminology.
August 2nd, 2004 at 12:35 pm
Yay! The joy of clueless trade rags.
August 2nd, 2004 at 3:44 pm
Stop it! Hacker means “someone who breaks into computers, often illegally” according to 99% of the world. You can’t deprecate English words, you know, like a keyword in Java – real languages are flexible and can mean multiple contradictory things all at once, so get over it. “Hackers” (of all sorts except the crap golfers) find this difficult to understand, I suppose, being socially inept.
You don’t catch crap golfers shouting and squealing “hacker meant a crap golfer first! Stop using it this other way!”. This is because they aren’t arseholes.
Generally, if I hear somebody using the world “hacker” to mean “someone brilliant at programming”, I immediately know he’s a fuckwit – the sort of fuckwit that has unlearned the popular, and thus sensible, definition of the word, in order to belong to some internet “community” of arseholes, and who will concern himself with all sorts of silly, meaningless shit, such as this article.
For me, a good programmer doesn’t give two hoots about any of this stupid stuff. Only arseholes who have read too much slashdot and other propagandistic literature do. The sort of people that get concerned over who is and who isn’t a good “hacker” are living in a dreamworld.
These little language debates come down to conservatism V progressivism, of course. So-called progressives, as with everything else in life, want to try new things, and are convinced that the world is in need of reform. They generally progress through python, then ruby, then often scheme thereafter, and try to inflict it on everyone. After a while, they will probably mature and become conservatives, realising that in the real world a small language that is easily understood with nothing too fancy and a huge library of precanned solutions really is best for getting stuff done, and the lisp is best for mucking about with at home (though, usually by the time they have reached this stage, they no longer muck about with languages at home, having a wife, children, and responsibilities). Some cases are idealistic even unto old age – the Chomskys, the Grahams, etc, but we know what Churchill said about people who are still socialists by the time they are 40. They aren’t worth attention.
August 2nd, 2004 at 9:43 pm
I read Graham’s article, and found it utter junk. A wee bit of “the best hackers I have met use Python” would have gone a long way, especially if some numbers were attached.
I have looked at Python, and even implemented a two month project in it. Would I use it again? Probably not, unless it really seemed like a nice fit. I also spent six months doing Perl. Enough is enough. Some other folks here use it, and love it, but I do not enjoy Perl at all. My conclusion? That I happen to be most efficient in C++ and Java, and not Perl. Others developers have different favorite tools, and you select developers like you select tools – according to the task.
Let me say that more strongly. The best hackers I know have flexibility. They know a lot about a lot of things, and that helps them be the best hackers. Inflexible idiots are rarely the best hackers, though they may be clever.
Some darn great hackers I know live in the java space. Others live in Perl, a few in Python, but frankly, I know more great java hackers. Most know C++, Perl, Python, C#, Matlab, or some subset thereof, but it is utter nonsense to claim that Python programmers are “just better”, at least without some proof. To quote Tom Demarco, proof by assertion lacks a certain rigor.
I can believe that any competent Java programmer trapped in the same room would leave rather than talk with the pompous windbag.
Scott
August 3rd, 2004 at 4:04 am
He says that you can’t judge if a coder is a wizard without working with him. Then later he says he knows a wizard who prefers java. Then he says he’s never worked with java, and he finishes with the conclusion that java is bad! The guy really has some serious problems with his logic. If he were a CPU he’d be thrown into the garbage.
August 3rd, 2004 at 8:29 am
Hi thristle,
Does this mean everybody who says American actually means Asshole ?
August 3rd, 2004 at 9:09 am
Yawn. Another “how to spot a hacker, and how to deal with them (us) on their (our) terms” article. Hasn’t the mustache already trampled this ground flat?
Not in the least surprising that he feels the need to try to prop himself and his ilk up be dragging down java and java developers – this is pretty much SOP for folks who desperately want to be identified with a group or clique that they consider elite. In my experience, this is one of the defining characteristics of self-stylized “hackers”, and why you can’t get two or more of them in a room together without everyone dropping trau and reaching for their rulers.
August 3rd, 2004 at 12:31 pm
They aren’t reaching for their rulers…..
tug tug tug.
August 3rd, 2004 at 4:46 pm
Some pretty good bile in the comments. Maybe Hani could have some people “guest bile” on his blog?
August 4th, 2004 at 12:51 pm
Well Hani, with the Dietzen announcement it looks like your buddies are all bailing out of BEA. However I don’t see anyone leaving JBoss. Guess you lose!
August 4th, 2004 at 2:01 pm
Reason people aren’t leaving JBoss is they all get to share the money. Either that or they’re unemployable anywhere else.
August 4th, 2004 at 8:32 pm
*snore*. java vs (some wanna be’s language). is baseless and boring. paul graham seems he’s met very few people IRL if he things python programmers are necessarily the best. Paul would make a good ESR/(Bruce Eckles?) “mini-me”. (btw, anyone here notice the phallic appeal of “python”?)
Obviously, programmers who venture into functional/scripting languages may have somewhat of an edge in some areas if they can actually use it but really now, python/scripting like that have a limited niche, its not going to outgrow java or any language with a large set of libraries and tools and using it isn’t going to make you grow more pubes.
There are plenty of fine programmers who don’t use python. I’m sure most programmers (including the more modest python ones) realize that and will ignore this brief and unsettling flatus coming from Mr. Graham general direction. He deserves a good harpooning/scapegoating. It’s very annoying to see this come up again and again from the same crowd.
August 5th, 2004 at 2:36 am
If you don’t use COW, you’re a girlie man.
August 5th, 2004 at 6:44 am
Thistle is well named – obviously a prick.
I like the idea of using the word “American” to describe an all round asshat. Oh wait a minute, people already do that. I exempt Clown Puncher who seems to be an American in the old fashioned (pre this discussion) sense of the word, and is probably the exception that proves the rule.
Anyone who uses a scripting language for ANYTHING is a wanker and should not be classed as a programmer, let alone a hacker.
August 5th, 2004 at 12:47 pm
Thanks Biggus–you’re right.
Look at the URL, that’s me on the left–and an unsuspecting victim on the right.
Shortly after this photo was taken, he started mumbling something about Jython and BeanShell…..and well, you know the rest.
August 5th, 2004 at 3:54 pm
If he has not done any java programming then he cannot comment on the merits of java.
Its fucking obvious that no language is going to fix all the problems. There is no one shoe that fits all!!!
Why the hell on earth all this wide mouthed asshats fail to see that point? Whats the point he is trying to make?
And use of the word ‘hackers’. So is he proud of being called as ‘hacker’? Its pretty much like touching your ‘unmentionables’ at the city centre high street on a saturday morning.
Grow up or Shut The F*** Up!!!!
August 6th, 2004 at 5:40 am
Oh no! Look what I found..
http://news.bbc.co.uk/1/hi/world/americas/3540778.stm
Thing is, can you be sued for insulting someone if you’re NOT anonymous?
August 6th, 2004 at 2:31 pm
Stay tuned on this blog, and eventually you’ll find out.
August 9th, 2004 at 11:31 am
“The ‘greatest hackers’ on MY list happen to be a bunch of java guys, with lispers and erlangers thrown in. No python, no ruby, and definitely, definitely, no perl.”
After looking at your OSWorkflow travesty, I hardly give a shit about your list. C rules asshole.
August 9th, 2004 at 4:34 pm
Perl reams asshole
August 9th, 2004 at 6:44 pm
I wish Hani would use the term “turdburglar” more often.
August 11th, 2004 at 7:09 am
Paul G. is the windbag goes on and on about the mediocracy in the software development shops. So is the bileblog. Frankly I’m a little dissapointed of the fact that this bile makes PG:s essay to a language war, which it is not about. The whole essay is about the f—–g problem with that development sweatshops is filling the world with bad code because the people still think that they can throw bodies into development projects to complete them faster.
August 12th, 2004 at 4:18 pm
I second the opinion that OSWorkflow is a stinking pile of dung. I’m using that heap of shite on a project now, unfortunately.
August 13th, 2004 at 12:10 pm
You guys seem to think Graham’s never written anything except screeds. He has written quite a bit of actual code y’know!
Yeah, the article was heavy-handed. But Java-the-language does feel restrictive in some ways. You can go and read DDJ about ways to do Smalltalk-like dispatch and metamethods and such in Java, and it’s wonderful that you can do it at all, but it’s so… verbose! Anyone who would willingly inflict that on themselves should understand the tradeoffs. There’s no accounting for taste. I know good coders who prefer straight C; I know others who think that C syntax is not effective at expressing ideas (which is one function of programming languages, no?).
Gotta give Java credit for the big collection of libraries, though….
August 19th, 2004 at 6:01 pm
This Paul Graham guy really pisses me off. He needs to change his name so all my friends will quit sending me these obnoxious articles slamming Paul Graham.
August 24th, 2004 at 12:04 am
the best programmers in the world are game programmers. the worst coders in the world are academics (who statistically prefer python). some of the best game engines i have seen have used stackless python to externalise game functions and ai controls for level designers. the best hackers i have seen (who now write security systems and hacker traps/tracers) use C and ASM and sometimes perl when they are process server logs.
so, what’s my point? i don’t have one… which is my point. bb|[^b]2 that is the question.
August 25th, 2004 at 6:09 pm
Not that anyone here actually cares about the truth, but Paul Graham has quite a bit of real hacking under his belt.
People love to bitch about this piece of work, but I have to ask, “Do you code on your days off?” If so, what language do you use? Is it really Java? Have you tried anything else for a real project?
I didn’t get to sell my work to Yahoo! for a huge truck of money, so I still have a day job hacking at C++ and Java, but when I go home and decide to code, it’s in Python, Ruby, Scheme, Ocaml and C.
Java may be great and all for commercial work. It may not be. The point is, when some really fabulous programmers sit down and say, “Time to do some work on my terms and up to my standards!” (and assume these standards are greater than the day job) then they don’t reach for their JDK… unless their project needs it.
This isn’t blizzard-perl-code we’re talking about. This is good stuff. This is the stuff that major OSS projects are made of.
You folks need to stop letting your ego run the show. Just because Java jobs aren’t great (and they aren’t, most suck) doesn’t mean you’re not a good programmer for working with Java. That’s not what he’s saying, and if you think that’s what he’s saying, you need to read his essay a bit more critically.
September 2nd, 2004 at 7:31 am
Is Bruce Eckel next on the list? http://mindview.net/WebLog/log-0053
September 4th, 2004 at 1:05 am
Not that anyone here actually cares about the truth, but Paul Graham has quite a bit of real hacking under his belt.
Honestly, I find this hard to believe. I read a few of his articles and he seems to have a very poor grasp of even simple concepts such as object oriented programming.
BTW: Why is he bastardizing the term Hacker? It’s an insult to anyone thats been programming for more then 20 years. It means someone who breaks into computers or someone who uses brute force over elegant solutions. I think he got some of the old school terms confused. Wizard would be what he is looking for
People love to bitch about this piece of work, but I have to ask, “Do you code on your days off?” If so, what language do you use? Is it really Java? Have you tried anything else for a real project?
Yes, like all serious programmers I program in my off time. I use Java and other things. Like others I use it for real world projects mostly…the current project I am leading is almost 3 million lines of Java code, developed in 2.5 years by a team of 8 programmers.
I didn’t get to sell my work to Yahoo! for a huge truck of money, so I still have a day job hacking at C++ and Java, but when I go home and decide to code, it’s in Python, Ruby, Scheme, Ocaml and C.
Reasonable things, but not overly practical for real uses, except C.
Java may be great and all for commercial work. It may not be. The point is, when some really fabulous programmers sit down and say, “Time to do some work on my terms and up to my standards!” (and assume these standards are greater than the day job) then they don’t reach for their JDK… unless their project needs it.
This isn’t blizzard-perl-code we’re talking about. This is good stuff. This is the stuff that major OSS projects are made of.
Simply incorrect, you are generalizing. For example, one of my senior engineers (who has probably fogoten more about programming then Mr. Graham will ever know) is developing a distributed, load balancing/fault tolerant, multi-platform, micro kernel – services and application platform framework…using Java, in his spare time…kinda makes a spam filter seem like…well..a spam filter (a boring, grade 6 programming project) ;)
You folks need to stop letting your ego run the show. Just because Java jobs aren’t great (and they aren’t, most suck)
There are MANY great java jobs out there. There are also many crappy ones. That just shows how diverse and capable the language is and how broad an appeal it has. I have used it for developing everything from MMS multi-media wireless teleccom systems to neural network apps for the military and enterprise database systems. Others are building development tools, games, distributed systems, etc… all the way down to web site banners. Anyone working on a spam filter in it? Probably.
doesn’t mean you’re not a good programmer for working with Java. That’s not what he’s saying, and if you think that’s what he’s saying, you need to read his essay a bit more critically.
What he is saying is he has had very limited exposure to real software development and he is stuck in the 60′s in terms of development concepts and languages…if you don’t see that, then you aren’t being critical enough.
People aren’t worried that he thinks they are a stupid for using Java, they are worried that others might actually think he has the slightest clue what he is talking about. He needs to get some more real world experience and meet some real programmers solving real problems. The fact that he is attempting to devlop a new language based on Lisp, is interrpreted and doesn’t support OO…makes him sound…well…to use his word…stupid.
And that’s the truth.
September 4th, 2004 at 1:41 am
PS: I missed this part of your comment and since it is a question, it deserves an answer:
Have you tried anything else for a real project?
I have done real world apps in: Ex Basic (early 80′s), Pascal, Assembly, C, dBase, Clipper, VB (forgive me…it was only one project), Powerbuilder, FoxPro, Smalltalk, C++, Java, Perl, Python, PHP. I am most experienced in C++ and Java, 12 years C++ and 7 years Java (overlap).
I love both C++ and Java and believe script languages are best left for those looking to learn programming (hmm..explains Graham) and IT people …except maybe Perl and PHP…just cuz they are fun.
September 8th, 2004 at 5:41 pm
“The fact that he is attempting to devlop a new language based on Lisp, is interrpreted and doesn’t support OO…makes him sound…well…to use his word…stupid.”
The fact that you haven’t bothered to look at any information about PG’s new language, and discover that it does indeed “support” OO says something about you. The fact that you think the mechanism of evaluation is part of a language gives another hint (also, see point 1: PG’s language will indeed have a compiler). However, the fact that you can’t even bother to spell-check your ignorant drivel is what really makes you look stupid.
You could have at least looked up the name of PG’s “new language” to give yourself some credibility. It’s called “Arc.”
“And that’s the truth.”
Amen brother!
September 9th, 2004 at 12:29 am
Sorry I was pissed when I wrote that. I got into this debate late in the game, most people blew their top on this drivel long ago.
I am quite looking forward to seeing this “new” (Sounds like creative Lisp macros to me) language.
You might want to check out this link with regards to Arc and OO, it’s uses and his feelings on it in general: http://www.paulgraham.com/noop.html
My head is still shaking at that one.
As well as this quote from his FAQ:
“Is Arc object-oriented?
The phrase “object-oriented” means a lot of things. Half are obvious, and the other half are mistakes.
We believe Lisp should let you define new types that are treated just like the built-in types– just as it lets you define new functions that are treated just like the built-in functions. We don’t believe that every program should consist of defining new types. ”
Is that a yes or a no? Please answer your own question Mr Graham.
Since he doesn’t say yes, and his descriptions of types and functions (in object land we call them methods or messages), it sounds like a no to me. Perhaps he is doing pseudo objects of some kind, but so does MS-DOS batch files if you chain them correctly.
Will Arc support inheritance? Multiple inheritance? Interfaces? Member variables? Protection? Reflection? Maybe you can answer these questions for me since the Arc FAQ can’t.
Cheers
September 23rd, 2004 at 5:36 am
Heh. All the Perl naysayers here bemuse me.
Go on use Java. Everyone chooses the punishment they deserve.. :)
October 6th, 2004 at 5:43 pm
Darren Pye: mu. Go reread http://www.paulgraham.com/reesoo.html. There’s at least 9 different things “object-oriented” can mean, and every language picks a different subset. Since Arc is a Lisp, it has (at least) {3,4,5,7} — is that a yes or a no *to* *you*?
It makes no sense to have a yes/no answer to a question that asks for which of 9+ features a language has.
Alan Kay coined the term “object-oriented”, and he often says “C++ is not Object Oriented”. Stroustrup wrote C++, and he says otherwise. If you’re looking for a simple answer, don’t ask a controversial question.
October 30th, 2004 at 2:03 am
Benchmark: I make $80-110K a year mostly from hacking perl. (posting anonymously out of respect to officemates.)
January 12th, 2005 at 2:55 pm
He might be a tedious windbag, but that doesn’t mean that he’s not RIGHT. I’m tired of all the machismo and mind-wank surrounding .Net and J2EE. He has every right to be proud of what he’s done with lisp. It’s called “Courage”. It’s easy to throw rocks at him. What have you done to match his achievements? Have you earned as much cash from your commercial hacking as him? No? Try to beat him if you think you’re hard enough!
March 16th, 2005 at 8:24 pm
Holy crap, what a firestorm.
So many of these responses come from people who obviously lack necessary context.
I’m currently working in .NET and Java. I’m not an elitist, not by any means; I even have great respect for Microsoft’s original Visual Basic, because it made little glue GUIs and data entry programs an incredibly simple proposition. Which meant that business people could be kept happy when they needed to be.
I’ll try to bridge the gap — at least a little — by giving some of the more egregious assholes a comparison:
Javascript vs. Java.
If you’ve ever used Javascript seriously, you know how much more flexible it is than Java. Create and assign/reassign methods on the fly, open up an object and see what is inside, function reuse across object hierarchies, multiple inheritance, runtime object augmentation, even curried functions are no problem in Javascript.
Not to mention eval().
How quickly can you implement each of those in Java?
I’m just your average college dropout — (well, maybe not-so-average for a dropout, as I got my A.S. degree when I was 17 and decided to start working immediately instead of going for 4 years) — but after using Javascript and simple object augmentation to perform 2-way databinding between Javascript literal arrays (which I translated into simple element XML on the server) and form elements when I was 17, I was outraged that Java didn’t let me customize my objects to that extent. That I couldn’t just add a method, or alter which method an instance uses on the fly.
I still use .NET and Java day-to-day. But I’m moving everything I can over to Python. Maybe the problem is that I read too many books on programming — I’m still learning like crazy and have spent over $3k on programming books this year, I’m only 21 right now — but since I work from home, and for a small company (one other employee, the CEO/owner), and get to have a say in what technology I use, I think this is a golden opportunity to transition to a language that doesn’t make me feel like I’m pounding nails into my balls.
I actually have a humble attitude about all of this — I wish I was smart and confident enough to go all-out in Lisp, but Python is too immediately productive for me right now, and I have severe time constraints (mostly imposed by the weight of OO development in Java/.NET).
To give you an idea of where I’m coming from, I created a Contract and Lease Management System for a midwestern hospital chain with more than 30 locations in under 2 months, using C# and the .NET ports of Hibernate and Spring (spring purely for your basic dependency injection, not for the advanced MVC stuff). This system already holds more than $3mil in contracts and will hold over $1bil within a year, and it went from whiteboard to live beta in 2 months, and the users — 70 or so, all *above* middle-management level — love it.
Okay — that is way too bloody slow, for us anyway. We have so many projects stacking up that we literally don’t want to spend 2 months of a single coder’s time for a single project, even one of that scope.
I might be crazy, I have certainly not been doing this professionally for very long — I’m only 21! — but it *feels* like I was working at pretty close to maximal efficiency, using the best of Java *and* .NET rapid-development methodologies, as well as some of the best data modelling techniques I know of (Silverston’s methods), but I still felt frustrated/angry when I looked at how much bloody ‘fluff code’ was getting in my way.
Moreover, I really wonder if anyone considers competitive advantage to relate to languages.
Almost every informed developer would consider Spring and Hibernate to be competitive advantages. Yet somehow Python isn’t? Scripting languages IN GENERAL (including languages like Rexx or Perl) have approximately a 2-to-1 advantage (http://page.mi.fu-berlin.de/~prechelt/Biblio/jccpprtTR.pdf) over compiled languages in terms of development speed, and you’re telling me that using a scripting language isn’t a competitive advantage?
What if it comes with the easiest-to-use, prettiest-looking GUI development package on the planet — wxPython? What if you can write a simple socket server in 16 lines (with one of the most powerful network libraries anywhere, Twisted, available for serious projects)? What if you can effortlessly compile windows binaries that don’t require any kind of runtime? And write windows services in Python that Just Work?
And what if you knew that it worked seamlessly with both Java AND .NET? (Jython doesn’t have a .NET equivalent yet — ie, a Python written entirely in .NET IL — but there is a fabulous lib written by a Zope guy that gives me the ability to interact with .NET as closely as I’ll likely ever need to, among other things meaning that all of those great and not-so-great .NET libraries are usable from Python).
What if you can learn it in a weekend, and yet it still supports enough high-level features to even be *mentioned* in a serious comparison with Lisp?
Is it a competitive advantage now?
The reason that Python wins is that it was and is designed by the people that use it, and use it all the time, and at a very high level. Java and .NET were not designed primarily by users, and that is why (IMNSHO) they fail when compared with Python. This is a fundamental principle of innovation (go to MIT-Sloan School of Management on ocw.mit.edu and check out their course on the sources of innovation — there are video lectures!), that users almost always come up with the true innovations. Shit, even Lisp was created as a result of somebody simply trying to something elegant with math, and he needed a language to help him do it.
Java and .NET were built in response to a need, too, but the need wasn’t one that programmers were crying out for — it was a need of large corporations with many programmers. Who, by the way, would like very much for programming to become commoditized; not to be reliant on the skills of individual programmers. This is not yet the case, and all available research has showed that it isn’t ever likely to be the case — individual skill counts more than any other factor — but boy oh boy would they like it to be! ;) Java and .NET were not only created by committee — they were created by a committee that would have spontaneous orgasms of sheer joy if programmers ever become minimum-wage workers.
Really, I think that most corporate programmers have some kind of Stockholm Syndrome.
November 19th, 2005 at 12:24 am
eat shit and die
and take your fucking public static void main with you
December 16th, 2005 at 1:30 am
The fact that you’re calling PG a pretentious windbag for him simply
thinking lowly of Java says something about you. Aside from the fact
that you’re the windbag, you seem to be unable to realize that he
really does know a lot more than you do. So he’s an opinionated
bastard, but he’s a very smart man. I’ll agree with everyone that his
emphasis on perl and python programmers being great “hackers” sounds
pretty silly, but if the languages had compilers, I don’t think his
statement would be that far off.
So what if he’s coded some novelty webapps, (isn’t that primarily what
java is heralded for?) when he coded Yahoo store, it was the first. If
you ever read any of his computer science texts, you will see that he
really does know what he’s talking about, (cmon, he’s got to be
narcisstic for a reason here) and unlike most programmers, has a good
sense of asthetics. Some things just suck, sometimes you can just
judge a book by it’s cover.
And for the person who was trashing scripting languages, (as if Paul
Graham was ever a python or perl proponent, he was just pointing out
that perl and python have some of lisps good features, much more so
than java or c++) most java implementations until recently didn’t
perform much better, (or at least terrible compared to C or C++,
Gosling’s outright lies aside) and heck, it still hogs ridiculous
amounts of memory to the extent that it make sHaskell seem like a
performance language. In the open source world, I doubt that good
compilers or vms will exist anytime soon. Your attitude about open
source is pretty ridiculous too.
From a user’s perspective, java is mostly useless because very few
killer apps are actually written in it, outside of it’s cultlike
community. To whit, I don’t use a single java program, but dozens upon
dozens of C and C++ programs, and even some Lisp programs. No, I don’t
give a damn about Eclipse or some other non-innovative java
program. The only thing it really has going for it are huge standard
libraries, but I really can’t say much more in favor of the language.
I’ll bet that if Sun Microsystems went out of business, java would die
like pascal. Only, it was much worse while it was still
around. Evenually firms would find another commoditized language for
which to throw a boatload of programmers.
I know you won’t listen, but please stop talking out of your ass. Do
realize that I have very low expectations for blogs, but your’s truly
stands out as being one of the worst. Open up your mind, and then
maybe you will understand, oh PHB slave.
February 25th, 2006 at 1:49 am
At work, I use a Foxpro front-end admin, Java as the customer interface, and perl as the backend mixed datafile parser. We mix and match whatever language is suitable for the task at hand. Perl wins hands down as the speed-demon in parsing. They work together beautifully. At least in our applications. Each language has its advantages!
March 4th, 2007 at 9:42 pm
“Python! Java! Emacs! Vi! Moron! Loser! Java! Asshat! Emacs! Jerk! Hitler!” The comments here are like a bunch of talking points from TV with their nouns ripped out and strung together randomly. A random noun generator would be more efficient.