Schichtdiagramm eines Software-Stacks: von unten nach oben Hardware, Betriebssystem, Datenbank und Webserver, Bibliotheken/Framework, ganz oben die Anwendung; Pfeile zeigen, dass jede Schicht nur mit ihren direkten Nachbarn über Schnittstellen kommuniziert.

Software Stack

A software stack is the entirety of programs that build on top of one another and work together within a technical system – from controlling the hardware to the interface the user sees. The term often comes up when companies explain which building blocks a product is made of.

Hardly any digital product consists of a single program. Usually several programs work together, and each has a clearly defined task. One manages the data, one performs calculations, one displays the result on the screen. These programs are arranged like floors of a building: each floor uses the one below it and provides its services to the one above it. This exact tower of collaborating programs is called a software stack. The English word “stack” means a pile.

Why the choice of stack determines cost and speed

Anyone building a product has to decide on a stack. This decision has an effect for years to come. Because the floors are coordinated with one another, and a single one of them can only be replaced later with great effort. A team that wants to swap out a database – that is, a program for the orderly storage of data – for another often spends months rewriting code for it.

That is why companies and investors talk about stacks the way they talk about factory equipment. A stack determines how quickly new features are created and how much operation costs per month. It also determines which specialists you need to hire. For a widely used stack there are many developers, for an exotic one there are hardly any.

In the AI industry this has particular edge. Nvidia's market value is not based solely on fast chips, but also on the software layered above them. Almost all AI programs depend on this foundation. Competitors have decent chips, but they lack an equally mature stack. Whoever controls a layer that everyone else depends on holds a strong position.

The floors from hardware to screen

At the bottom lies the hardware, meaning the devices themselves. Directly above sits the operating system, such as Windows or Linux. It distributes computing time and memory to all programs. Above that come building blocks for individual tasks: a database, a web server that delivers pages, and libraries with ready-made functions. At the very top lies the actual application.

The trick is that each floor hides the one below it. The application doesn’t need to know how a hard drive writes data. It tells the database “save this,” and the database takes care of the rest. Experts call such a clearly defined point of contact between two floors an interface. As long as the interface stays the same, you can rebuild the inside of a floor without the neighbors noticing.

An AI stack follows the same pattern. At the bottom the graphics chips, above them a programming layer that controls these chips. Above that a framework like PyTorch, used to build and train models. Then the model itself, and on top the application, for example a chatbot. If one floor fails or is slow, everything above it suffers.

When news reports cover tech stacks

Job postings almost always mention the stack. Phrases like “our stack: Python, PostgreSQL, React” describe which tools are used there. Ready-made combinations have names too. “LAMP” stood for years for Linux, Apache, MySQL, and PHP – a standard package for websites.

In business news it is usually about power. When a corporation says it wants to “own the whole stack,” it means: its own chips, its own data centers, its own models, its own apps. Apple and Google have been pursuing this for years. The advantage is control, the disadvantage is enormous costs and the risk of being stuck with one’s own bad decision.

A common misconception is that a stack is something purely technical. In practice it is also a dependency. Anyone who builds their stack on the services of a single provider can find it hard to switch later. Experts then speak of a lock-in effect. That is exactly why stacks are discussed not only in development teams, but also in boardrooms.

Subscribe free. Unsubscribe the second it sucks.

High-signal news across AI, business, UX, and tech. Every morning.