Fog Creek Software
Discussion Board




The Python Paradox

Paul Graham mentioned on usenet: "I was out of town when that talk got slashdotted, and just as well probably.  I think a lot of Java hackers misunderstood what I meant by comparing Python to Java, so I added an explanation..."
http://paulgraham.com/pypar.html

Feel free to post any bile-filled thoughts on this thread; it's all in good fun.

Tayssir John Gabbour
Wednesday, August 11, 2004

The words 'stop digging' and 'when in a hole' spring to mind.

Simon Lucy
Wednesday, August 11, 2004

He's wrong.  It's not that Python programmers are smarter, it's that most programmers are morons.

muppet
Wednesday, August 11, 2004

"And people don't learn Python because it will get them a job; they learn it because they genuinely like to program and aren't satisfied with the languages they already know."

Here's where he is wrong.  Every programmer I know is either employed at it (and does what the shop calls for them to do) or a home hobbyist (and doesn't do anything interesting).  The self-taught programmer doesn't count.

doom 3
Wednesday, August 11, 2004

The self taught computer doesn't count?  That's an interesting statement :-).

muppet
Wednesday, August 11, 2004

Oh gawd, here comes muppet. Good going.

Bill Brown
Wednesday, August 11, 2004

By Sturgeons Law, if 90% of everything is crud then 90% of programmers are cruddy as well. Except Python programmers according to Paul. So extracting the subset of Python programmers which is in excess of 10% then well over 100% of all Java programmers must be crud.

old_timer
Wednesday, August 11, 2004

> most programmers are morons.

And as I have said elsewhere, this is *precisely* what makes you so *endearing* to the rest of us. The statement is a gratuitous, insulting generalization.

Dang, do say these sorts of things to your coworkers, or just in forums where you have no fear of "parking lot therapy"?

Michael Ealem
Wednesday, August 11, 2004


The point of it is that not all programmers are learning just to learn and/or sharpening their skills.

When I've been on the hiring end of the interview, I always make a point of asking "Could you name some books you've read in the last six months?"

Generally, there's some fiction, occassionally a political book, and *rarely* a technical book.  I've said *NO* to a few people because they've responded with "I haven't read anything in the past six months".  If someone doesn't manage to read atleast a couple books a year, it demonstrates an apathy towards learning. 

Obviously it's NOT the only way to learn, but it's one of the big ways.

KC
Wednesday, August 11, 2004

Michael - how typical of the average Joe that you implicitly threaten me with violence, or wish violence upon me.

Most programmers ARE morons.  It's simple truth.  A great many Americans (I wouldn't know about elsewhere) are simply not qualified for the jobs that they hold.  They're just 'good enough' to hold them.

muppet
Wednesday, August 11, 2004

in the course of 6 months I read at least a half dozen books on programming or some technical topic, along with a healthy dose of fiction.  I suppose this belongs in some other thread... :)

muppet
Wednesday, August 11, 2004

Most programmers are morons? Are you using "morons" in the imprecise, colloquial sense or in the technical one? I have yet to meet a programmer that is technically a moron* though I've met many who took some very strange paths in their code. I generally ascribe these examples to inexperience, ignorance, or sloth—only in rare cases do I question their mental faculties as generally as you do so casually.

Muppet, I've been lurking in these forums for years and I am astounded at the glibness with which you throw bombs. I'll echo the earlier commentator and ask whether you are this caustic in real life. I'll hazard a guess and say that you're a rather young fellow (either in actual age or maturity, I couldn't say) and not a moron.

Bill Brown
Wednesday, August 11, 2004

+++colloquial sense or in the technical one? +++

The technical, of course.  Obviously most (all) programmers are not actually mentally incapable.  They're mostly a very intelligent group of guys.  However, there's a great deal of single-mindedness, a great deal of adhering to the prescribed methods learned in Comp Sci programs as if they were gospel, a great deal of arrogance (heh) and anti-social behavior.

Most programmers are morons.  :)

muppet
Wednesday, August 11, 2004

It's not my intention to be caustic.  I simply don't sugar coat things in a thick layer of politeness, like it seems most do.  I call things as I see them, and try not to fall into the same patterns of polite deceit that many in the corporate world seems to swim in without realizing.

