Live data from Hacker News

Backend of Meta Threads is built with Python 3.10

twitter.com

111–120 of 458 posts

Re: Backend of Meta Threads is built with Python 3.10

#111
post #96

Earlier quoted context omitted.

Interesting and lovely to hear they decided to use Django. What is your source, though?

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?

Same opinion. Django is marvelous for getting stuff done.

Re: Backend of Meta Threads is built with Python 3.10

#112

Earlier quoted context omitted.

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

Laravel is not a requirement to use PHP effectively.

Oh, I know. But as a joke I chose the most well known framework.

Personally evren I prefer php over python.

Re: Backend of Meta Threads is built with Python 3.10

#113
post #96

Earlier quoted context omitted.

Interesting and lovely to hear they decided to use Django. What is your source, though?

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 haves that FastAPI has to django that makes it much more fun to use again.

[1] https://django-ninja.rest-framework.com/

Re: Backend of Meta Threads is built with Python 3.10

#114
I've been using Threads since late yesterday and it's been very slow... sometimes it wouldn't even load content when you browse specific profiles (especially the active ones with tens of thousands of followers). So I am not surprised the backend is in Python :)

Re: Backend of Meta Threads is built with Python 3.10

#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?

Re: Backend of Meta Threads is built with Python 3.10

#117

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.

Gotten burned by that. Have a python utility that calls something that's very CPU intensive (GDAL) and I literally have to wrap this python process in java for real concurrency. Not a python expert by any means but I'd love to know what other people do when this happens. I'm assuming it's something revolving around containers and messaging (blech)...

Re: Backend of Meta Threads is built with Python 3.10

#119

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.

Re: Backend of Meta Threads is built with Python 3.10

#120
post #96

Earlier quoted context omitted.

Interesting and lovely to hear they decided to use Django. What is your source, though?

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?

Having used Node/express, Rails, Flask, and Django extensively, I have been very impressed with Django. The framework itself is good, but the superpowers come from the ORM and DRF, and a few other great plugins. The stuff you can do with the ORM and DRF is nothing short of incredible. Now, you could argue that the framework shouldn't be tightly coupled to the ORM, and sqlalchemy does provide some stiff competition as an example of that, but in my experience Django ORM edges out sqlalchemy in terms of usability.

There are some footguns around N+1 queries, but they are general to all database interfaces and pretty easy to avoid IMO.

Post reply on HN