Hacker News new | ask | show | jobs
by nemothekid 2710 days ago
A theory based on the article is it seems Pirlo may be written in Python (going off the fact that is leverages SQLAlchemy) - which is interesting given most providers are writing new infrastructure code largely in Go (Spinnaker is another Python exception).

I'm guessing that Python is still heavily used inside Dropbox, but does anyone know if they have published any style guides or tooling to managing Python codebases at their scale?

6 comments

Dropbox hired the creator of Python to help migrate their huge Python 2 codebase to Python 3. It would make sense for them to continue with their investment in Python.
Dropbox sponsors most of the developers of http://mypy-lang.org/ , an optional static typing system for Python.

I've found it to be hugely useful in safely working in a large Python codebase :)

(NB: I work at Dropbox)

Curious if you’ve ever tried Cython out. Not quite the same, but a semi-similar end goal to a degree. I started looking into the other day and it might provide some nice improvements to heavier applications.
> A theory based on the article is it seems Pirlo may be written in Python (going off the fact that is leverages SQLAlchemy)

Sounds like a reasonable guess.

> which is interesting given most providers are writing new infrastructure code largely in Go

Dropbox apparently uses Go a lot, see e.g. https://about.sourcegraph.com/go/go-reliability-and-durabili...

They also use Rust for some performance-critical stuff, e.g. https://news.ycombinator.com/item?id=11282948

That being said, AFAIK originally Dropbox was written mostly in python. Probably there's still lots of that left.

This is also borne out by the fact that they mention Celery.
Unless I'm mistaken, Guido still works for Dropbox. And as far as I know they still mostly do Python.
> which is interesting given most providers are writing new infrastructure code largely in Go

I'm not sure this is true. There's a lot of Java around, Scala is pretty popular too, in many industries C/C++ are the norm still for this sort of code.

Go might be the trend in open source infrastructure projects right now, but a significant amount of that is likely to be inertia from Docker and Kubernetes.

Spinnaker is written in Java