It's my experience that the world is full of primarily phonies, to varying degrees, with very few folks who will simply tell you precisely how it is.  I find the latter quite refreshing.

muppet
Wednesday, August 11, 2004

> wish violence upon me

No, I'm just very surprised that you've gotten this far in life without somebody taking you aside and administering a Clue by Four.

Michael Ealem
Wednesday, August 11, 2004

> very few folks who will simply tell you precisely how it is.

Robert Heinlein:

"Moving parts in rubbing contact require lubrication to avoid excessive wear. Honorifics and formal politeness provide lubrication where people rub together. Often the very young, the untravelled, the naive, the sophisticated deplore these formalities as 'empty,' 'meaningless,' or 'dishonest,' and scorn to use them. No matter how 'pure' their motives, they thereby throw sand into machinery that does not work too well at best."

Michael Ealem
Wednesday, August 11, 2004

> Dang, do say these sorts of things to your coworkers, or just in forums where you have no fear of "parking lot therapy"?

"muppet" has said:

1) That older programmers make insulting generalizations about younger programmers

2) That, given item 1), he feels entitled to reciprocate

3) That he is trolling

His stated position seems pretty clear to me.

.
Wednesday, August 11, 2004

I fancy myself as a Python programmer, but I'm certainly not a 'great hacker', and not even a good programmer. That's a counter-example.
However, I like to learn things. I think that P. Graham is more likely to spot curious people than great programmers.

GP
Wednesday, August 11, 2004

"It's not my intention to be caustic.  I simply don't sugar coat things in a thick layer of politeness, like it seems most do.  I call things as I see them, and try not to fall into the same patterns of polite deceit that many in the corporate world seems to swim in without realizing."

I remember when I was young enough that I could say something like this without a trace of irony.

I was quite a pompous little twit.

Gustavo
Wednesday, August 11, 2004

LOL, subsitute "not a jaded old hack" for "pompous twit"

So you've surrendered to politically correct nonsense instead of clear and sincere interaction because the latter is harder.  Good for you!

muppet
Wednesday, August 11, 2004

>>politically correct nonsense instead of clear and sincere interaction

Umm.. you really havent given this much thought, have you? To have a conversation is not all about you, and what you want to say. You have no god given right to an audience.

Treating others with respect is not nonsense. Its a completly logical thing to do. If you dont respect people, they wont listen to anything you say. Its as simple as that.

And dont say you dont care about what others think.. why else would you bother with posting.

Eric Debois
Wednesday, August 11, 2004

+++Umm.. you really havent given this much thought, have you? To have a conversation is not all about you, and what you want to say. You have no god given right to an audience.

Treating others with respect is not nonsense.+++


Err.. Absolutely.  You're 100% correct.  I give others respect by not bullshitting them.  If you feel that it is more respectful to blow sunshine up their ass, then more power to you.  Respect is subjective.

muppet
Wednesday, August 11, 2004

I wonder how many Cargo Cult Python programmers this is going to spawn, eg. "if great hackers program in Python, I'll learn Python so people will think I'm a great hacker."

Past and Future Student
Wednesday, August 11, 2004

Speaking as someone who's worked primarily with Python for the last few years and is now looking for new employment, I find myself wishing I could just put Java on my resume and worry about my lack of hackworthiness on the commute to another job.

It really is a sweet language, though.

Caveat
Wednesday, August 11, 2004

muppet, you have all the makings of a troll. Before you post anything, even though you are semi-anonymous, think twice. What would happen if you said this same thing to a group of people such as present here, but in real life. How would they react? If you want to say something that others might consider offensive, either don't say it at all or say it in a very softened way, so they get the drift and you don't look like an unintelligent muppet.

James Thomas
Wednesday, August 11, 2004

>>I give others respect by not bullshitting them.  If you feel that it is more respectful to blow sunshine up their ass, then more power to you.  Respect is subjective.

So, you are saying that in order not to bullshit peopole you must be deliberatly offensive? Then I'd say you have poor language skills for one who reads so many books.

Eric Debois
Wednesday, August 11, 2004

Keep it real, muppet. I hope it works out better for you than the guy in Chappelle's skits.

Rob VH
Wednesday, August 11, 2004

