htmx is far far better than ReactJS
In my last job interview I was asked to solve problems in Ruby, it was nothing for me and I did it with ease, I was told I will be developing in Ruby on Rails, that was cool, that’s the framework of my choice, and still I would recommend it if you want to start and deliver your projects fast. The downside is if your project becomes large, then if you don’t have good enough programmers you will pay the price that’s a different story.
The company was a good company, fortunately my boss is not an evil one, a very rare thing to find these days, but my contribution was bad. The reason? ReactJS. I was told I would code in Ruby on Rails, but when I came in people over here called themselves full stack developers, used Ruby on Rails at the backend and React at the front end.
Why? Why, Why, Why? Why people don’t realize Ruby on Rails is a full-stack framework? Truly God only knows. Rails has given the most productive way to produce web apps yet, and people switch its front end to ultra low productive ReactJS, Angular or View. One of my hypothesis is, I am in India, here we bill clients based on head count, and the more complex you make the project, the more head counts, more bills and more profit. I can’t think of any other logical way. Or may be the project got started with speculation without bothering to look into facts about tech stacks.
Any way I was told I am a 19+ years experienced programmer and I have to be productive with this React. I should have quit, but I did not and tried to learn React, and till now, for more than a year I can say I have not learned it, I feel very uncomfortable using it. Ruby on Rails never embraced these clunky front end frameworks and evolved its own better one called HOT Wire which is 10X faster to develop than ReactJS. There is no work to convert something to JSON, and then there is no worry to convert JSON back to HTML in the front end.
For Rails purists, telling to use JavaScript is torture. The creation of JavaScript is an example how badly project could be managed and how an embarrassing software could be produced. May be if researchers are searching for proof of decline of human intelligence, JavaScript should be considered the top most proof.
ReactJS takes this dirty imperfect, embarrassing JavaScript and makes it more dirty, imperfect and embarrassing. It’s a struggle for anyone who wants to write clean code to come to terms with the messiness of React.
In one of the Clojure forums, I found htmx, and WOW! It was just like HOT Wire that is Rails default front end these days. ReactJS makes you write more and more JavaScript, htmx reduces it, it gives so much power that even a backed developer can become a front end developer, I saw htmx for a weekend and I can say I am a htmx developer. It reminded me of Ruby, I read a Ruby book, the one with two giraffes in it, I think that evening I was writing software for my mother to rank her students. That’s how productive Ruby was.
Maybe I will become better in ReactJs and the so-called full stack (I call it hell-stack), and I will be considered better developer, or maybe I won’t, but what ever I do next, I am sure I should not lay hands upon these React, Angular, Vue, and what ever that ravages human minds. Unfortunately I cannot avoid React as my pay depends on it :(. I wish my clients project started today rather than when React was in its heyday. I work with really smart people, they catch the smell of good tech soon.
My advice to all those people choosing software to make people in your company code, there is a simple solution, you start the project with tools you pick, you do the initial developer, if you are leader, then lead, don’t just sit in a chair and talk. Once you think a thing is easy enough to use, then recommend it to the team.
I have seen in my many friends companies, people just think something is better due to speculation, and they push their teams to that hell and hope that their teams stay professional. That’s not tech leadership.