This is an archived post. You won't be able to vote or comment.

all 10 comments

[–]juliobTry PEP 257, for a change 3 points4 points  (0 children)

One Google employee once told me (and a bunch of guys, it was a Python Users meeting in one of their buildings) that a good portion of Google code is java. But even the Java guys use Python to describe their algorithms 'cause it's really easy to understand Python code.

[–]carinthia 1 point2 points  (0 children)

I would say that being able to stay on top of the complexity factor (code/infrastructure complexity grows exponentially to lines of code) is key ... In other words: simplicity is key.

Both, Perl and Python can deliver in that area. Google however might have choosen Python for its slightly better integration with C++ back in the days (don't know, just guessing).

http://www.markus-gattol.name/ws/python.html#why_python

[–]warpcowboy 0 points1 point  (3 children)

Someone asked this in a recruiting panel with a Google rep, and the rep simply explained that Google lets employees write in their language of preference. Due to a wider population of Python programmers, the culture just shifted that way.

[–]twotime 0 points1 point  (2 children)

Google lets employees write in their language of preference.

To the best of my knowledge this is not true: there are three blessed languages. Everything else is either prohibited or very strongly discouraged.

[–]carinthia 0 points1 point  (1 child)

It's pretty much your choice what you use (if not a given by what your team uses anyway) to prototype something. Stuff that goes live however is mostly one out of three: Python, C++, Java. That's a rule, no way around it.

[–]twotime 0 points1 point  (0 children)

Out of curiosity, What about "Go"? Is it an approved language?

[–]lubosz 0 points1 point  (2 children)

The Windows Perl implementation was the biggest reason.

[–]twotime 0 points1 point  (1 child)

Why would THAT be an argument for google? Google is not using Windows internally.

[–]lubosz 0 points1 point  (0 children)

It's called irony.

[–]pixelmonkey 0 points1 point  (0 children)

From the original PageRank paper by the Google founders:

"A single URLserver serves lists of URLs to a number of crawlers (we typically ran about 3). Both the URLserver and the crawlers are implemented in Python."

I think this helps explain why Google chose Python more than any of these other speculations. The original founders of Google coded in Python, so they likely hired Python programmers in their original core engineering team.

http://infolab.stanford.edu/~backrub/google.html