Thursday, August 17, 2017

React.js is for Dumb People

There is no redeeming point to this blog post, so if you're greatly offended by the title, move on please and make America great again by respecting people's freedoms.

Yes, React.js is for Dumb People, literally!

Think of the selling points:
- Reliable for being supported by a major company: Facebook
- High performance
- Everything (content, style, behavior) is mixed into the same file, making it simpler to understand
- Components

Any web developer worth his salt knows how to put a small JavaScript component using nothing but pure JavaScript + a library like jQuery, and it's FAST ENOUGH for 90% of the businesses out there as well as super reliable, especially when covered by Jasmine tests or the like, and finally with so little code pumped out, is super maintainable too.

Before I revisit React.js's selling points, notice who its main adopting audience is: Super inexperienced developers worried about not understanding JavaScript and thus need a guarantee of reliability, performance, and a dumbproof way for understanding content, style, and behavior!

In fact, I'd say React.js's success mainly comes from the rise of programming to a degree that everyone and their mother got hired at software development companies, even without degrees or sufficient training.

"- Reliable for being supported by a major company: Facebook"

Yes, an inexperienced developer who wants to lie to a customer to give them confidence in his skills will want to heavily sit on a technology backed by a major company like Facebook.

Naturally, an experienced smart developer can piece together code relying on good open-source libraries by judging them from experience and good software engineering skills. Such a smart developer has already delivered software to thousands if not millions of customers and as such has no worry about requiring an open-source library to have the backing of a large company like Facebook.

"- High performance"

An inexperienced dumb developer doesn't even realize that most business apps don't need much performance since they don't have a highly updating user-interface, so they waste their time over-engineering their solution by using React.js under the guise of simplicity when an experienced developer already wrote many fast-enough simpler components without React.js and maintained them better.

"- Everything (content, style, behavior) is mixed into the same file, making it simpler to understand"

Hahaha. This is like saying I don't know how to ride a bike (maintain content, style and behavior separately), so let's add a third wheel and pretend to be riding a bike. 'Nuff Said!

"- Components"

I already touched on that under the performance section, but let's just say this is the "EXCITING" part of React.js for many new comers who've never wrote a component on their own before due to having very little formal training in software engineering or even Agile software development methods like eXtreme Programming.

Yes, people have been writing components for decades. Yes, GOOD developers do that only. Yes, it takes experience to write good components. Check out TinyMCE as a good example among many JS libraries that are componentized.

Let's use a bit of intelligence and agility in writing our JavaScript code, shall we!

No comments: