DEV Community

Nawaz Warsi
Nawaz Warsi

Posted on

As a beginner to JavaScript, which stack should I learn first MEAN/MERN ?

Discussion (28)

Collapse
ivanjeremic profile image
Ivan Jeremic

As a beginner to JavaScript none of these, build vanilla apps first.

Collapse
nawazwarsi761 profile image
Nawaz Warsi Author

Thanks @ivanjeremic ! If you don't mind, could you please suggest some examples with which vanilla apps should I begin with? :D

Collapse
zakiazfar profile image
Mohd Ahmad • Edited

visit javascript30.com/ , it provides 30 js projects in 30 lessons 1 for a day

Collapse
insidewhy profile image
insidewhy

People should stop learning and using express. It's so dated and there are many better options.

Collapse
nawazwarsi761 profile image
Nawaz Warsi Author

It would be more helpful if you could provide some options too and their source for learning. Thanks in advance. :D

Collapse
siddharthshyniben profile image
Siddharth

You could go for Fastify, or just plain http. The rest of us learnt express and got stuck in it.

Thread Thread
insidewhy profile image
insidewhy

Encourage the people making the tech decisions for your teams to make better choices and when you get the chance to choose tech, don't saddle people with inferior libraries. Express is from a time before es2015, it isn't designed or optimised for our present time.

Thread Thread
siddharthshyniben profile image
Siddharth

Just like request

Thread Thread
mastermind profile image
MasterMind

Just curious, what do you think should be used for a backend server then and why? Honestly for me, I have no problems or delusions with express. It's very easy to create apps with it and it suits me pretty well.

Thread Thread
siddharthshyniben profile image
Siddharth

It works well, but since it was built very long ago, it may not be suited for today. You may think that could be changed, but to maintain backwards compatibility they won't.

For you, since you are a beginner, it may not matter. But I still recommend using newer libraries, which may be better.

Thread Thread
mastermind profile image
MasterMind

I understand that. But what makes it not suitable for today, and what libraries should I go for and what modern problems do they solve then? That's what I was just curious about.

Thread Thread
siddharthshyniben profile image
Siddharth • Edited

Express is not that maintained. It can't even handle async/await (#4360) and you get an UnhandledPromiseRejectionWarning (note that in the future this will crash your app, and it can cause memory leaks). And much more.

As for alternatives, you could try fastify or AdonisJS

Collapse
jonrandy profile image
Jon Randy

Avoid React like the plague

Collapse
nawazwarsi761 profile image
Nawaz Warsi Author

Okay @jonrandy ! But it would be more helpful if you could give some reasons for the same. Hope you don't mind. :D

Collapse
davidevernizzi profile image
Davide Vernizzi

I disagree with the suggestion. React is very opinionated. I mean very very. And learning React will not teach you JavaScript in any way. And it requires its own tool chain. A lot of tools, and conventions. And it implies a lot of dependencies. I mean, a large lot. And it evolves rapidly.

However, it is the standard de facto and learning plain JavaScript will not teach any of the things that React requires. So I second the other suggestions, learn some plan JavaScript, and then move to MERN. And once you moved, keep your vanilla muscles warm by doing some katas every now and then.

Collapse
pieterverheyden profile image
Pieter Verheyden

First learn the basics of JavaScript. Make sure you understand and can apply the new features of ES6, higher order functions, arrays and objects, promises and async/await, and callback functions. Optionally but highly recommended, learn the basics of TypeScript. Learn by coding exercises and small projects. Then, move to a framework such as MERN. You could use freeCodeCamp (free learning resource): freecodecamp.org/

Collapse
nawazwarsi761 profile image
Nawaz Warsi Author

Thanks ! @pieterverheyden for your valuable suggestion. This one's really helpful. :D

Collapse
seanmclem profile image
Seanmclem

Vanilla first. Then MERN. Angular seems to be dropping in popularity. Just from my observation

Collapse
nawazwarsi761 profile image
Nawaz Warsi Author

Okay ! Thanks for your suggestion @seanmclem :D

Collapse
kayis profile image
K

I would focus on frontend or backend and the choose one framework.

I would recommend doing some JS basics on FreeCodeCamp, but not too much. I learned better doing practical stuff.

Collapse
nawazwarsi761 profile image
Nawaz Warsi Author

Noted! Thanks @kayis :D

Collapse
vineyrawat profile image
Viney Rawat

That's a really great question..
First you should learn basics of JavaScript.

As you are a beginner you can learn MERN stack.

Collapse
siddharthshyniben profile image
Siddharth

React has a lower learning curve, but Angular is extremely powerful. If you're okay with the curve choose Angular, else React. Also, like others said, use vanilla JS first.

Collapse
nawazwarsi761 profile image
Nawaz Warsi Author

Noted ! Thanks for your suggestion. :D

Collapse
ats1999 profile image
Rahul kumar

Learn JS

Collapse
zakiazfar profile image
Mohd Ahmad

react first as it has a low learning curve then go to node

Collapse
nawazwarsi761 profile image
Nawaz Warsi Author

Noted! Thanks @zakiazfar :D