[Tutor] Python Interview Questions..

Steven D'Aprano steve at pearwood.info
Sat May 28 06:25:45 CEST 2011


Alan Gauld wrote:
> "Walter Prins" <wprins at gmail.com> wrote
> 
>>>> Java just isn't a hard enough language to separate great programmers
>>>> from plodders (neither is Python, for that matter) because pointers
>>>> and memory allocation are taken care of automagically.
>>>
>>> I fundamentally disagree with his stand on this.
>>>
>> Not sure what you're saying here Alan -- are you saying you consider Java
>> "hard enough language to seperate great programmers from plodders"
> 
> Yes, I'm saying the language just isn't that significant.

Sorry Alan, you confuse me. Do you mean Java isn't that *insignificant*?


>>>  When you're hiring programmers, (Joel says) you want people
>>>> who understand what the computer is actually doing under
>>>> all the chrome,
> 
> Thats where I disagree, you might occasionally need a few
> of those, but not often and not many.

I think that depends on what you mean by "understand".

If you mean, should all programmers be like Mel:

http://www.catb.org/jargon/html/story-of-mel.html

then Hell No!!!

But I do believe that all programmers should understand the limitations 
of the machines they're running on (in Python's case, there's a virtual 
machine plus the real one), or at least understand that those 
limitations exist, so they can avoid making silly mistakes or at least 
recognise it when they do so.

I'm not talking about them knowing how to write assembly code, but 
little things like knowing why the recursive versions of factorial 
function and the Fibonacci sequence are so damn slow.

This is often harder than it sounds in Python, because the C built-in 
functions are so fast compared to those written in pure Python that for 
any reasonable amount of data it often is faster to use a O(n**2) 
function using built-ins than O(n) code in pure Python.



-- 
Steven


More information about the Tutor mailing list