I've avoided Python cus I don't like rules on indentation, from what I've heard indentation is syntax. Also, the only Python programmer I know was a prima donna who no doubt would have put himself in the top 5% of anything but he was also a moron who drove an ISP into the ground.

me
Wednesday, August 11, 2004

"I've avoided Python cus I don't like rules on indentation, from what I've heard indentation is syntax."

Python actually has quite a bit more syntax than just indentation :)  It's a very powerful language for certain types of applications. So is Perl. So is C#. They're just tools that we're supposed to know about and apply as needed.

I don't know that knowing/liking any one language is a reasonable indicator of general intelligence or skill. I do know that a broad experience with many languages is generally a good indicator of skill, provided that each experience had enough depth to make it meaningful.

muppet: You confuse courtesy with dishonesty. They are not the same.

Jeff Kotula
Wednesday, August 11, 2004

"I've avoided Python cus I don't like rules on indentation, from what I've heard indentation is syntax."

You hear correctly.  And it is very pretty looking.

This made Python the wrong choice for writing all the build scripts for a cross-platform project I was working on a couple of years ago. There was no way I was going to make sure people editted them with their spaces and tabs set up right on a bunch of different editors on a bunch of different platforms.

And, it turns out that Perl is just a much more valuable skill to have anyway.

Gustavo
Wednesday, August 11, 2004

"You confuse courtesy with dishonesty. They are not the same."

Hear hear. That's the issue in its essence.

Bill Brown
Wednesday, August 11, 2004

Insincere courtesy is dishonesty.

muppet
Wednesday, August 11, 2004

> Insincere courtesy is dishonesty.

Read the Heinlein quote above. Tatoo it on your forehead.

Tired of this whole silly mess
Wednesday, August 11, 2004

Heinlein was clearly a pusher of the status quo.  Good for him.

muppet
Wednesday, August 11, 2004

> Heinlein was clearly a pusher of the status quo

And hence you once more reveal your ignorance.

Lazurus Long
Wednesday, August 11, 2004

If he said that courtesy is necessary to grease the wheels of a poorly functioning maching, then he's pushing the status quo.  Whether he was consistent in that is immaterial to my comment.

muppet
Wednesday, August 11, 2004

muppet, what you are describing as ideal behaviour is actually the mark of sociopath. good luck to you if you think you can redefine it as "refreshing candour" and make it into a virtue.

if you behave this way in real life (which i have trouble believing), your future is grim. you'll  start moving in smaller and smaller social circles, until you are essentially friendless except for your immediate family and a small group of people who give you a pass because they think they know the "real you" (i.e. the one underneath the asshole exterior). the sad part is that you'll take all of this as a confirmation that you were right the whole time, that people really are morons and assholes, and that if they are all too cowardly to be as honest as you, they aren't worth associating with any way. you'll end up bitter and alone, but convinced of your rectitude. good luck with that.

.
Wednesday, August 11, 2004

"muppet, what you are describing as ideal behaviour is actually the mark of sociopath"

if rejecting polite insincerity as a crucial element of society is sociopathic, then I suppose I'm a sociopath.

Personally I think continuously misrepresenting yourself in a myriad of ways, however small, is rather psychotic.

muppet
Wednesday, August 11, 2004

You know muppet, the dynamics of arguing on the internet means it doesn't matter if your side has the most points or the last word. People make up their minds, or keep an open mind without deciding, and repeating essentially the same point just makes things painfully boring. You only have to say the point once; it hangs in the invisible net air.

And guess what: you will always, always find someone obstinately disagreeing with you without giving any weight to your points. It happens. Briefly point it out, note that you might not have time to defend your thoughts to their satisfaction, and move on.

Tayssir John Gabbour
Wednesday, August 11, 2004

To ignore muppet's attention-whoring for a second...

Graham misses the point by focussing on the language.  The longer I'm at this game, the less I care about what language or platform I'm using.  It's just syntax.  What I enjoy about coding is the logic, which underlies the solution that gets implemented in a particular syntax.  It's a secondary consideration that Graham raises, wrongly, to a first class concern.

Justin Johnson
Wednesday, August 11, 2004

Speaking of continuing to dig whilst one is in a hole...

