Live data from Hacker News

How we rolled out one of the largest Python 3 migrations

blogs.dropbox.com

101–110 of 141 posts

Re: How we rolled out one of the largest Python 3 migrations

#101
post #48

> However, rather than use the native toolchains directly, such as Xcode for macOS, we delegated the creation of platform-compliant binaries to py2exe for Windows, py2app for macOS, and bbfreeze for Linux. I wish the authors of more Python tools would deploy standalone applications. I do not like having to maintain various sets of Python installers/package managers (because every Python tool seems to use a different…

I hope some day some big corp decides to write a decent (open source) Python to C compiler, which makes optional optimizations based on type annotations. I find this project: https://github.com/Nuitka/Nuitka very interesting, but its written and maintained only by a single person and I never got it to work with any of my apps.

Cython is a pretty good Python to C compiler and in its latest release is using type annotations... the thing is, you shouldn't need to compile your whole program (compiling is really slow and interpreted Python is fast enough for most of the code).

Re: How we rolled out one of the largest Python 3 migrations

#103
post #32

Earlier quoted context omitted.

Go isn't good at the system level. I.e. calls to C APIs are expensive, etc.

Wait, I thought Go was designed as a system language.

Only in the Google sense i.e. "for building big systems… like servers". Not as in "close to your operating system" or "you should write an operating system in it".

Re: How we rolled out one of the largest Python 3 migrations

#104

I would have thought that Go would be perfect for this sort of system-level-like programming ?

So much downvoting for a honest question :/

There are few comments worser on HN than "why didn't you implement in [rival language]?" as if [rival language] was a default choice that could only be deviated from if it was extensively motivated.

The claim that Go is "perfect" doesn't make things better.

Re: How we rolled out one of the largest Python 3 migrations

#105
post #99
post #67

Earlier quoted context omitted.

Pretty trivial? Really? I think as soon as you start writing all caps trivial has gone right out the window. Trivial would be application dependencies managed by the system package manager. I'm at the point where I won't touch a python app or library that can't be installed via Pacman. It's just not worth my time. And... python is still the only thing on arch that gives me the shits everytime it upgrades.

Being charitable, I think the parent means that the python developer sticks all the dependencies in a directory and creates a bash script to set PYTHONPATH and launch. The user receives a directory rather than an executable, but only has to use the bash script, rather than worry about any of the Python in the directory.

Now your lovingly created cross-platform app is back to linux only because you used bash to invoke it.

Re: How we rolled out one of the largest Python 3 migrations

#107
post #106

Anyone curious to estimate the cost for Dropbox to migrate to Python 3?

and also calculating the cost savings if any. On a technical level the whole exercise seems to lead to a slightly more elegant, consistent code base, but it's still a long way from earning or saving any actual money.

Re: How we rolled out one of the largest Python 3 migrations

#108

Earlier quoted context omitted.

Yes, this is one of the classics - right up there with the "less space than a Nomad, no wireless, lame" comment (which wasn't on HN I don't think - but we all know it could have been :) Edit: I see the motherlode is in place earlier in the thread "Especially when you could build such a system yourself quite trivially by getting an FTP account, mounting it locally with curlftpfs, and then using SVN or CVS on the mount…

The iPod comment was from slashdot, if memory serves.

Yes. CmdrTaco, when posting to the home page:

https://slashdot.org/story/01/10/23/1816257/Apple-releases-i...

(that post is old enough to vote in this year's election).

Re: How we rolled out one of the largest Python 3 migrations

#109
post #77

Earlier quoted context omitted.

Maybe because 10% on a server is much more valuable than 10% on a client. On a server, you’re paying for that 10%. On a client, you’re not. If it was 10% for nearly free then sure - but maintaining a separate implementation of a language is costly.

No, Pyston said of their last version "On Dropbox’s server, we are 10% faster." PS Thanks for all your Django contributions!

Should have read the article, whoops. Thanks for the correction!

Re: How we rolled out one of the largest Python 3 migrations

#110

Earlier quoted context omitted.

This led me to find another loosely related but very entertaining piece of dropbox history. The original "Show HN" post: [1]. It's funny to see so much skepticism knowing now what the company became. [1] https://news.ycombinator.com/item?id=8863

Yes, this is one of the classics - right up there with the "less space than a Nomad, no wireless, lame" comment (which wasn't on HN I don't think - but we all know it could have been :) Edit: I see the motherlode is in place earlier in the thread "Especially when you could build such a system yourself quite trivially by getting an FTP account, mounting it locally with curlftpfs, and then using SVN or CVS on the mount…

ha, that's a nice counterpart to the 'trivial' thread above https://news.ycombinator.com/item?id=18071820
Post reply on HN