Hacker News new | past | comments | ask | show | jobs | submit login

I've been working with Django since version 0.96. Still a lot of love for it, but for the last several years it's not my default for new projects though. The Django codebase is far from what can be called modern. As an experiment, it's easy to open up some Django core modules side by side with other frameworks that were mentioned (FastAPI for one) and to see that the code looks so different to the point where a programmer with not a lot of experience with Python might think those are different languages altogether.

Much of Django's core has not changed in a very long time, so there would be no type annotations and other modern Python constructs.

FastAPI, pydantic, uvicorn, httpx would be in my list to answer OPs question.




> the code looks so different to the point where a programmer with not a lot of experience with Python might think those are different languages altogether

Some of us actually prefer the "old" style of Python. Type annotations are too "Java-ish" for me, I hate source code that declares a function with signature takes more than half of the screen space, I hate making http requests with three layers of nested `async with`. If you are into static typing or RAII why not choose a real deal language instead.




Consider applying for YC's Spring batch! Applications are open till Feb 11.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: