Live data from Hacker News

Backend of Meta Threads is built with Python 3.10

twitter.com

61–70 of 458 posts

Re: Backend of Meta Threads is built with Python 3.10

#61
post #11
post #5

Always the same people that get their names in the news. I would say that the amount of tweaks that prop up Python is no cause for celebration.

Yet here it is ... powering a global scale app. Too weak for someones hobby project, strong enough for global scale.

Throw a trillion cores at anything and it can be global scale.

Re: Backend of Meta Threads is built with Python 3.10

#62
post #58
post #11

Earlier quoted context omitted.

Yet here it is ... powering a global scale app. Too weak for someones hobby project, strong enough for global scale.

Off-topic: it is not yet [global scale] because it is only available in US. Here in EU, I still get “not available in your country”.

It is only unavailable in the EU.

Something, something privacy regulations.

Re: Backend of Meta Threads is built with Python 3.10

#63
post #18

Earlier quoted context omitted.

My few years of personal experience of using Python with even small-ish scale professional projects have been... underwhelming so far. I wonder how Meta (and Google, and all the others who write serious Python code) manage to keep things running – and I'm not talking (only) of performance, but largely of bugs. My personal suspicion is that the secret sauce is simply to have a sufficient budget to hire an army of code…

Tests is likely a large part of it. There are some great tools for code formatting, quality, and type checking. It’s a very flexible language… When people are hyper critical of Python I feel it’s typically they haven’t seen real professional Python before and just throw scripts around… if you work with some hardened Python pros you pick up the tricks really quickly and it’s very enlightening. I’ve always struggled to…

Every language will have its gurus and its own peculiar with-the-grain approach, but the python language has a ton of non-essential complexity baked into its very design/core (especially for a language that people seem to think is "simple"-- it's not, not at all; it's a language full of "pragmatic compromises", apparently by intentional philosophy), which places fundamental limits on how safe your application can be.

Re: Backend of Meta Threads is built with Python 3.10

#64

Earlier quoted context omitted.

In short: static analysis, unit tests, staging environments, effective log aggregation. The first one is a big productivity booster as it shows you bugs before you commit them. Here's a post about this, not exactly new but still describing the general principles very well: https://instagram-engineering.com/static-analysis-at-scale-a...

I would say that those things don't really contribute to the actual runtime scalability of the application. Those things ensure that the code is at least correct for what it's supposed to do, not necessarily whether it's performant. Even the most perfectly-written Python code will still be dog-slow and require an enormous budget to actually run at scale. It's obviously fine to do that and there are many success stori…

> Even the most perfectly-written Python code will still be dog-slow and require an enormous budget to actually run at scale.

Nah, asyncio on uvloop is plenty fast.

Re: Backend of Meta Threads is built with Python 3.10

#65
post #57

Earlier quoted context omitted.

Not exactly true. They have a read-only browser view. In fact a Thread thread has already been on the front of HN. https://news.ycombinator.com/item?id=36609632

> Not exactly true. Still, mostly true.. read-only is just dumb. Nice to be back in 2008, when mobile-first turned into mobile-only. The entire point of this thread was that this is a Python/Django web app, but it's not actually a web app at all, so what's the point of pointing out any of this?

[deleted]

Re: Backend of Meta Threads is built with Python 3.10

#66
post #60
post #55

Really, all the performance intensive parts are in various c++ aggregator and recommendation type services. But the webserver is Django, yes.

Thanks for your comment. I'm really interested in this topic. How do you know the web server is Django? I searched but couldn't find this. Why would they use Django? I did some small projects in it but I assumed it wasn't very fast and wouldn't be suitable for a big app like this. I would like to know the pros and cons. Why didn't they build up something in C++ or Rust? Won't python limit the speed of responses despi…

It is fairly normal to build web servers in a way so they can be scaled horizontally (more instances rather than larger instances). So they can just have more containers run their Django servers and distribute the load between them.

Re: Backend of Meta Threads is built with Python 3.10

#67
post #30
post #24

Can we block Twitter links on HN? No point in supporting that user-hostile tire fire. This could have been on Mastodon.

The links are being submitted and voted on by other members of the community. I’m not sure what gives you the impression you’re in a position of authority.

Oh lord, the person asked a question, A QUESTION!!!!

Geez, it is you who is the authoritarian for coming so hard at the person who asked a pertinent question.

Geez.

Re: Backend of Meta Threads is built with Python 3.10

#68
post #30

Earlier quoted context omitted.

The links are being submitted and voted on by other members of the community. I’m not sure what gives you the impression you’re in a position of authority.

Asking a question is having the impression that one is in a position of authority now?

No, but appealing to 'we' is. Not that 'we' in this case has much meaning, it actually could read 'you'.

Re: Backend of Meta Threads is built with Python 3.10

#69
post #18

Earlier quoted context omitted.

My few years of personal experience of using Python with even small-ish scale professional projects have been... underwhelming so far. I wonder how Meta (and Google, and all the others who write serious Python code) manage to keep things running – and I'm not talking (only) of performance, but largely of bugs. My personal suspicion is that the secret sauce is simply to have a sufficient budget to hire an army of code…

In short: static analysis, unit tests, staging environments, effective log aggregation. The first one is a big productivity booster as it shows you bugs before you commit them. Here's a post about this, not exactly new but still describing the general principles very well: https://instagram-engineering.com/static-analysis-at-scale-a...

[deleted]

Re: Backend of Meta Threads is built with Python 3.10

#70
post #30

Earlier quoted context omitted.

The links are being submitted and voted on by other members of the community. I’m not sure what gives you the impression you’re in a position of authority.

Asking a question is having the impression that one is in a position of authority now?

Exactly my thoughts. Seems like asking genuine questions is not acceptable anymore because some people can’t help but to resort to personal attacks. Unbelievable.
Post reply on HN