OffMyMeds
Wednesday, August 11, 2004

"if rejecting polite insincerity as a crucial element of society is sociopathic, then I suppose I'm a sociopath."

The fact that you're honest about being a jerk makes you no less of a jerk.

Justin Johnson
Wednesday, August 11, 2004

Right, and I guess in your lexicon, you define "jerk" as anybody who doesn't blow the requisite rainbow-colored sunshine up your ass on a regular basis.

muppet
Wednesday, August 11, 2004

No, a jerk is someone who thinks his offensive "truth-telling" is more important than not shitting on every social encounter he has.

What you're essentially saying here is that you hold most, if not all, of humanity in contempt, and to hide that would be dishonest, so you're somehow a virtuous asshole.

Justin Johnson
Wednesday, August 11, 2004

No, I don't hold most of humanity in contempt.  I hold in contempt people like you who favor plastic personalities over human souls.

muppet
Wednesday, August 11, 2004

I don't think Graham is missing the point, Justin. He's saying that the kind of people who are willing to put the time into learning a non-mainstream language just because they find it interesting are also likely to be good programmers, because they have a curiosity and thirst for knowledge that is probably applied to most things they do. Add to that the fact that Python combines two things that most good programmers love--a nice OO model and the ability to get things done without excessive verbosity--and there's a good chance that someone who is voluntarily programming in Python is also a good programmer.

As far as Java programmers are concerned, I think the issue is that because Java is such a popular language, and there are a lot of Java jobs out there, that has attracted a lot of not-so-great programmers (one might even call them non-programmers) to the language. They are programming in Java because that's what they're being paid (or hoping to be paid) to do, not because of any innate programming sense that tells them that Java is really cool and worth really getting your hands dirty with.  I think the same can be said for PHP, actually (although maybe PHP 5 will start drawing in more good programmers?).

To be clear, I know a lot of top-notch programmers whose primary language is Java. On the other hand, I've to a few of them that I was playing with Python and the response was always along the lines of "Yeah, I heard it was cool...I've been meaning to look at it...."

-b

Brad
Wednesday, August 11, 2004

I agree with you, Brad, as far as that goes.  But I think Graham is blowing up a minor indicator into a major issue, and that's how he misses the point.  He builds a large thesis around a couple of anecdotal character quirks.

Justin Johnson
Wednesday, August 11, 2004

Jesus F'in Christ -

"Heinlein was clearly a pusher of the status quo.  Good for him. "

The quote of the century.

Muppet, do yourself a favor and read "Stranger in a Strange Land" and then get back to us.

On Grahams' Python thing, I have to admit I know nothing about Python, but the idea that if only people who use the language of the month care about programming is ridiculous.

Does the idea that there is the right tool for the job ever occur to him? Is Python the right tool to do embedded systems? Heavy duty multithreaded finite element calculations? A tax return program on Windows? A video game?

Get real.

Miles Archer
Wednesday, August 11, 2004

> Personally I think continuously misrepresenting yourself in a myriad of ways, however small, is rather psychotic.

Black and white thinking causes many problems in this world. Think about persecution and genocide, etc….

When you say "misrepresenting yourself", that only makes sense if there is an "absolute truth" as reference.  Otherwise, you couldn't determine the mis- in misrepresenting yourself, but again, only in a black and white world. Many philosophers postulate that an absolute truth can’t or doesn’t exist for many reasons. I leave it to an exercise for the reader to found out exactly why. (Hint: Modern day historians struggle with the concept of “history”.  Is it a never-ending quest for “absolute truth”, or really just a rehashing of available sources, where “absolute truth” can’t even be approximated, so why try?... anyway)

Grey is the great liberator. That way you don't have to worry about and execute your neighbor for having an abortion. You can think to yourself. In their world abortion is ok, in mine it isn't, and we can live together without killing each other.

When we impose our black and world on to others, fiction happens. Friction isn’t the end of the world as long as the factions have their safety valve (i.e. democracy seems to have the power to sooth (read apathy)). But even that isn’t perfect, and that is where unrest comes. Or at the very least, an election comes and bad tooth is extracted..

That being said, I love reading muppet’s strong opinions.  In my world, they are either right on, or a bit off. To each his own, I guess...

