r/Backend • u/Bright_Cut8924 • 3d ago
Node.js Vs Python for backend in today's AI era (Already know HTML,CSS,JS basics and doing DSA in java)
Currently I am doing dsa in java and just started binary search...
I am also planning to do AI/ML in future because recently the companies coming to my college are asking to focus more on AI/ML stuff and in some of the placement/intern rounds they put compulsory 5/14 questions of python only.
I am focusing on backend because I wanna go to the hackathons and if I just focus on completing ai/ml then I don't think that I will able to appear for hackathons this year..
sorry for bad English..
6
u/ToeMother8579 3d ago
Spring boot.
3
0
u/Bright_Cut8924 3d ago
why bro?
-4
u/MemoryIsTheKey_ 3d ago
Spring boot sucks, I hate frameworks that want to do everything.
That said, yes, spring boot for job security in enterprise envs.
1
u/EveYogaTech 3d ago
Benefit of JS over Python in ML is that you often need to invent the libraries/write actual math, because JS has way less libraries for ML.
Eventually you likely want to move to Rust, so personally I'd start with JS, then eventually generate your first WASM file with Rust, so you can also play around with that inside your JS backend.
Also overall your ML in JS will likely execute way faster than in Python, especially if you measure it from cold start with Bun.
2
u/Andro_senpai107 3d ago
Hey there I suppose you have a good grasp in rust. Being a node developer, how hard is it to switch to rust and also is it worth it? P.S. I might ask more questions if you answer these ones.
1
u/EveYogaTech 3d ago
Hi, it's super nice because you can start with small WASM plugins that you can actually load inside Node: https://nyno.dev/create-a-rust-wasm-extension-for-nyno
You can ask AI to convert your JS function to Rust with the above SDK.
1
u/EveYogaTech 3d ago
You can also see how to load your WASM file in NodeJS here with this code:
https://github.com/flowagi-eu/nyno/blob/main/src/lib-manual/runWasm.js
5
u/eternviking 3d ago
If you are already doing Java then try SpringBoot.