Annotated: The JavaScript phenomenon is a mass psychosis

A reply to today's The JavaScript phenomenon is a mass psychosis... Let's start from the top.

An address from Mr.President of some company:

I recently received this kind message on LinkedIn from the president of a Canadian cybercrime technology company
This should have nothing to do with anything. Anyone can be a president of anything. It's a fallacy to think because some president has sent you a message about JavaScript that what you say is suddenly validated. Especially when said president didn't use JavaScript at all, but merely sold product:
I ran a software business for a couple of years. It got bought and right now Im developing the very product I used to sell.
And then goes on to say:
My former employees put AngularJs and Node.js in there. I remember my conversation 3 years ago with my best engineer : he said that javascript was taking over everything. I thought “Wow. They managed to fix that horrible language”
Hm, JavaScript was horrible for you, yet you decided to develop your new product with it? Sounds backwards to me. What makes JavaScript (today, or even the past...4-5 years) horrible anyway? There is horrible JavaScript code but that isn't the language's fault. And they said 3 years ago. Today JavaScript is essentially on-par with Python, Ruby, or any interpreted language, even better with types when using TypeScript.
The thing is, there is a mass psychosis about JS and it’s like everybody is pretending that it isn’t awful.
Well it isn't awful. Mr.President is just out of the loop.
And then, as if this wasn’t bad enough, someone had the brilliant idea of putting this thing in the backend.
...Yes, putting the most advanced interpreted language in the world in the backend is a brilliant idea. What is bad about this?? Speed? NodeJS supports FFI - no more speed issues if you can link in assembly modules.
Nodejs is costing millions per year to naive companies who are adopting it. You were wondering who they are: they are startups and small companies.
<language> is costing millions per year to <adjective> companies.
Mind you, these engineers are smart, but they’re weak against crowd thinking.
So general consensus is a bad idea now?! These engineers choose JavaScript because it offers benefits other languages didn't. Not all engineers are "smart" either.
So it got me thinking a lot about this JS situation, and the only plausible explanation is this :
Frontend has been despised by engineers because it is less scientific and more intuitive
This is embarrassing. Engineers are just people. I have never once seen frontend being despised by engineers. Ever. Physicists despise musicians because they're less scientific?? No, this is a ridiculous "plausible explanation".
also because tooling has failed us over the years
I guess all those frameworks over the years failed us then. I guess multi-billion dollar companies that created JS tools should just stop, eh? Because they aren't successful and wasting millions per year...
So designers have picked up the ball and now they want to program, the result being NodeJS
No. Server-side JavaScript predates NodeJS. Netscape's LiveWire Pro Web was created by the people who brought you Firefox, among other things. NodeJS was developed by a programmer, not a designer (I'm unaware of his interests, but he may be interested in designing too - who cares!). NodeJS is only 8 years old, and has come a long way. Apache is 22 years old and has its issues too - where's the criticism?
Designers are no engineers and vice versa, we should stick to our respective strengths.
Uhh, polymath? No way am I sticking to one strength in my life. There is so much to learn.
At my new company, everyone was pretending that JS was alright. I got tired and spoke up. Turns out, deep down they all hated JS, it was just crowd thinking. Now they all hate JS. And we’re waiting impatiently for Web Assembly.
There is always love/hate for anything. Nothing is perfect. It all depends who you ask.

 Now a message from some guy on the Internet

It confirms what I knew all along: that JavaScript programmers have been mind-fucked into thinking that JavaScript is a good programming language.
No a president giving his 2 cents does not confirm anything.
As most people well know, all programming languages have their faults. Some have more than others. However, JavaScript is especially bad. That’s why you can find so many complaints about JavaScript on the web.
Or maybe it's because there are so many people using it? Because universities, colleges, high schools, afterschool programs, and a plethora of other organizations are teaching it?
One of the most amazing and distressing things about JavaScript is that it can actually fail silently at runtime due to syntactical errors!
I actually haven't had this happen to me once, in the 5+ years I've been using JavaScript.
Another thing is “callback hell” which promises can mitigate but are otherwise not a perfect solution.
So what is, the perfect solution? Surely another, better language has implemented it, and JavaScript can steal the idea?
The most notorious of JavaScript’s faults is probably in its weak typing
To some people this is a strength - again depends who you ask. I don't think it's a strength.
ask yourself this question: What other modern programming language is so bad that a linter is most recommended for safety sake?
A compiler is a sort of linter. One of its tasks is to check all syntax is correct. So basically any modern compiled language answers this question.
But you do have options! You can use languages that transpile to JavaScript.
Yes! Yes, if you do not like JavaScript, there are a bunch of options, and even more once WebAssembly is ready. I will continue to use JavaScript/TypeScript even after its arrival.
I’ve been writing web applications for over a decade and it’s utterly shocking how little JavaScript I know!
...Doesn't this put you in a bad place then, if you are writing a big rant about it?
So it’s really your choice. It’s up to you whether you want to dive into the chaotic world of JavaScript. That’s where the money is in terms of front-end jobs. But that’s also where the unholy mess of JS web frameworks is, which leads to “framework fatigue.”
Yes. Yes. Yes. Yes. My solution to framework fatigue: learn what's the most popular at the moment and don't jump ship as soon as you see something at the top of some news site. At the moment the contender for #1 is React. That is what I'd learn now. The way we develop front-end applications will stay the same mostly because we've now adopted component-based development practices. I can jump from Angular 1.5+, Angular2/4, React, Vue with little resistance. It is fantastic.
These frameworks have the lifespan of a fruit fly!
> Angular 1 has been around for 7+ years. As long as NodeJS.

Comments

Popular Posts