MEAN or LAMP: Agiliway CTO votes for MEAN

MEAN or LAMP: Agiliway CTO votes for MEAN

David Weinberger identified the exploding web content as a collection of Small Pieces Loosely Joined in his book published in 2002. This is because of a possible misconception that web corresponds to a monolithic technology stack in spite of every website is a mixture of different libraries, languages, and web frameworks. In these latter days, the trend of shifting from the LAMP stack to MEAN is currently evidenced among developers. Although both PHP and JavaScript constitute Agiliway’s area of expertise, our CTO Bohdan Dmytryshyn is more enthusiastic about MEAN rather than LAMP. Why? The following reasons explain the idea by comparing both technologies.

Being known for decades as one of the earliest collections of open source web technologies the LAMP stack uses Linux for the operating system, Apache for the web server, MySQL for the database, and PHP (or Python) for the programming language to generate the HTML-based web pages. All the while, comparatively new MEAN stack offers thoroughly modern approach to web development using MongoDB, Express, AngularJS, and Node.js where a single JavaScript language runs on every element of an application.

From one side the traditional WordPress, Drupal, Typo3, Laravel or Magento run on PHP/MySQL are supported far and wide by the majority of hosting providers. The security and widespread support is another strong reason to deal with LAMP. Besides troubleshooting and configuration advices available on numerous forums, many developers use the LAMP environment because this is the simplest way of getting a website online.

However, the unification proposed by MEAN is getting popular rapidly, being raised by such powerful fronted framework as Angular. Using Angular on top of Node.js front-end developers are able to trace all the way down the stack without learning the other programming languages. The approach is mostly inherent to new developments and modern start-ups.

MEAN vs LAMP

Also MEAN is significantly faster and easier to scale. The MEAN stack has no restrictions regarding the operating systems while LAMP locks an OS on Linux. Therefore, switching the base platform to JavaScript (Node.js) MEAN offers OS independence. Node.js runs equally well on Windows, UNIX, and Linux.

The move from such incident to LAMP traditional database as MySQL to document-oriented persistence store such as MongoDB eliminate redundant/unnecessary object attributes making the database much faster for data retrieval. Being a non-relational database MongoDB provides an easier method of scaling with higher traffic.

Another fundamental difference between LAMP and MEAN is a move from a page-centric view of an application to one that is component-oriented, asynchronous in nature and event-driven. In consequence of AngularJS the MEAN stack puts an emphasis on the client-side views. Besides, AngularJS runs well on desktops and laptops, smartphones and tablets that does not make MEAN mobile-centric however.

Striking the balance of both above-mentioned web development technologies such peculiar features as a single JavaScript language, flexibility in deployment platform, and increased speed in data retrieval make the MEAN stack promising and attractive for upcoming developments. Nevertheless, while actively developing MEAN competency Agiliway is not going to refuse LAMP appreciating its out-of-the-box usability and the most secure infrastructure.