Modification date: September 20, 2020

MEAN vs. LAMP: Right Stack for Your Software

logo
Syberry

MEAN vs. LAMP: Choosing the Right Stack for Your Software

When we’re working with clients to create the plans and roadmaps that will guide us in converting their software visions into custom-built realities, one of the first decisions we make is which technologies will best fit the clients’ particular needs.

In early years of web applications development, a technology stack called LAMP was dominant in the field. But in recent years, evolving technologies have given rise to for dominance in the development field, businesses are asking which stack to use to reduce risks as much as possible in their systems development.

At Syberry, we love thinking through these questions with our clients, and we’re always happy to advise on the right technology stacks for your projects. But for now, let’s break down some of the key decision-making points between LAMP and MEAN in an effort to illustrate the pros and cons of each and help you start to make the decision for yourself.

First Things First: What Are MEAN and LAMP?

Conveniently enough, the stack names are acronyms that stand for the technologies used in each.

LAMP breaks down like this:

  • Linux: a dominant family of operating systems used for hosting web applications
  • Apache: a popular, configurable web server
  • MySQL: a relational database for data storage
  • PHP: a general-purpose programming language designed to create dynamic, interactive webpages

And MEAN contains its own set of technologies:

  • Mongo: a non-relational (NoSQL), document-oriented database
  • Express: a collection of best practices for building typical web application
  • Angular: a client-side application framework for building rich, single-page applications
  • NodeJS: a run-time environment allowing developers to write server-side business-logic for the system in Javascript

There is no one-to-one technology mapping between the two stacks, and both have their advantages and disadvantages depending on what a developer aims to accomplish. Let’s take a look at a few of the key distinctions.

Javascript Makes MEAN an Attractive Option

One of the most important functional differences between MEAN and LAMP is the underlying programming language. MEAN is Javascript driven, while LAMP is grounded in PHP. So what does this mean, practically speaking?

The big advantage of the MEAN stack is the usage of Javascript both in the browser and on the server. On the development end, this allows the team to be truly cross-functional, which makes it much easier to balance the workload between front- and backend engineers. Additionally, the crossfunctionality makes troubleshooting easier, as a single person can access and inspect the entire application.

On the user side, the recent extensive development of Javascript as both a technology and a tools ecosystem has made it a popular choice for building rich, interactive client-side applications.

But PHP Has its Benefits

PHP is an older programming language, and many Javascript fans perceive it as outdated or missing various features that have become standard to programming languages in recent years. However, as the standards evolve, different programming languages have converged more and more in terms of the features they support. PHP is no exception here, and all of the major advancements and functionalities are available in newer versions of the language.

While the feature sets between PHP and Javascript aren’t equal, they are close enough from an engineering standpoint that you may not see a lot of difference development from one to the other — especially at scale. What PHP lacks in modernity, it makes up for in maturity, with availability of rich frameworks such as Symfony with long-term support.

An Argument for LAMP

While the Javascript functionalities of the MEAN stack are useful for highly interactive, feature-rich web applications, the PHP-driven LAMP stack often makes more sense for classic, business-oriented systems.

In these systems, while the user experience and interface are important, the focal points are the functionality and logic of the system that supports the business. In our experience, it’s much more efficient and economically sound to build the classic way, using templates to build static HTML-based user interfaces. For these, the templating tools available in all popular PHP frameworks are sufficient, and there’s no need for Angular or other client-side-oriented frameworks that are available in LAMP.

Another budgetary benefit to this approach is that a back-end engineer may be able to create a solid user interface for a classic business system, which eliminates the need to staff a team of front-end engineers.

Additionally, Javascript is usually an asynchronous language and, therefore, writing clean, efficient code is a more complex and time-consuming task. Working with Javascript, therefore, raises the bar for quality development and engineering expertise, making hiring much more difficult.

Especially if you’re using the MEAN stack, it’s important to hire developers who understand these concepts and who recognize that it will be more difficult to scale the team to speed development.

The Devil Is in the Database

Another key difference between the two stacks is the type of database they use. MySQL, used in the LAMP stack, is a classic example of a relational database built around the concept of relations (tables) and records.

Mongo, on the other hand, the database used in MEAN is document-oriented, which means that each unit of data is stored as its own document, and different documents in the same collection may have different — or even nested — attributes.

It is important to understand that there are no inherent pros or cons to either approach, and the proper choice is dependent on the nature of the data the system stores and how users will need to work with that data.

If your system requires strong schema and a lot of join operations over multiple data sets — such as you see in reporting — a relational database is a better choice. This is usually the case with an internal business system. But if your data has weak schema and is centered around key objects such as user profiles, the NoSQL solution found in the MEAN stack might be better. Additionally, Mongo’s scalability potential is higher than MySQL’s, so if you expect your application to grow in its data usage load, Mongo will be the better choice. (Though it should be noted that, if you’re working with a sufficiently large system, you may need to consider using a combination of both types of database.)

Ultimately, Scaling Isn’t about Stack

Though the stack you use may play a factor, if you take a bird’s-eye view to the issue of scalability, you’ll see that the key factor isn’t the specific set of technologies you choose (though you’ll likely run into trouble if you choose haphazardly). In fact, with tools like Docker that allow you to move specific components and technologies into isolated units, you’re no longer even restricted to a single stack. What matters for scalability is actually your approach to the architectural design of the system.

If you plan for the system load to grow rapidly, you must plan for that from the start by building in horizontal scalability — in other words, giving yourself the option of adjusting for the workload by adding more computational power in the form of commodity server nodes (as opposed to scaling vertically by buying a more powerful server). Building for horizontal scale means being very intentional about how you organize primary components like state, business logic, and presentation layers.

Conclusion

