Alan Morgan <am*****@xenon. Stanford.EDU> wrote:
...
Since there are a lot more stupid people than clever people out there I
think the more likely scenario is having to maintain unmaintainable code
written by a complete idiot whose programming knowledge comes solely from
books whose titles end with "In 7 Days".
Disagree -- far more people THINK they're clever, than really ARE
clever.
No doubt about it, but I don't see how it contradicts my statement.
The problem comes with the ones who aren't clever, think they are, and
attempt cleverness.
According to a recent article in the Financial Times, over 40%
of a typical financial firm's employees firmly believe they are among
the 5% best employees of the firm -- and the situation, believe me, is
no different in programming.
I wonder if python, which has a low barrier to entry due to its simple
syntax and general readability, might not have a worse time of this than
other languages.
So far, no, according to all the people I often exchange chat on such
experiences with. E.g., I was a panelist at SDForum the other day, the
moderator was Alexandra Weber Morales (until recently head editor of SD
Magazine, she's a freelance now), and she confirmed that Python
programmers still have the highest median and average salaries
(VisualBasic ones, the lowest), a strong indicator that they ARE good.
[[ Surprisingly, from all anecdotal experiences I hear about, the new
"digital peons" after VB programmers appear to be J2EE coders (I use the
word deliberately: people who _architect_, or even just _design_, J2EE
apps, are on a different plane -- people who _code_ J2EE apps are the
ones laboring long hours for low salaries, it seems). And, from
somebody who desperately needs to hire a small number of stellar-quality
Java experts, I've heard strong anecdotal confirmation: candidates who
tout their "J2EE" are much more likely to be "mindless code drones" than
ones who just focus in their resume on "Java". I don't understand J2EE
well enough to even guess at an explanation of why that might be so. ]]
Paul Graham makes the same point: if you're an entrepreneur with a
startup just ramping up, you'll get much abler people if you're looking
for Lisp or (failing that) Python programmers, than if you look for Java
programmers (he fails to distinguish between "Java" and "J2EE").
Now Lisp (or Haskell, etc) I could easily see. But why should Python
tend to correlate with "high skill", when, as you point out, it's in
fact _simpler_?! My current working hypothesis: Python has never been
marketed and hyped the way Java and C# &c have; somebody who CHOOSES
Python shows some ability to think for themselves, rather than following
the herd, and such ability correlated with programming skill. Note that
this hypothesis is reasonably independent of whether Python is a great
language or not: it would apply equally well to any language that has
never been substantially hyped/marketed. But there are probably too few
programmers who identify as, say, "D programmers", "Eiffel programmers",
etc, to show up in SD's statistics, while Python's starting (gradually,
and mostly "by word of mouth") to register on their radar...
Alex