Software Stacks

· by

Contents

Software stacks are projects of software which nicely work together. They are sometimes also called solution stacks. Here are some that I know are widespread.

This is an article I had for quite a while as a draft. As part of my yearly cleanup, I've published it without finishing it. It might not be finished or have other problems.
Tower of four colorful blocks for operating system, web server, database and programming language next to a smaller tower
Software stacks combine components that work well together.

LAMP

What it is good for: Simple start for creating web services.

Software:

  • Linux: Operating System
  • Apache: Web Server
  • MySQL: Database management system
  • PHP: Programming language

LNMP

What it is good for: Creating web services.

Software:

  • Linux: Operating System
  • Nginx: web server
  • MySQL / MariaDB: Database management system
  • Perl, PHP, Python: Programming language

MEAN

What it is good for: Creating web services.

Software:

  • MongoDB: Database
  • Express.js: Controller layer
  • Angular: Presentation layer
  • Node.js: Web server

ELK

What it is good for: Search, analyze and visualize data in real time.

Software:

  • Elasticsearch: search and analytics engine
  • Logstash: server‑side data processing pipeline
  • Kibana: lets users visualize data

Android

Software:

iOS

Software:

Data Science

Although I haven't heard a catchy name, many people use similar things:

  • EDA: Pandas, Jupyter notebooks and Bash (cat, jq, head, tail)
  • Model Building: sklearn
  • Images: Matplotlib and many more visualization tools
  • Cloud:
    • AWS Stuff (S3, EC2, ECR and ECS, CloudWatch, SSM, ...)
    • Azure (Microsoft)
    • GCP (Google Cloud)

And then there come a lot of specialized libraries into play, depending on what you want to do.