Why A MERN Stack For Your Business
There are three main reasons why I’m settling down on MERN to build my web apps: it’s performant, it gives me freedom and flexibility to do whatever I want, and it allows me to use cutting-edge technology to create better user experiences.
First, Javascript is way more performant than traditional web alternatives in terms of energy consumption and execution speed: 6 times faster than PHP, and 12 times faster than Ruby or Python.
Go and Java have twice the speed with only a third of the electric consumption, but it’s an absolute hell to create isomorphic (server-side rendered HTML and hydrated with Javascript code on the client) applications with, so you end up duplicating your code across different languages and almost doubling your development time. Javascript is still mandatory in 2020, so doing everything with Javascript and using a front-end framework like React, Vue, or Angular as a backend templating engine is easier to learn, setup, and maintain. You can use the same libraries on both sides, and everything will be far easier to put in a container. Even if you use an adapter to write web components from your Django/Laravel/Rails backend, you’ll still need NodeJS to bundle Javascript code.
MongoDB, thanks to its flexibility, is perfect for a app whose data schema is bound to change fast. Data integrity is great, but it’s always preferable for a new-born business to be able to move fast, even if it implies breaking things.
Last but not least, you can do everything with MERN: SaaS, JAMstack prerendered websites, and even machine learning. All the best tools have NodeJS software development kits, so you can confidently write software without fearing it will go unmaintained in a few years. NodeJS’s package manager, npm, is by far the most active repository of libraries accross every programming language: 923 new libraries are created every day on average using npm, which is 3 times more than PyPi (Python), Packagist (PHP), and Rubygems (Ruby) combined.
If you’re serious about becoming a fullstack developer, I would recommend MERN without hesitation.