|
I agree with the sentiment but I think the interpretation is off. I don't think Javascript is a bad language. It does what it does and is good enough. In my opinion if you look at where Java is right now, that's where javascript is heading towards--it's madness and an epitome of extreme bureaucracy--and it's not because Javascript is a bad language, you can't really pinpoint what exactly caused this because there are so many factors. Node.js is not even the core reason. It's actually HTML5. HTML5 allowed for all kinds of new features such as localstorage. There used to be times when only way of storing things locally was through cookies which was limited to 4KB. With that spec, all the modern frontend web technology wouldn't have been possible. This includes really anything that gained traction in recent years such as Backbone.js, React.js, etc. Anyway my point is, it really sucks where this is all headed. Especially looking at javascript itself evolving to become needlessly complex. What we're seeing is just tip of the iceberg, i presume it will get much worse once ES6 actually becomes the functioning standard across all browsers. People should focus on building meaningful stuff, nowadays what I see is bunch of people boasting how they're a great "frontend developer" by knowing some new build tool or frontend js framework or css framework, which probably will become obsolete in a year or so (Hello grunt, hello backbone). Just three years ago to build a website all I needed was js, css, html, and maybe some jQuery. Nowadays I need to write coffeescript or es2016(why do they even need to name it that way I don't know), which compiles to JS, write Sass or Less that compiles to CSS, use handlebars for templating which compiles to html, and package them altogether using Grunt, Gulp, or Webpack. When I make a line change, I used to be able to immediately refresh the page, now I need to wait until grunt autodetects the file change, compiles each coffeescript, compiles each template, compiles each stylesheet, and finally reload. |
alert((![]+[])[+[]]+(![]+[])[+!+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]);
which is should be a dead giveaway that something is terribly wrong here. It was never designed to have a standard library for instance. The author alludes to this fact as being a problem for nodejs that go/ruby doesn't have. Whenever I write a lot of front end code and then have to transition to writing backend code I realize how much my brain has melted trying to think in javascript.