Top
Best
New

Posted by yakkomajuri 1 day ago

Why we migrated from Python to Node.js(blog.yakkomajuri.com)
218 points | 256 commentspage 5
djdjsjejb 1 day ago|
nodejs excels for me on flow control

theres effectts if you need app level control

theres caolan async if you need series and parallel controls

theres rxjs if you need observables

on web frameworks hono seems nice too. if you need performance, theres uwebsockets.js which beats all other web frameworks in http and websocket benchmarks.

for typesafety aside from typescript, theres ark, zod, valibot, etc.

sunkencity 1 day ago||
imho it would make more sense to rewrite to golang with a stronger production ready standard library.
pjmlp 1 day ago||
If scale really mattered they should have rewriten it in Go, Java, C#, Rust....

Or if feeling fancy, Erlang, Elixir.

9rx 9 hours ago||
They were looking to scale up their marketing reach. Would Go, Java, C#, or Rust have had the same effect?

"Migrated from Python to Rust? That makes sense, I guess. Next".

"Migrated from Python to Javascript? What? That's crazy! I'd better read this."

ZhiqiangWang 1 day ago||
Do not rewrite in one shot, make small micro services in nodes and migrate from Django step by step.
ecshafer 1 day ago||
Why can Instagram scale on Python and Django but you can't?
simoncoulton 1 day ago||
Seems like there was solid ROI attached to this initiative…
connectsnk 1 day ago||
Does this problem exist with fastapi as well?
andrewstuart 1 day ago||
Python async doesn’t suck. Python async is awesome.

But there’s giant red flags up if you’re trying to do async with Django, which is built as synchronous code.

fakedang 1 day ago||
I'm actually building an app on the side and went the other way around on this. Migrating from Typescript back to Python. Granted, my gripes were more with NextJS rather than Node or Typescript.

Using Django was so intuitive although the nomenclature could do a bit better. But what took me days trying to battle it out on NextJS was literally done in an hour with Django (admin management on the backend). While Django still looks and feels a bit antiquated, at least it worked! Meanwhile I lost the entirety of the past weekend (or rather quite a bit of it), trying to fight my code and clean up things in NextJS because somehow the recommended approach for most things is mixing up your frontend and backend, and a complete disregard for separation of concerns.

My new stack from now one will likely be NextJS for the frontend alone, Django for the CRUD and authentication backend, Supabase Edge functions for serverless and FastAPI if needed for intensive AI APIs. Open to suggestions, ideas and opinions though.

drnick1 1 day ago|
I week from now you will be posted you rewrote your program in C++.
More comments...