--
ee

eclectic_echidna
Wednesday, August 11, 2004

Muppet....

You are still confusing honesty with being insulting. Let me use you as an example:
First you said, "most programmers are morons".
Then, you clarified it with something along the lines of "most programmers are underqualified for their jobs".

The second statment is more clear, informative and less offensive than the first, and could even form the basis of an interesting discussion. The word moron is nebulus and about all we learn from your using it is that you dont like most programmers.
So, how does your being offensive make you more honest, or more human for that matter? 

Eric Debois
Wednesday, August 11, 2004

"all programmers are morons" gets the point across clearly and concisely, and it's the term I'd use in my own internal monologue.  Hence it's the term I use when I convey that inner thought process.  What I think and what I say are nearly always the same thing.  Isn't that the basic definition of honesty?

muppet
Wednesday, August 11, 2004

> the mark of sociopath

"""
antisocial personality (disorder),  [DSM-IV], a personality disorder characterized by continuous and chronic antisocial behavior in which the rights of others or generally accepted social norms are violated; associated personality traits include impulsiveness, egocentricity, inability to tolerate boredom or frustration, irritability and aggressiveness, recklessness, disregard for truth, and inability to maintain consistent, responsible functioning at work, at school, or as a parent. The concept of a personality disorder that predisposes an individual toward criminality has a long history. Among the terms that have been applied to this disorder are moral insanity, psychopathic personality, and sociopathic personality.
"""

http://www.merckmedicus.com/pp/us/hcp/thcp_dorlands_content.jsp?pg=/ppdocs/us/common/dorlands/dorland/dmd-p-027.htm#1073423

Clearly muppets comments don't warrant that. Get a grip.

--
ee

eclectic_echidna
Wednesday, August 11, 2004

muppet is single parent.
maybe someone should interview his ex-wife.

Anthony
Wednesday, August 11, 2004

"What I think and what I say are nearly always the same thing.  Isn't that the basic definition of honesty?"

No, it isn't, unless your internal use of the word "moron" includes the degree of contempt if expresses when spoken.  If it does, then you are being honest, but you're also being an ass, and being honest about it doesn't excuse that.

Justin Johnson
Wednesday, August 11, 2004

+++
No, it isn't, unless your internal use of the word "moron" includes the degree of contempt if expresses when spoken+++

The amount of 'contempt' associated with the word 'moron' is subjective, and personal to the listener.  If you associate a high level of contempt with the term, that's no skin off my nose.  Should I also avoid the term 'pink nylons' because it tittilates you?

muppet
Wednesday, August 11, 2004

Miles--Graham never said that Python is the one true language, or that all good programmers program in Python. He was trying to get across the point that one of the things that makes a great hacker a great hacker is a desire to learn something for the sake of learning it, because they think it's cool, not necessarily because it will land them a job. It really has nothing to do with any one language.

Speaking of video games, I would also venture that most video game programmers are good hackers. That's not something you get into unless you had a very strong desire to learn--to hack--that was irrespective of anyone dangling a job in your face. The same could be said about any number of areas in programming.

-b

Brad
Wednesday, August 11, 2004

"The amount of 'contempt' associated with the word 'moron' is subjective, and personal to the listener."

Now you're starting to understand why using the same words to communicate that you use to express your internal thoughts isn't the very definition of honesty.  While my degree of insult at being called a moron is subjective, there are predictable effects to using certain words, and if there's a predictable mismatch between your meaning of the word and the common meaning of it, then it is in fact dishonest to use the word and claim ignorance of its effects.

In other words, calling someone a moron and then claiming that you don't mean it to be as insulting as it's commonly understood to be is fundamentally *dishonest*.

Justin Johnson
Wednesday, August 11, 2004

Muppet > Now you are contradicting yourself. I agree that the value charge of moron is subjective, which is why is it nebulus, which is why it is less clear, which is why by using it, even if its exactly what you are thinking, you are in fact being less honest than you would be if you used more exact, less charged words.

Eric Debois
Wednesday, August 11, 2004

And before someone goes off on this, I'm not implying that just because you don't learn Python (or video game programming) in your free time doesn't mean you're not a good programmer. (A implies B) is not equivalent to (NOT(A) implies NOT(B))

