So, I wanted to continue the JavaScript “debate” but felt we had stepped all over another persons post. Which is really not what I intended.
Anyhow . . . As a programmer over the years I had almost always shunned JavaScript. Viewing it as “not even a real language”, or some kind of toy language. That is, until the last few years.
Syntactically I lean well towards C. Having been using it for so many years, I suppose I have gotten used to it. So when I first started with JavaScript naturally I used it as I would C. Which obviously is WRONG. Aside from similar syntax, JavaScript and C have nothing in common as programming languages. When I first heard about Nodejs I shrugged it off as the latest greatest web dev fad. But after a few months I read about another web technology which at first ( form memory and I could be remembering incorrectly ) relied on Nodejs. This new technology was AngularJS, and I was smitten.
So again, naturally I started learning more about JavaScript, and Nodejs. Finding myself once again smitten by another bit of “web technology”. Except “web technology” does not encompass all that Nodejs is. Anyway enough of the rambling… .
I see a lot of good in Nodejs, especially for the embedded field. It is my own personal feeling that future web appliance technology will move towards Nodejs. The problem here is that it is based on a terrible language, but also a language that has a few very useful, and dare I say awesome features. Object oriented, event driven, and virtually typeless. Typeless however I have mixed feelings on, since I’ve used many strongly typed languages over the years.
Javascript also has a huge user base, which is yet another mixed blessing. With the bad having to do with what Don from another post touched on. First, there are a lot of inexperienced developers in the JavaScript field. On top of this, and I really do not know how to describe it other than this way: Developers of JavaScript are not “real programmers”, and as such they toss around terms such as “API” which make no sense for the context. And then there is the coding style which is horrible. Function chaining has to be the worst ideas on the planet. Not only would it be much harder to debug such code, but it lends towards making otherwise readable code → unreadable.
My point here is that YES Nodejs is useful, and very cool technology wise. Which comes with a very large base class library in the form of modules. This is great if you need something that is very RAD. The bad part however is that most or all of this code was written by web developers who need a clue as to proper and effective coding style. Yes, we all know, or all of us should know that there are certain things needing to be done for Javascript to be the most performant. Which is why there are tools such as “JavaScript compilers” <— Yet another term that makes me laugh . . .
Anyway, all comments welcome, add your two cents.