Live data from Hacker News

Backend of Meta Threads is built with Python 3.10

twitter.com

141–150 of 458 posts

Re: Backend of Meta Threads is built with Python 3.10

#141

Earlier quoted context omitted.

It's a heavily modified internal fork of Django. Source: I work on our Python Language Foundation team.

Are you using the ORM/auth/admin features or is Django just a lightweight router? I can't imagine the ORM being too useful at Facebook's scale.

I'm not familiar enough with Django to say for sure, but I assume at this point it's almost entirely custom ORM and libraries on top of async django routing/response.

Re: Backend of Meta Threads is built with Python 3.10

#142
post #115

For the “Python isn’t fast enough for production backend” crowd from the same company that brought you the largest social network built on PHP + MySQL.

You mean the company that had to create their two PHP implementations and a translator to C++, to actually scale?

Lol. Do you think you are just going to use go and everything is going to scale to FB level size?

Facebook was already at a scale larger than 99.99999 percent of sites before they had HHVM

Re: Backend of Meta Threads is built with Python 3.10

#143

For the “Python isn’t fast enough for production backend” crowd from the same company that brought you the largest social network built on PHP + MySQL.

Quite often, the choice of language is failing to see the forest for the trees. Saving nanoseconds or cycles because you chose C++ over Python pales in comparison to milliseconds spent at network barriers reading from a cache service or database

Re: Backend of Meta Threads is built with Python 3.10

#144
post #60

Earlier quoted context omitted.

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…

Most of Facebook is built on PHP. I’m surprised they didn’t choose Laravel.

It turns out calling the app "Threads by Instagram" is not just a branding gimmick. The Instagram backend was always Python/Django since before the acquisition.

Re: Backend of Meta Threads is built with Python 3.10

#146

Ironic that a post about Threads backend is hosted on twitter.

If you want real irony here, it's this: powering an app called Threads with Python that's got a global interpreter lock which makes threading hard. Get it? Threads, threading...? OK, I'll see myself out.

Now that is Meta!

Re: Backend of Meta Threads is built with Python 3.10

#147

For the “Python isn’t fast enough for production backend” crowd from the same company that brought you the largest social network built on PHP + MySQL.

Earlyish facebook engineer here. Early days FB php was nothing like the php used to template websites. All kinds of specialized libraries to enable a much more sophisticated programming style. Think functional helpers, and asynchronous execution on thousands of cores, spanning trees across data centers using ssh etc. As a tangent a lot of the good stuff I used was written by Evan Priestley, who also did Phabricator and lots of other strong systems.

Re: Backend of Meta Threads is built with Python 3.10

#148
post #54

Earlier quoted context omitted.

A fair point that it's stupid to implement a mostly plain text publishing site that doesn't support linking to any of the text published there. Edit: Someone kindly pointed out that you can see the content in the browser without an account from following a direct link. (You just can't have the app installed or it will open that and drop you on the login page.) This makes me a lot happier with the product!

You can link to it, what are you talking about? An example fetched from a verge article -> https://www.threads.net/t/CuVaOg1PgU4/

That link doesn't work for me - just get a splash page

Re: Backend of Meta Threads is built with Python 3.10

#149

For the “Python isn’t fast enough for production backend” crowd from the same company that brought you the largest social network built on PHP + MySQL.

It may not be because of Python, but Thread is definitely not ready for the current load. Few hours ago no one could access to Zuck's profile page, and he had to take it to private to hide the issue.

Tweets load very slowly on my end. So slow I thought there was a js error on my end, you know, like when you get a never ending spinner animation because there was an unhandled exception thrown.

Re: Backend of Meta Threads is built with Python 3.10

#150
post #113

Earlier quoted context omitted.

How is Django now? I’m a long time python dev (data eng space) but new-ish to web dev. I started a Flask project 2 years ago and found it to be pretty full of footguns, mixed messaging on best practices for scalable apps, and the ecosystem feels overbloated with vapor ware extensions. Is this just a Flask problem, or does Django have the same issues?

I use django professionally and for personal projects. I started with Flask and then did FastAPI for a while, but I like django the most since it's the most mature. The ORM and django admin are killer features out of the box that the other frameworks don't have. I will say though that FastAPI is really nice, especially if you need async support. However, I have found that using django ninja [1] adds a lot of nice to…

+1 for django ninja. I built a little side project with it a few months back and was super impressed by how easy it was to get up and running. I didn’t want to leave the Django ORM behind so was very pleased to find this project.
Post reply on HN