

Ask HN: Are JS frameworks the future of web development? - gautamnarula

The development of server side and client side Javascript frameworks has got me thinking about the future of web development. Given that there are now well established JS frameworks for the full web dev stack, will they eventually supersede the non-JS frameworks?<p>With those frameworks, you run the risk of having &quot;backend&quot; guys who only know Ruby&#x2F;Python&#x2F;Java, and &quot;frontend&quot; guys who only know JS&#x2F;HTML&#x2F;CSS. I fall into this camp--I have experience in server side development (a bit of Rails, and Django), but have virtually no JS&#x2F;frontend dev experience. It seems like this problem is mitigated somewhat by having both server side and client side frameworks in the same programming language (JS).<p>Why would someone new to web dev not want to go with the JS frameworks, since it&#x27;s easier to become a full stack engineer? As someone who is still relatively new to web programming, would it be advantageous for me to learn node.js and one of the frontend frameworks deeply? Right now I&#x27;m developing in Django since Python is my favorite programming language, but I haven&#x27;t gotten too deep into it yet.
======
CmonDev
It's better to know a couple of languages - one mainstream and one non-
mainstream. The JS developer's rates will gradually go down over the time due
to oversaturation. Additionally I struggle to see the future where complete
back-end including message queues, workflow engines, database API etc. are all
in JavaScript. You don't want a language that dynamic for those stuff.
Additionally JS as language is lacking innovation, it will be taking years for
standards committee to release new versions. This is one of the reasons LLVM
and asm.js are better ideas.

------
sahrizv
This post could well have been written by me as I am also in the same boat as
you :-)

Anyways, I have chosen to stick to Django for backend( and Ember for
frontend). My reasons mainly are the relative unsuitability and incompleteness
of Node when compared to Django. If you are onto learning stuff, and not doing
some serious (shippable) stuff, I'd say relish the beauty of JavaScript from
both ends.

~~~
gautamnarula
What made you choose Ember for frontend, versus Backbone or Angular?

~~~
sahrizv
I chose Ember mainly for its promise of supporting the creation of large,
production level apps, through its robust architecture and well thought out
library.

On the other hand, "AngularJS is a toolset for building the framework most
suited to your application development." Both Angular and Backbone would have
required me to learn other stuff for front end development, which I don't want
to do right now.

I wanted a single cohesive framework which would be capable of handling all
frontend aspects of a large app. Ember is made for that.

P.S Sorry for the late reply. I'm new to HN and didn't know old threads can be
active.

------
ds_
If you're a web developer and can only learn one language, it should
definitely be javascript. If I could only learn one frontend framework, it
would be angularjs.

~~~
hugofirth
I would second the AngularJS recommendation. As to the original question I
should think that very much depends on what you mean by "future".

Certainly in the foreseeable future Javascript provides almost the only
practical method of delivering complex front-end applications. As a result of
this, it's star has risen and plethora of great tools follow in its wake
(AngularJS, Ember, Backbone etc...).

However we obviously have no concept of what form the web may commonly take on
a larger timescale (unless you're a futurologist - but they seem to get it
wrong as a pastime). My best bet is that in the more distant future Javascript
(in whatever form it may take at the time) will be in use, but such use will
be abstracted beyond the purview of many developers.

------
illyism
You should definitely try out JavaScript. At least in the front end. Later on
you can experiment with Node and see if you like it.