Brad
Wednesday, August 11, 2004

eclectic, i didn't say muppet is a sociopath, i said the kind of behaviour he is *advocating* is the mark of a sociopath. i should, however, have said "A mark" rather than "THE mark", to be more clear. there are obviously many symptoms, which you have pointed out. in various threads on this forum he has encouraged:

* continuous and chronic antisocial behavior
* the violation of generally accepted social norms
* egocentricity
* inability to tolerate frustration
* irritability and aggressiveness

et cetera. and i think advocating doing two hours work every day would also qualify as encouraging a sort of anti-social behaviour.

.
Wednesday, August 11, 2004

On a related note, why do people keep feeding trolls? Just ignore the asshole.

Not Muppet
Wednesday, August 11, 2004

Disclaimer: I have no functional Java skills, though I like what I see in Java.

I agree with Brad that the caliber of Java programmers may be diluted by the people who pursued it just because of the job opportunities.  I also agree that the same can be observed regarding PHP, however I wanted to clarify a certain difference.  For PHP its popular attraction seems to be accessibility and ubiquity rather than employment opportunity.  Sadly (to me, anyway) there are few paying PHP gigs.

OffMyMeds
Wednesday, August 11, 2004

All people are morons on some level.
All programmers are people (well, most).
Therefore, all programmers are morons on some level.

QED
Wednesday, August 11, 2004

"I call things as I see them"

Often confused with honesty and reality. Usually emitted by people who are "experts" at everyone else's problems.

Muppet...you alone are qualified to rule the world. Get on with it.

sub muppet
Wednesday, August 11, 2004

Hardly.  I never claimed that I'm right 100% of the time.  I said that I call it how I see it.

muppet
Wednesday, August 11, 2004

yes. just like the other 6 billion folks.

If you could call it like a significant percentage of other people see it, tou'd be on to something.

sub muppet
Wednesday, August 11, 2004

yes because the majority is undoubtedly right, and popularity is key.

what a sad, sad viewpoint

muppet
Wednesday, August 11, 2004

continuous and chronic antisocial behavior - check.
generally accepted social norms are violated - check.
impulsiveness - yep.
egocentricity - yessiree bob.
irritability and aggressiveness - I think I'm seeing a pattern here,

Hmmm...

Dr. Freud
Wednesday, August 11, 2004

Dr. Freud, I do believe you have made an incorrect diagnosis - obvious we are dealing with a patient with a narcissistic personality disorder, not a sociopathic one.

Dr. Jung
Wednesday, August 11, 2004

HELP HE'S OFFENDING MY SENSIBILITIES!!  Let's discredit him!    Quickly!  To the DSM - IV!!

Keep at it and I bet you can discredit everyone's viewpoint here but your own.  Then you can finally, finally sleep.

muppet
Wednesday, August 11, 2004

Hmmm - definitely has manic episodes, and a tinge of paranoia as well. What do you think, Dr. Freud? Haldol twice daily until he stabilizes, and then lithium to get the mood swings under control?

Dr. Jung
Wednesday, August 11, 2004

Most *people* are morons.

End of discussion.

Mr.Fancypants
Thursday, August 12, 2004

> "Could you name some books you've read in the last six months?"

I must confess, I couldn't. I rarely "read" technical books, I skim them, try to distill the essence, and then use them as references, but I actually couldn't honestly answer that I've read "Refactoring" or any of the three or four others I've done that with. I tend to read novels in about a week, but I actually couldn't tell you what the title of the last one was (and at the moment I don't have one, which is driving me nuts on the way to/from work).


Thursday, August 12, 2004

Don't forget "inability to maintain consistent, responsible functioning at work". Wasn't he the guy defending working on his own projects on company time?

Freud would probably have prescribed a healthy dose of opium...

jz
Thursday, August 12, 2004

"Arguing on the Internet is like racing in the Special Olympics; even if you win, you're still a retard."

Fozzy de Bear
Thursday, August 12, 2004

Here endeth the thread.

name withheld out of cowardice
Thursday, August 12, 2004

Salad cream, anyone?

Wisea**
Friday, August 13, 2004

*  Recent Topics

*  Fog Creek Home