As is the case with so many strategic questions about both software and business development, there is no one right answer as to which technology stack is superior. Each company must work with its development team to make the strongest choice for the individual situation.

The most important rule of thumb we can offer is that, the smaller the application and the scale of development team, the more specific stack choice matters. The opposite end of the continuum — large-scale projects — is all about building proper architecture rather than nailing a programming language or database choice the first time out.

Publication date: June 17, 2019

Explore More Resources:

What our customers say about us

Syberry has provided satisfactory services thus far, and they are very responsive to any issues that arise. The team also possesses strong communication skills. They delivered a functional piece of software at a reasonable price, and they've managed the project very well.

Richard Harkness

CEO, ADEPT Driver

Elk Grove, CA

How we help ADEPT Driver Company

We developed a web-based driving simulator for teens and another for adults. The products run on Chromebooks, and the team added features that enable them to measure a driver's ability to avoid a crash.

Technologies used

I don't think you could find a better company to manage and build your project. I get so many compliments on my application, and it has a lot of unique and complex development.

Todd Surber

CEO, PIXRIT

Charleston, South Carolina

How we help PIXRIT Company

A photographer approached us to build a web-based software platform that combines the fastest social media manager with state-of-the-art galleries and provides the ultimate tool for photographers to upload, store, back up, and share their photos and manage their SMM activities.

Technologies used

The user-friendly software hasn’t encountered any issues or bugs in more than three years. It’s high quality has helped grow the clientele. Straightforward and consistent in communication, Syberry met every deadline and ensured a hassle-free development process.

Vince Hughes

Owner, Steel Estimating Solutions

Knoxville, TN

How we help Steel Estimating Solutions Company

Our client was inspired to create a product that helps steel erection companies perform faster, more efficient estimations and bids. We developed original proprietary software from the initial concept.

Technologies used

The new platform received positive feedback and performs better than its predecessor. Syberry communicated the project’s progress to their partners well by breaking down their steps and utilizing a management system. Most importantly, they delivered world-class service for a cost-efficient price.

Bill Fahy

Owner, FDI Creative Services

Houston, TX

How we help FDI Creative Services Company

Following strict regulations and requirements, we used AWS to develop a custom e-commerce web app that includes shipping integration. Since the site’s launch, the team has continued to make updates.

Technologies used

The application was delivered on time and within budget. Syberry explained their process thoroughly and accommodated to scope changes effortlessly. Their stellar project management, highly responsive communication, and proactive attitude set them apart.

Ricardo Casas

CEO, Fahrenheit Marketing

Austin, TX

How we help Fahrenheit Marketing Company

We developed a large, complex .NET application with various third-party integrations. The team built the software from scratch based on existing wireframes.

Technologies used

The end solution exceeded the client’s expectations. Syberry delivered high-quality products on time and at outstanding value. They provided frequent updates and repeatedly sought feedback at each stage. Customers can expect a highly experienced team that easily translates concepts into solutions.

Rudy Milkovic

Executive Director, Velicom

Austin, TX

How we help Velicom Company

Our team built video streaming software as a web and desktop app for a third-party client. We completed end-to-end development—from scoping to feedback cycles to QA—using PHP and Wowza Streaming Engine.

Technologies used

Syberry has successfully improved the frontend performance of the platform and continues to make thoughtful suggestions for enhancements. They have proven to be communicative and reliable, mitigating the common concerns of outsourced teams. Syberry remains mindful of business goals and client needs.

Cory Kowal

VP of Products, THG Energy Solutions

Tulsa, OK

How we help THG Energy Solutions Company

Taking over for another vendor, we served as the ongoing software engineering partner for an energy company’s cloud-based platform. The company provided scoping, development, testing, and deployment services.

Technologies used

The added team members sufficiently fulfilled the needs of the project. The product was successfully launched and has received positive feedback. Syberry continues to be a supportive partner in development. They provide an impressive team and their expertise fosters a smooth collaboration.

Chris Cox

CTO, MyMelo

Louisville, Kentucky

How we help MyMelo Company

We provided staff augmentation resources for a development project. The team contributed engineers to follow an established roadmap to perform updates and add features.

Technologies used

Syberry delivered a solid website that has become a database of close to 40 organizations. The team worked quickly and efficiently to get the website up and running, and they continue to invest their time into the project. Additionally, they have been a communicative partner.

David Snyder

Product Director, Covid Resource Network

West Orange, New Jersey

How we help Covid Resource Network Company

The company developed a website that serves as a database where organizations can find and donate to other organizations. Currently, the team is working on enhancing the website and fixing bugs.

Technologies used

When the system is up and running, it will save time for the internal team. Syberry was a patient partner, and they performed well throughout the collaboration.

Joyce Cubio

VP of Operations, Ernie's Mobile Home Transport

Yuba, California

How we help Ernie's Mobile Home Transport Company

The team built an information hub for a mobile home transport and permit service. After discussing the existing system and processes, we delivered a new structure for forms and data.

Technologies used

All deliverables have exceeded expectations and function properly once launched. The Syberry team is skilled in juggling multiple projects, and provide strong expertise in software development. Their dedication to the project has fostered continual success in the engagement.

John Fox

Executive VP, Fox Business Automation Solutions

Lakeland, Florida

How we help Fox Business Automation Solutions Company

Brought on as a third party, we supplied ongoing development services. The team work on multiple projects and deliver according to predetermined design specifications.

Technologies used

Contact us to learn more about how Syberry can help your business achieve its every goal!

0 / 2500

Sign a mutual NDA NDA preview before a conversation.

When to sign an NDA?

A non-disclosure agreement (NDA) is a legal contract between parties, such as the software developer (or a software development firm) and yourself, outlining information to be shared and requiring that information be kept confidential.
Send
Submit loading...

Was this page helpful?