Guido Goes Google 255
revividus writes "It seems that Python creator Guido van Rossum has received an offer from Google, and accepted it. Here is also some confirmation."
The trouble with being punctual is that nobody's there to appreciate it. -- Franklin P. Jones
His name is Guido? (Score:2, Funny)
Re:His name is Guido? (Score:5, Interesting)
However, could this be Google's move against Sun and Microsoft ?
Sun has Java
Microsoft has C#
It would be pretty logical that google would like to control something that is comparable to sun and microsoft's bigtime server languages. Python has moderately fast bytecode (google stuff could improve a lot here) and it's got a decent oop model and a threading api. i/o is also usable. i think zope fans can hype their favourite thing in the responding posts too.
i can't wait for the first version of GPython or Gython !
Re:His name is Guido? (Score:2)
Pygthon
Re:His name is Guido? (Score:2, Funny)
Re:His name is Guido? (Score:2, Funny)
Re:His name is Guido? (Score:3, Interesting)
Re:His name is Guido? (Score:5, Informative)
Correct. (Score:3, Informative)
Often times it's only required to rewrite the most crucial bits of an app. This is fairly straightforward in Python.
Python vs. compiled Java and C (Score:5, Interesting)
I like weave but I am waiting to see what will come out of the PyPy [codespeak.net] project - the author is the one who wrote Psyco (the JIT compiler for Python).
Then there is Pyrex where Python can manipulate C data with language extensions, as opposed to weave where C code is inlined into the python code and Python data is manipulated in C.
It is true that as a scripting language Python is slower than (byte)compiled languages. But it is slower by a constant factor. In other words people would say "Your Python solution is 4x slower than my Java solution!". What this means though is that just by upgrading the hardware that Python runs on, one can reach the speed of execution of the compiled program. In other words Python on an Athlon 64 fx 57 might run faster than java bytecode on a 1Ghz Athlon, or might even run faster than C on a 100Mhz machine (I am just making these numbers up, maybe someone knows of some benchmarks?). The point is that application that required C 15-20 years ago can probably be re-written in Python now.
Re:Python vs. compiled Java and C (Score:3, Interesting)
> by a constant factor.
Python is just as fast as c or java when it comes to io-intensive applications:
http://www.osnews.com/story.php?news_id=5602&page= 3 [osnews.com]
That code that cannot be optimized by Pycho is considerably slower, though the above benchmark exaggerates it through errors in their use of python.
My application processes over twenty million events a day through python - whic
Re:Python vs. compiled Java and C (Score:3, Insightful)
Usually the first saying is applied when someone has decided on the language, say C, and on their hardware. But when programming, instead of thinking of the algorithm and how to correctly write it, they think about how many registers can they use at the same time first and start with inlining of assembly code. I think though, that the same principle can be applied to the choice
This doesn't mean they want to "control" Python (Score:5, Interesting)
Re:This doesn't mean they want to "control" Python (Score:2, Funny)
Re:This doesn't mean they want to "control" Python (Score:3, Interesting)
1) is open source so the people who avoided java for that reason can participate
2) is brace constrained, so the people who hate python for whitespace can participate
3) has a full frontend for gcc, so the optimization freaks can participate
4) has a vm, so the web folks can love it
5) has an interpreter, so the python/ruby people can enjoy it
6) has multiple inheritance or explicit delegates, so the people who can't live without that aren't stuck in c++
7)
Re:This doesn't mean they want to "control" Python (Score:2)
Re:This doesn't mean they want to "control" Python (Score:3, Funny)
Re:This doesn't mean they want to "control" Python (Score:4, Insightful)
Re:This doesn't mean they want to "control" Python (Score:2, Insightful)
PyPy: a Python implementation written in Python (Score:5, Informative)
A very interesting project that aims to create a faster Python implementation is PyPy [codespeak.net], funded by the EU, by google (with Summer of Code) and by a lot of programmers that donate their own time.
Even the Psyco [sourceforge.net] guys say that the future is in PyPy!
Re:PyPy: a Python implementation written in Python (Score:2)
Reminds me of the hypesters (yeah I made it up) around Java that said it would be faster than C code eventually. Never happened. Hopefully the PyPy people have more luck.
Re:PyPy: a Python implementation written in Python (Score:2)
You are right, but this isn't only hype: what they mean when they write that "the secret goal is being faster-than-C" is not that your Python program will run faster than a C equivalent (although try to write a simple md5sum in Python that reads 64kB per loop and benchmark it against the GNU implementation... you will be surprised ;-)). What they mean is that they hope to run Python programs
Re:His name is Guido? (Score:5, Interesting)
Microsoft hasn't been asleep either when it comes to Python. They hired the original guy who worked on the Iron Python project http://www.ironpython.com/ [ironpython.com] which brought Python to
The latest updates on the Iron Python is right here
http://www.gotdotnet.com/workspaces/workspace.asp
Re:His name is Guido? (Score:2)
Re:His name is Guido? (Score:4, Informative)
Python's biggest problem from a performance perspective is that the language effectively guarantees operations on several internal objects (e.g. lists, dictionaries, etc) are atomic (from a multithreading point of view). This means that some kind of lock must be held when working with such objects. Because this is how most Python programs spend most of their time, Python usually just has a global lock for all such objects that threads hold whenever they aren't blocked. This means that multithreaded Python apps do not usually benefit from having multiprocessing systems. The obvious alternative (per-object locks acquired when necessary) doesn't seem to help, as it slows single-thread performance significantly.
I think this flaw means that Python cannot really compete with Java or C# on big server systems. And I don't see how to fix it, either, without breaking the beauty of the language.
Re:His name is Guido? (Score:2)
that's it? (Score:5, Funny)
Re:that's it? (Score:4, Funny)
Re:that's it? (Score:5, Funny)
Did you want me to say that Google was a search engine and that Python was a programming language?
Re:that's it? (Score:5, Funny)
"It seems that Python creator Guido van Rossum has received an offer from Google, and accepted it. Here is also some confirmation. Does this finally confirm that vi is better than emacs?"
or
"It seems that Python creator Guido van Rossum has received an offer from Google, and accepted it. Here is also some confirmation. Is this move calculated to counter Apple's move to Intel?"
See? It's not so hard.
Re:that's it? (Score:2)
Mod +1 (funny because it's true...)
Re:that's it? (Score:3, Funny)
It seems that Python creator Guido van Rossum has received an offer from Google, and accepted it. Here is also some confirmation. Not to flame the flames, but does this unexpected move confirm that PostgreSQL is slipping behind MySQL in the conformance to SQL Standards?
or
It seems that Python creator Guido van Rossum has received an offer from Google, and accepted it. Here is also some confirmation. Would he have been
Re:that's it? (Score:5, Funny)
Re:that's it? (Score:2)
Did you want me to say that Google was a search engine and that Python was a programming language?
You could like mention that Guido is NOT a red-cheeked yodel-meister from the Austrian Alps.
Re:that's it? (Score:2)
I love Python, but... (Score:5, Interesting)
And of course if Google wanted to really screw with both Sun and Microsoft, especially Microsoft, they could create their own cross-platform web and gui toolkits and a free RAD GUI builder a la Visual Studio for Python. If they could create a Python framework on par with Swing or Windows Forms, there'd be quite a bit of wailing and gnashing of teeth in both camps
Re:I love Python, but... (Score:2, Informative)
It would be great to see Python get some better documentation tools
Doxygen [stack.nl] claims to support Python.
Re:I love Python, but... (Score:2, Informative)
I've always found help(object in question) in the interpreter to be more efficient than looking it up in the sun javadocs or on msdn.
And of course if Google wanted to really screw with both Sun and Microsoft, especially Microsoft, they could create their own cross-platform web and gui toolkits
WxWidgets?
PyGTK?
Re:I love Python, but... (Score:5, Informative)
Good point. I think that Python [python.org] + wxPython [wxpython.org] + wxGlade [sf.net] is a very powerful combination for clean, fast and maintainable GUI development.
If you do GUIs I suggest to try these tools: they are simple and powerful (wxPython even contains additional classes that are not present in wxWidgets).
Re:I love Python, but... (Score:3, Interesting)
PyGTK?
Both of those are substantially lower-level than the grandparent's examples (SWING and Windows.Forms, IIRC). Wx seems to be pretty much an MFC reimplementation ported to Python, while GTK seems to take a different but equally low-level approach to it all.
I'm currently working on a UI framework based around an XML object description framework and layout engine that might fit the bill better. Currently only C++ is supported, but Python's on the roadmap. Not sure what license I'll be able to
Re:I love Python, but... (Score:5, Interesting)
Actually Python's interactive interpreter and class/method documentation strings work very well. Most times it's much nicer to simply be able to DO stuff and look up help at the same time rather than go sifting through some huge morass of automated docs.
Also, the next time you can do something in Java or
Re:I love Python, but... (Score:3, Informative)
Re:I love Python, but... (Score:3, Interesting)
In my opinion, the more fancy stuff people have used javadoc tags for (object relational mapping, test cases and contraints, etc.) should be done with annotations anyway, and annotations are supported b
Re:I love Python, but... (Score:2, Interesting)
I disagree. Python (like Perl) tends to mirror the underlying OS and libraries in some no-nonsense, pragmatic way. Java and .NET want to be your OS, and seem to make a point of reinventing
as many wheels as possible, hoping you forget how to use the ones you already
have in the process.
My wheels are Unix, and I do not plan to replace them.
Python doesn't try to force me; that's one reason
try pydoc by Ka-Ping Yee (Score:3, Informative)
`... Python get some better
documentation tools as well so that
it'd be easy to generate documentation
on par with the Java and
documentation.
I make this same mistake everytime I program in python. If you dont read the docs [1] & other peoples code you can write functional code, but with a third to a half bloat penalty. That is of course unless you read lots of example code or the docs...
So check again. Because PyDoc [2] is a tool that displays the
An assumption (Score:5, Interesting)
I'm not saying that assumption is not true. It's just that he is a huge talent. If I had a gargantuan project to run, I'd hire him no matter what the language.
I wonder if the management types have figured out that anyone who can create and run a large successful open source project is a much better manager than the average MBA.
Re:An assumption (Score:5, Insightful)
No, they are most certainly hiring Guido to continue Python development. It would be a disaster for Python, and thus for Google, if they diverted his talent toward some random Google project.
Re:An assumption (Score:2)
Do we know how much truth there is to this? I was under the impression that much of Google these days is Java (GMail, Adwords, Adsense, etc).
Re:An assumption (Score:3, Informative)
I gave a keynote at PyCon last year about the importance of Python at Google. Some people transcribed the talk. You should be able to find it via Google. (heh!)
Re:An assumption (Score:3, Informative)
Re: An assumption (Score:2, Interesting)
Re:An assumption (Score:5, Informative)
In any case: yeah, we hired him because we want him to work on Python itself. And as John says later in this thread -- about half his time.
Python v. Perl (Score:4, Interesting)
not really (Score:2)
No, no, no, no! (Score:5, Funny)
Yes, I see a Google search for 'perl' [mtholyoke.edu] now has a transcript of Monty Python's Parrot sketch as the first hit.
Re:No, no, no, no! (Score:3, Funny)
Re:Python v. Perl (Score:4, Informative)
Google's always been pretty open about heavy Python use. There is fairly interesting presentation by Greg Stein about Python at Goole here [pycon.org] (audio only).
Re:Python v. Perl (Score:2)
The nerds are having revenge (Score:2)
http://sunsite.uakom.sk/sunworldonline/swol-02-19
Re:The nerds are having revenge (Score:2)
http://sunsite.uakom.sk/sunworldonline/swol-02-19
Wow...! (Score:2)
One Liners... (Score:5, Funny)
We just love a guy that gets so wrapped up in his work!
We've got penguins, we've got pythons, and we've got a lemur with a minigun...this zoo rocks!
After hearing the report, Ballmer threw a Hissssy fit.
Someone reported a problem with a mouse at Google Central and the recruiter got to work on hiring the python guy.
With a keen eye on competition, Google is just trying to catch up to the number of reptiles employed by Microsoft.
Re:One Liners... (Score:2, Funny)
Becoming the new Xerox Parc (Score:5, Insightful)
Re:Becoming the new Xerox Parc (Score:5, Insightful)
Xerox Parc was a demonstration of how (Score:2)
Xerox is the best example of people who give away the store trying to sell the butt wad to their customers.
They were so focused on selling photocopiers that any idea presented to them had to be couched in terms that they could understand. (Their 'selling seminars' were also, in my opinion, tissues of lies because the product sold itself, in spite of what those Bozos were spewing. When they got some competition the company just folded until the got some management who hadn't '
Re:Becoming the new Xerox Parc (Score:2, Interesting)
google is making amazing things.. and they know everyone wants them
Parc = !AxF(x)
Google = AxF(x)
Re:Becoming the new Xerox Parc (Score:2)
Good question. The only difference is that Google actually makes stuff that people use. Not to diss Xerox PARC in any shape or form, but Google is phenomenal in that it is a profitable and valuable entire company, not a subsidiary, that simply will not stop.
Pretty soon I'll just have to ask Google what I'm going to eat for lunch. It tells me almost everything else. I think its sick that Google has become the best phone book available, a reverse phone directory, a
Ask Google (Score:2, Funny)
Does Google know something I don't know?
Re:Becoming the new Xerox Parc (Score:2)
They're creating one of the planet's most powerful computer science think tanks - and they're making tons of money doing it which means they ought to be around for a while.
Python was used in Google's first academic version (Score:2, Informative)
In order to scale to hundreds of millions of web pages, Google has a fast distributed crawling system. 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
http://www-db.stanford.edu/~backrub/google.html [stanford.edu]
A way of returning a favor, perhaps?
Google and Python have always been friends (Score:2)
Semi-Off-Topic Python vs. Perl discussion (Score:2, Interesting)
While Perl is still my sentimental favorite, I'm open-minded about programming languages, especially those that are as widely used as Python. I've never been able to really understand Python, though, because of its bizarre syntax. (insert Perl syntax joke here) It's always seemed easier to just do what I need to do in Perl, since I know it so well.
If I'm reasonably proficient in Perl, what would I gain by using Python instead? I'm not trying to troll here, I'm just wondering what I'm missing. If Google
Re:Semi-Off-Topic Python vs. Perl discussion (Score:5, Informative)
I still use perl for quick-and-dirty text-processing and so forth, but Python is excellent for creating scripts you want to be able to maintain later. The syntax is sparse (compared to most other languages), so there isn't as much code to maintain. I found most of my favorite perl features were also represented (foreach, regular expressions, etc.)
People who've never spent much time with Python will gripe about the whitespace. It was never an issue for me, and I've never had problems with it.
If you plan to do any significant object-oriented programming, Python is very good for that. For procedural programs, the only edge it has over perl is readability, due to the concise syntax.
One thing to keep in mind with Python, however, is that it does NOT convert between numbers and strings automatically, while perl does. It's no big deal to cast a number as a str() or cast a string as int(), but if you don't know about it beforehand, it will get you.
From what I understand, Python is also very nice for metaprogramming, but I've never used it for that. I have used it for quick command-line utilities, GUI apps (with wxPython), and game programming. The object-oriented features are really why I prefer it over perl. They are intuitive, and you have a lot of power over how the objects behave in various circumstances.
If you have any C# experience, I've found you can port C# code to Python with only minor (mostly cosmetic) changes. (This obviously excludes using libraries written for C#, though--I was referring to the syntax of the code itself as being easily ported.)
Sorry if this explanation wasn't technical enough. I was just trying to lay out the general reasons I found a move from perl to Python relatively painless.
Re:Semi-Off-Topic Python vs. Perl discussion (Score:3, Interesting)
Re:Semi-Off-Topic Python vs. Perl discussion (Score:2)
I would suggest you give Ruby a try instead, it mixes pretty much the best of both Python and Perl. Meaning it has nice looking regex, a 'normal' non indention based syntax and plenty of other stuff.
Better article headline: (Score:5, Funny)
Dynamic Typing (Score:3, Interesting)
Re:Dynamic Typing (Score:3, Interesting)
In my experience (with JavaScript/ActionScript, not Python): yes. Your mileage may vary.
I suppose it comes down to if you document thoroughly what comes in and out of a function/class. Anyone have any thoughts on this?
Hey, I've got an idea! We could have the compiler actually check to ensure that the documentation for argument types is present.
And for bonus points, it could also check to make sure that th
Re:Dynamic Typing (Score:2)
Re:Dynamic Typing (Score:2)
Re:Dynamic Typing (Score:3, Insightful)
Guido.. going.. going.. Gonkers... (Score:2, Interesting)
It might be nice to see some of the Guido pyth [python.org]
complete conjecture (Score:3, Insightful)
AJAX is working for Google fairly well right now, but it's probably not an end-all answer. Javascript is fine for writing small apps, but it's not that great of a language. And even with the distance diminishing between browsers, it's still a pain to write cross-browser code. One of the great accomplishments I've seen of javascript (besides maps.google) is the FCK editor [fckeditor.net], but even that can be slow, and takes large amounts of memory.
Looking ahead, I suspect Google knows that Javascript will eventually have to dumped. M$ already has an answer, .net. They have their browser, and they can afford not to have to worry about being cross-platform.
In the end, the web browser is not a great for doing things besides browsing the web. On top of that, with EOLAs legal suit against embedded applications, full fledged internet apps seem to be the only way to go. If Google is to survive, they need the tools and framework in order to deploy such apps.
The Zen of Python (Score:2, Informative)
The Zen of Python (by Tim Peters)
Beautiful is better than ugly.
Explicit is better than implicit.
Simple is better than complex.
Complex is better than complicated.
Flat is better than nested.
Sparse is better than dense.
Readability counts.
Special cases aren't special enough to break the rules.
Although practicality beats purity.
Errors should never pass silently.
Unless explicitly silenced.
In the face of ambiguity, refuse the temptation to guess.
There should be one-- and preferably only one --
Easter Egg (Score:5, Informative)
>>> import this
1 down, 1 to go (Score:2)
New Windows screen saver (Score:5, Funny)
My plan to get hired by Google: (Score:4, Funny)
Step 2) ????
Step 3) Profit!
Unfortunately I think my languages are just too powerful for Google, really. I'm not sure they can handle them. That must be why they haven't called me yet...
The Google Brain-Drain (Score:2, Interesting)
I'm reminded of the Microsoft Research brain-drain from a few years ago, when everyone was paranoid about what M
Re:The Google Brain-Drain (Score:3, Interesting)
Money is great. I have nothing against money. But treating a university like a farm team is not quite the same as working with a group of researchers and then publicizing the results. The former benefits just Google and the students who are around when the money hasn't been used up yet. The latter benefits Google, the researchers, the students, and (ideally) everyone who comes after them in that particular field.
I'm thinking about the diff
Google strategy.... (Score:3, Funny)
while(stock > 400):
for company in buyoutlist:
company.purchase()
spend_money()
for phd in smart_people_list:
phd.hire()
release_cool_google_tool()
(might be syntax errors in this, I work with so many languages I get confused myself)
Remeber ALF, Bart? (Score:3, Funny)
You are late (Score:4, Informative)
Well... (Score:3, Funny)
Stupid nerds.
Well... Some Mothers do 'Ave 'Em.
Re:I'm sorry, but... (Score:2)
Re:an offer from Google (Score:4, Funny)
An offer you can't refuse
... especially when your name is Guido.
Re:Google on track to Monopoly (Score:2)
Err, wait. (Score:2)
the question is... (Score:2, Funny)
did he update that himself?
Re:Wikipedia entry? (Score:3, Funny)