Java and Python

Peter Hansen peter at engcorp.com
Wed Mar 20 19:48:13 EST 2002


kosh at aesaeion.com wrote:
> 
> On Wed, 20 Mar 2002, Peter Hansen wrote:
> 
> > Way, way down the list of things I look for in a resume
> > is the programming languages a candidate has.  Not entirely
> > unimportant, but useful only taken as a whole.  [...]  
> > Those with only a single language, or maybe two, probably 
> > didn't get hired.  Those with a dozen were more able to 
> > demonstrate their flexibility to me.
> 
> The problem I have with someone learning lots of languages is that most of
> what I have seen is that they never go beyond a surface level
> understanding of the language. So you end up seeing people that can
> essentially write C in any language or java etc. However in order to be
> really productive you need to know a language and know it very well. 

Completely agreed!  Understanding at least one language very well is
a necessary step before one can reach the point of being able to 
learn new languages quickly.  I took a long time to learn BASIC
(which is how I learned programming), then a perhaps slightly shorter
time learning C, and I accelerated rapidly in the subsequent languages.

> I would rather see someone that can demonstrate higher level 
> mastery with one language then a surface level with many.  

I would not hire either.  The latter is a dilettante, 
while the former has not generalized her experiences beyond
that one language and so is unable to contribute where
I really need the help.  Combine the two, now that's something.

> You can't get to more advanced features until you understand 
> all of the basic features. However once you learn those features 
> you are in a better position to apply them in another language.

Agreed, again, completely.  Even more than that, I would add that
you are then in a better position to understand the fundamentals
of *programming*, in a way you only understand with experience,
regardless of syntax.  The first language in which you encounter
"late binding" for example, may teach you very little about what
that really means in a broader sense.  The second time you learn
about it you'll start to see the forest, not just the trees.

-Peter



More information about the Python-list mailing list