#πŸ”’ Is the python best language for backend, or should I choose go/c#/.net/node.js

69 messages Β· Page 1 of 1 (latest)

sly marsh
#

What's better and why?

delicate voidBOT
#

@sly marsh

Python help channel opened

Remember to:

  • Ask your Python question, not if you can ask or if there's an expert who can help.
  • Show a code sample as text (rather than a screenshot) and the error message, if you've got one.
  • Explain what you expect to happen and what actually happens.

:warning: Do not pip install anything that isn't related to your question, especially if asked to over DMs.

void grail
#

All languages have their strengths and weaknesses. Python is really really really good at speed of development and deployment, but doesn't scale nearly as well compared to other backend languages.

#

If you are seeking employment in this area, it doesn't hurt to learn the Django framework.

rapid jewel
#

do you have experience programming or are you just learning?

sly marsh
#

And js a bit

rapid jewel
#

why are you looking to switch languages?

sly marsh
sly marsh
#

I'll tell you

rapid jewel
#

unless your programming basics are very solid, it's usually best to stick wtih whatever you're working with

sly marsh
#

"Get a good feel for Node first, set up a basic HTTP client on it."
β†’ Start with Node.js (to understand how a server works). Create a simple server/client that handles HTTP requests. This will give you a basic understanding of what a backend is.
"Then you'll get to know frameworks, then databases."
β†’ Once you've mastered bare Node.js, move on to learning:
frameworks (e.g., Express, Nest.js),
databases (PostgreSQL, MongoDB, etc.).
"And so on, following the established pattern."
β†’ That is, as you gain more understanding, it will fall into placeβ€”you'll delve deeper step by step.
"You'll already see points like Redis microservices and similar crap in framework specs."
β†’ When you start reading framework documentation, they often mention ready-made tools: Redis (for cache/queues), microservices, and so on. You'll gradually start learning them yourself, because you'll need them in your projects.
"Basically, that's it. It's better to switch from Node to Go or .NET."
β†’ Node is a good start to get into server-side development, but in the long term, in his opinion, it's worth switching to a more "serious" backend language (Go, C#/.NET), which offers better performance and tools.
"And yes, before you delve into the backend, understand what it does, where it runs, what it does."
β†’

rapid jewel
#

who is that from?

#

and I would suggest taht that's nto a good path to learn how to build software

#

learning how to write a bit of code is not the same as learning how to design and build software

#

just like math isn't knowing some arithmetic and a bit of calc

sly marsh
#

Like I don't try to remember the code, I understand it

rapid jewel
#

gotcha

#

well, I don't think your original question has much value, unless you have a specific project you're trying to build

sly marsh
sly marsh
rapid jewel
#

I mean that you can write backends with all of those and there's no clear "best"

void grail
#

There isn't a satisfying answer to 'what is the best programming language'

rapid jewel
#

it's highly context-dependent

#

I will say that from javascript, getting some experience with a more rigid language could be good, like C# or java

#

I would recommend java because there are far more teaching resources available for it

#

but neither is a bad choice

void grail
#

or typescript 😜

rapid jewel
#

go would satisfy that too, but it has far less materials than either

sly marsh
#

Okay guys, THANKS A LOT!

#

I'll stay in node.js I guess

rapid jewel
#

that's not a bad choice, also not a bad choice to branch out if you have programming basics down

#

like, do you know what a variable is? a function, including parameters and return value? control structures? loops? OOP?

#

scoping

sly marsh
#

Yea

#

OOP nah, idk what is it

rapid jewel
#

basically if you find an intro to proramming textbook (pretty much regardless of language), do you have a good grasp of the top-level things called out in the ToC

#

object oriented programming

sly marsh
#

Like I know definition

rapid jewel
#

gotcha, have you used classes in js?

#

actually, scratch that, you should go over OOP, and you shoul ddo that in a language you're already comfortable with, so js

sly marsh
#

Hmmm

#

Should I know lots of languages? Or focus on one?

rapid jewel
#

I would highlyl recommend that you fin dresources on the new class-based syntax in js, and not the prototype style of object creation.

#

nothing wrong with the latter way, just way, way less common in other languages

#

you should focus on one for now, the vast majority of concepts translate across languages, and as you gain knowledge and experience it becomes much easier to pick up new languages (and so there's less value in knowing more langauges already)

#

and if you do move to a new langauges, pick one with features/design choices that are different from js (python isn't so different, java or C# would be).

sly marsh
rapid jewel
#

js is pretty common the back-end too

rapid jewel
#

and even in desktop apps, as a lot of apps (including the discord app) uses the electron framework, which is more-or-less a browser disguised as a decktop app

sly marsh
rapid jewel
#

basically "make your web app look like a desktop app" is the idea

sly marsh
#

Btw, c# good for ai? Better than python?

rapid jewel
#

nope, python dominantes the llm and machine learning landscape for the moment

sly marsh
#

So only c++ can be better?

#

Than python

rapid jewel
#

depends on what you'er doing, there are c++ libraries for running inference that are quite popular

sly marsh
#

Anyway, thank you for your helping man, I appreciate it.

rapid jewel
#

sure thing!

delicate voidBOT
#
Python help channel closed for inactivity

This help channel has been closed. Feel free to create a new post in #1035199133436354600. To maximize your chances of getting a response, check out this guide on asking good questions.