Interviews: Q&A With Guido van Rossum 242
Guido van Rossum is best known as the creator of Python, and he remains the BDFL (Benevolent Dictator For Life) in the community. The recipient of many awards for his work, and author of numerous books, he left Google in December and started working for Dropbox early this year. A lot has happened in the 12 years since we talked to Guido and he's agreed to answer your questions. As usual, ask as many as you'd like, but please, one question per post.
Dear Guido (Score:-1, Interesting)
Will you take the most important step of your career, and become a true giant among men, by endorsing the CAMPAIGN FOR A FREE INTERNET, guided by the all-knowing principles of our PRESIDENT FOR LIFE, LAURA? And if not, why are you such a dumbass and a scoundrel?
Yours Truly,
BOB
From Google to Dropbox (Score:5, Interesting)
What prompted the move from Google to Dropbox? What did you do at Google, and what are you going to do at Dropbox?
GIL (Score:5, Interesting)
When will you remove the GIL?
Who's watching (Score:5, Interesting)
Does the NSA have access to our Dropbox contents, as is apparently the case with Microsoft Skydrive?
BC Breaking changes in 3 (Score:5, Interesting)
Do you regret the swath of backwards incompatible changes in version 3 that have lead to such slow uptake, or do you feel it was the best move for the language moving forward?
Interviews (Score:5, Interesting)
Guido
When you interviewed at Google - did they ask you brainteaser or hard algorithmic questions, and if so, what did you think of it?
Cheers!
When is python going to support parallel procesing (Score:0, Interesting)
When is python going to support parallel processing and multiple threads?
Every other modern programming language does.
Why did Python avoid some common "OO" idioms? (Score:4, Interesting)
Interfaces, abstract classes, private members, etc... Why did python avoid all this?
Multi-line lambdas (Score:3, Interesting)
Re:BC Breaking changes in 3 (Score:5, Interesting)
One thing different (Score:5, Interesting)
PyPy (Score:5, Interesting)
Do you see PyPy as the future ? http://pypy.org/ [pypy.org]
Or do you remain unconvinced, and -- if so -- why ?
Another BDFL (Score:4, Interesting)
What is your view on the tone that Linus uses on the LKML? Do you think it actually provides any benefits or just drives away would-be contributors?
GIL and true parallelism (Score:5, Interesting)
The main thing that keeps Python from being really useful for my projects is the Global Interpreter Lock (GIL). I would love to write Python for my data-intensive code, but it is impossible to get really good parallelism with Python; the multiprocessing library isn't a magic fix because then I have to move all my data back and forth between processes.
When, if ever, should I expect to be able to use Python to do parallel data processing? What is the priority for this, and what would need to be done to make thread-level parallelism possible?
Key question for any language designer (Score:5, Interesting)
Have the prospects of Python in any way improved since you grew a beard [c2.com]? To what degree does language success correlate to beard length?
Any NSA backdoors in Python ? (Score:2, Interesting)
Are you aware of any attempts by the NSA to add a backdoor in Python ? ;)
Of course, if you did get an NSA letter, you wouldn''t be allowed to say.
You are welcome to NOT ANSWER this question.
We will take note of that
why should I adopt Python 3? (Score:4, Interesting)
I am not able to do the switch now as I rely on some libraries that have not finished converting to python 3 yet, but having something to look forward to other than the pain of backwards-incompatibility could go a long way in getting me to prepare for the change instead of ignoring the issue.
Python as a shell language (Score:4, Interesting)
The main obstacle to this use-case is python's semantic spacing and lack of braces (or something):
- it is hard to do even a fairly simple if/else or loop in a single line so it will interact nicely with the terminal's history
- it is hard to cut&paste code into the terminal because you have to be wary of leading spaces
Ipython tries to solve some of this with shortcuts to bring up a built-in editor, which is an approach that works but is quite cumbersome.
Do you think convenient usage on the interactive shell is a worthy goal that the language should support? if so, is there any direction the language or libraries could develop to better support it?
If you were to design Python from scratch... (Score:2, Interesting)
Guido, if you were to design Python from scratch now (without any constraint and legacy code using the old Python), what would you change and how different would it be from Python 3?
What is your programming environment like today ? (Score:5, Interesting)
How often do you get a chance to write serious code ?
What's your default OS ?
Command shell ?
Version control ?
Editor ?
IDE ?
Web browser ?
IM client ?
email client ?
late nights or early rise ?
Python 3 (Score:4, Interesting)
How do you feel about the current state of the migration to Python 3 (Py3k)?
From a user perspective it seems that the conversion of popular libraries has lagged far behind, which has impeded the transition. In my professional capacity, nearly every single system I use lacks an installed 3.x interpreter. In fact, 2.7 is a rarity. I'd like to get your thoughts.
Re:PyPy (Score:3, Interesting)