Cover photo
Guido van Rossum
Works at Dropbox
Attended University of Amsterdam
Lives in California
64,575 followers|4,683,564 views


Guido van Rossum

Shared publicly  - 
My son goes to school here. I know many of those kids.
Wenxiang He's profile photoAlex Tsai's profile photofzerowipeoutlover's profile photohannah daniels's profile photo
Add a comment...

Guido van Rossum

Shared publicly  - 
In the memory lane department: Doing some research on Base64 led me to RFC 3548 ( which references as [8] a post by Zooko; however the link seems to go to the wrong post. Viewing the month of those archives ( it's like all the usual suspects: Bram Cohen, +Gregory P. Smith, +Zooko Wilcox-O'Hearn...
[Docs] [txt|pdf] [draft-josefsson-b...] [Diff1] [Diff2] Obsoleted by: 4648 INFORMATIONAL Network Working Group S. Josefsson, Ed. Request for Comments: 3548 July 2003 Category: Informational The Base16, Base32, and Base64 Data Encodings Status of this Memo This memo provides information for the ...
Frank Alcantara's profile photoMathias Gumz's profile photoAndrew Gray's profile photoTomasz Tarczyński's profile photo
+Brian Jones I haven't been able to get beyond the basics... choose a sequence a such that Σ(a[n]*π^n) = x
Now what?  : s
Add a comment...

Guido van Rossum

Shared publicly  - 
I was asked on Twitter why Python uses 0-based indexing, with a link to a new (fascinating) post on the subject ( I recall thinking about it a lot; ABC, one of Python's predecessors, used 1-based indexing, while C, the other big influence, used 0-based. My first few programming languages (Algol, Fortran, Pascal) used 1-based or variable-based. I think that one of the issues that helped me decide was slice notation.

Let's first look at use cases. Probably the most common use cases for slicing are "get the first n items" and "get the next n items starting at i" (the first is a special case of that for i == the first index). It would be nice if both of these could be expressed as without awkward +1 or -1 compensations.

Using 0-based indexing, half-open intervals, and suitable defaults (as Python ended up having), they are beautiful: a[:n] and a[i:i+n]; the former is long for a[0:n].

Using 1-based indexing, if you want a[:n] to mean the first n elements, you either have to use closed intervals or you can use a slice notation that uses start and length as the slice parameters. Using half-open intervals just isn't very elegant when combined with 1-based indexing. Using closed intervals, you'd have to write a[i:i+n-1] for the n items starting at i. So perhaps using the slice length would be more elegant with 1-based indexing? Then you could write a[i:n]. And this is in fact what ABC did -- it used a different notation so you could write a@i|n.(See

But how does the index:length convention work out for other use cases? TBH this is where my memory gets fuzzy, but I think I was swayed by the elegance of half-open intervals. Especially the invariant that when two slices are adjacent, the first slice's end index is the second slice's start index is just too beautiful to ignore. For example, suppose you split a string into three parts at indices i and j -- the parts would be a[:i], a[i:j], and a[j:].

So that's why Python uses 0-based indexing.
Anil Kumar H P's profile photoTom van der Sommen's profile photoJeff Mandell's profile photoPatrick Steed's profile photo
Jeff Hammond
Fortran gets it right, not with 1-based indexing, but with user-defined indexing. You can index a 7-element array from -3 to 3 if you want.

Guido van Rossum

Shared publicly  - 
Dropbox developer conference coming up! July 9, Fort Mason, San Francisco.
DBX is coming! Here's why we're so excited for our first developer conference:
Isaac Lopez's profile photoDalton Hubble's profile photoOmar Peralta's profile photoMarcos Luis Ortiz Valmaseda's profile photo
Seriously, why the hating?

Guido van Rossum

Shared publicly  - 
OH on python-dev: "This has come up before.  Classes have metaclasses (and _prepare_). Modules have loaders.  Poor, poor functions.  Because of the same concerns you've already expressed regarding the criticality of function performance, they miss out on all sorts of fun--inside their highly optimized box looking out at the other types showing off their cool new features all the time. It just isn't fair. :)"
Mike Pelletier's profile photoDaniele Simonetti's profile photoAdrian Marius Popa's profile photoOleg Chubin's profile photo
+Mike Pelletier that's what I call "workaround" (almost the opposite of "solution" )

Guido van Rossum

Shared publicly  - 
HALP! The Python trademark is in danger in Europe. Please help if you've used the name Python in Europe for your business.
For anyone who works in a company that has an office in a EU Community member state, we need your help. There is a company in the UK that is trying to trademark the use of the term "Python" for all so...
Valery Djondo's profile photoFrederic Marand's profile photoRamon Maceiras's profile photoAnil Seth's profile photo
+Bill Anderson *We want have free trademarks prefixes* which could not be robbed/registered at all - it need change US law first. I could choose If I want free trademark which is not protected or registered with some protection.

Whatever to make is more serious what is "dilution" between "Coca-Cola", "Cola-Coca", "Hop-Cola", "Koka-Kola" it sometimes very subtle.

Quick solution is give prefix "Free Another X" so it give possibility use "Free Another Coca Cola" without risk of unpredictable lawyers attack - prefix should be long :)

Maybe currently is it defined as dilution == probably it is illegal - I do not know US law as good as it need to understand this but think that "dillution" with special prefixes should be introduced to allow free trademarks not only registered.

Law should be change since number of product increased and not all of us want have registered trademarks and fight to defend trademark against robbery.

It is stupid that I have to defend my trademark if I do not want and loose time instead invention - is not?
In his circles
266 people
Have him in circles
64,575 people
eulises vallez's profile photo
Kristaps Taube's profile photo
Rudy Menendez's profile photo
David Koontz's profile photo
Shy Shalom's profile photo
Flavio Siotto's profile photo
Joong-hyun Lee's profile photo
yunus siddiqui's profile photo
Mohamed Ayoub Benjelloun's profile photo

Guido van Rossum

Shared publicly  - 
I was so impressed with this I am posting it to G+ and tweeting it.
jam ortiz's profile photopicoFlamingo Project's profile photoMary Ranz Gellie Aquino's profile photoboopathi raja's profile photo
Nick Li
great to read

Guido van Rossum

Shared publicly  - 
I just love the flowery language in this spam comment that Blogger intercepted for me:

"Its such as you learn my thoughts! You seem to grasp so much approximately this, such as you wrote the ebook in it or something. I think that you simply can do with some% to force the massage house a bit, however other than that this is magnificent blog. An excellent read. I will certainly be back." [link suppressed]
Chuck McManis's profile photoJan Bernhart's profile photoJavier Chiappa's profile photoNicholas Rumas's profile photo
Is this an inverse touring test? What if the computer is just waiting to be taken seriously, like a small brilliant child?, by using more complicated language?
Add a comment...

Guido van Rossum

Shared publicly  - 
Do not send me email like this:

Hi Guido,
I came across your resume in a Google web search. You seem to have an awesome expertise on Python. I would be glad if you can reply my email and let me know your interest and availability.
Our client immediately needs a PYTHON Developers at its location in *, NJ. Below are the job details. If interested and available, kindly fwd me your updated resume along with the expected rate and the availability.


I might reply like this:

I'm not interested and not available.
carlo juancho funtanilla's profile photoMary Ranz Gellie Aquino's profile photoManish Kumar's profile photoTushar Sonawane's profile photo
Pretend that you're interested and send them a resume. Much funnier.

Guido van Rossum

Shared publicly  - 
I am at my wits' end. In Office 2011 on the Mac, specifically Powerpoint, how do I turn off the automatic substitution of a smiley graphic when I type ":-)" ? I have turned off every single option under AutoCorrect and it still does this. :-(
Guido van Rossum's profile photoNehemiah Dacres (dacresni)'s profile photoViktor Lieskovsky's profile photoFrançois Colas's profile photo
+Jason Yeo Bingo! Thanks! The mouse-over option worked. (The Tools -> AutoCorrect didn't, I'd already tried that.) Comments closed.

Guido van Rossum

Shared publicly  - 
Bad user experience with Google wallet and Google apis console: getting monthly bills for $0.00. Worse user experience: being threatened with suspension of the account when the credit card expires.
Dmytro Aleksyeyenko's profile photoTitusz Pan's profile photoRino Severino's profile photoPeter, “Peter, Berlin” Rosemann's profile photo
Another problem is: when I want to donate, google wallet says they do not ship to Poland. 

Guido van Rossum

Shared publicly  - 
When we first announced our trademark issues yesterday, we immediately and continually received a great outpouring of support from our community. The number of supporting emails in our inbox is tremen...
Ricardo J. Barberis's profile photoAlexandre Fayolle's profile photoTrevor Olson's profile photoFelipe Augusto de Souza's profile photo
I still think their behavior is extremely uncooperative, therefore my comment "asshats will never die out" - which I consider civil, since it's very clear that python has been around forever and they're trying to monetize something they deep inside know isn't theirs, just because there might be a legal chance to do so - obviously somebody else might use a different term to describe this kind of behavior (e.g. "business school graduate standard procedure"), but to me that word describes it best. Tastes differ though.

That said, I'm also unhappy about many comments and - even worse - actions that make the Python community look like a bunch of anonymous wannabes, not understanding that to win a game you have to play by the rules, regardless if you like them or not - especially in an open source project that's supposed to be sustainable - after all sustainability is one of the key benefits of open source software. Also Python as a project relies on donations (which by the way doesn't make it evil or bad etc.) and it's harder to convince companies to give money to a project that might make them look bad - basically the same reason why Python needs a global trademark, so somebody else's (potentially broken) technologies don't reflect back on the project in a negative way.

Maybe that's also a good lesson about the difference between mailings lists and social media in terms of dynamics, things spiral out of control more easily.
In his circles
266 people
Have him in circles
64,575 people
eulises vallez's profile photo
Kristaps Taube's profile photo
Rudy Menendez's profile photo
David Koontz's profile photo
Shy Shalom's profile photo
Flavio Siotto's profile photo
Joong-hyun Lee's profile photo
yunus siddiqui's profile photo
Mohamed Ayoub Benjelloun's profile photo
Writing and reviewing code
  • Dropbox
    Engineer (Python BDFL), 2013 - present
  • Google
    Senior Staff Software Engineer, 2005 - 2012
  • Elemental Security
    Senior Language Architect, 2003 - 2005
  • Zope Corporation
    Director of PythonLabs, 2000 - 2003
    Director of PythonLabs, 2000 - 2000
  • CNRI
    1995 - 2000
  • CWI
    Programmer, 1982 - 1995
  • SARA
    Student programmer, 1977 - 1982
Map of the places this user has livedMap of the places this user has livedMap of the places this user has lived
Holland - Virginia
Contact Information
Creator of the Python programming language.
Python's BDFL.
Bragging rights
My first computer was a Control Data mainframe.
  • University of Amsterdam
Basic Information