PEP 526 - var annotations and the spirit of python

Jim Lee jlee54 at gmail.com
Mon Jul 2 20:10:37 EDT 2018



On 07/02/18 16:22, Gregory Ewing wrote:
> Ian Kelly wrote:
>> Just because somebody knows a dozen languages
>> doesn't mean that they can come up with the correct algorithm,
>
> That doesn't mean there's no correlation. Someone who is familiar
> with a variety of languages is also very likely to be self-motivated
> and have enough passion and curiosity to have acquired a broad and
> deep knowledge of other aspects of the craft.
>

Well put.   And "correct algorithm" sounds like something a CS major 
would say.  In the real world, it's more important to come up with a 
working algorithm, or an efficient algorithm.  In fact, I often choose 
my algorithms based more on readability (simplicity) and maintainability 
than textbook correctness.  You can always tell when an intern has been 
in the code - they implement a full b-tree to sort a simple 
one-dimensional list.  On the other hand, someone with exposure to 
multiple languages has seen multiple ways to accomplish a given task, 
and is likely to choose the best fit for the task at hand.

>> If your production system is built out of a dozen languages,
>> you may have a well-tuned system where each language was chosen for a
>> solid, specific reason; but you've also got a maintenance nightmare on
>> the day that the one programmer who actually understands all of it
>> decides to leave.
>
> There are good reasons to restrict the number of languages used, but
> it doesn't mean that language-specific job advertisements are the
> best way to go about getting staff. The company doesn't really want
> a "Java programmer" or whatever, they want a *good* programmer. A
> truly good programmer will be able to learn about the language
> being used on the job.
>

I wish that were universally true.  I have seen all too often where a 
company will hire an intern fresh out of school (who knows the requested 
language) over a more experienced individual who knows multiple 
languages, but not the one asked for.

The mere fact of knowing multiple languages demonstrates adaptability 
and the ability to think in multiple paradigms. However, the hiring 
process today is based on tick boxes in an automated search form.  
Qualified individuals don't even come up on the radar because the 
criteria for qualification has changed.

-Jim



More information about the Python-list mailing list