Computers are getting faster, why isn't software getting faster? - Flexiana
avatar

Khatia Tchitchinadze

Posted on 29th November 2024

Computers are getting faster, why isn’t software getting faster?

news-paper News | Software Development |

Modern processors can perform billions of calculations per second, and the amount of RAM in even the most basic devices dwarfs what we had a decade ago. Yet, despite these advancements, many users feel that software hasn’t gotten any faster. Applications still take time to load, web pages freeze, and systems can lag under heavy workloads. Why is this happening? Let’s explore the reasons.

How Much Faster Have Computers Really Gotten?

Processor Speed: The performance of processors (CPUs) has increased exponentially. For example, Intel’s Core i9-13900K, released in 2022, is around 15% faster than its predecessor in single-threaded tasks and even faster in multi-threaded tasks.

RAM Growth: In 2013, a typical laptop might have had 4GB of RAM. Today, many devices come with 16GB or more.

Storage Speeds: Solid State Drives (SSDs) have revolutionized storage, with some NVMe SSDs offering speeds over 10x faster than traditional hard drives.

These improvements should, in theory, make everything faster. However, software often doesn’t feel like it’s benefiting from these advancements.

Okay and what are the Reasons Software Isn’t Getting Faster?

Software Complexity Has Increased Modern software does much more than older programs. Applications are now designed to handle multiple tasks, integrate with cloud services, and provide highly visual user interfaces. While this adds functionality, it also means more processing power is required.

For instance, compare a basic text editor from the 1990s to Microsoft Word today. While the older program just lets you type and save, modern tools offer live collaboration, design options, and real-time spell-checking—features that demand more resources.

Development Trade-Offs

Many software companies focus on development speed over fine-tuning. To meet deadlines, developers often use pre-built libraries and frameworks that save time but aren’t always the best-performing. For example, popular web frameworks like React or Angular make development easier but can lead to larger application sizes and higher memory use.

Statistic: A 2022 study by JetBrains found that 72% of developers use frameworks, often choosing speed over ease of implementation.

Features Over Performance Companies often focus on adding new features rather than improving performance. Users tend to notice shiny new buttons or functionalities more than slightly faster speeds. This means optimization takes a backseat.

Backward Compatibility Software often needs to run on a wide range of devices and operating systems. To ensure compatibility, developers may include extra layers of code, which can slow things down.

Example: Web browsers like Chrome or Firefox support websites built decades ago, even though modern sites require far more processing power.

The “Resource Sponge” Effect When hardware improves, developers may assume they don’t need to optimize their code as much because the new hardware can handle it. This is known as “Wirth’s Law”: software gets slower faster than hardware gets faster.

How Can We Make Software Faster?

What are your thoughts? Have you noticed software feeling slower despite your faster devices?