38
NodeJS vs Go (lemmy.world)
submitted 1 year ago* (last edited 1 year ago) by Asudox@lemmy.world to c/programming@programming.dev

I want to learn another programming language now that I've been using Python for over 2 years now. I am kind of leaning on learning JS so that I can use it for the backend and also for the frontend. But the syntax is kind of weird. I heard Go is pretty good for the backend and also is compiled. What do y'all say? I also welcome other language recommendations.

you are viewing a single comment's thread
view the rest of the comments
[-] MotoAsh@lemmy.world 22 points 1 year ago* (last edited 1 year ago)

JS will be far more versatile if you learn it well. It's in so many dang things.

The biggest annoyances about JS are some things that exist in Python, so you'll already be familiar with loosely typed systems and mutatable objects (dictionaries/hashes or what ever Python calls 'em).

Other than that, it's mostly that there are a million ways to get the same things done, even something like, "define a class with static and instance-bound functions and properties". Older JS techniques only use scope and the prototype and look like a gross hack. Modern JS has actual class syntax.

It all stems from the constant enhancement of the language. Many, many nice features like proper class syntax and first class modules (no more third party module syntax) came in ES2015, and a sadly small number of front end devs to this day really know them well.

Many web dev tutorials use older style techniques just because they've been around ages. If you learn how the new features are mostly syntax sugar on old styles, you'll be a JS pro in no time.

[-] clif@lemmy.world 9 points 1 year ago* (last edited 1 year ago)

This is a great answer. Bumping it as someone who got forced to move into Node/JS around 8 years ago and came to love it (after the ES2015 changes :). It's primarily what I work in and I teach community classes on it these days.

I've been dabbling in Go lately for lower level server side stuff and, while I don't dislike it, it's a big shift in thinking. There are a lot of niceties to the Go ecosystem.

[-] Asudox@lemmy.world 2 points 1 year ago

I see. Do you perhaps have a tutorial that does use those new features?

[-] Bartlebee@artemis.camp 1 points 1 year ago

Commenting to save the answer as well

[-] Asudox@lemmy.world 5 points 1 year ago* (last edited 1 year ago)

There's actually a save button for those kinds of things btw.

this post was submitted on 26 Aug 2023
38 points (97.5% liked)

Programming

17314 readers
230 users here now

Welcome to the main community in programming.dev! Feel free to post anything relating to programming here!

Cross posting is strongly encouraged in the instance. If you feel your post or another person's post makes sense in another community cross post into it.

Hope you enjoy the instance!

Rules

Rules

  • Follow the programming.dev instance rules
  • Keep content related to programming in some way
  • If you're posting long videos try to add in some form of tldr for those who don't want to watch videos

Wormhole

Follow the wormhole through a path of communities !webdev@programming.dev



founded 1 year ago
MODERATORS