Storage is supposed to be cheap today, so why are applications so stingy?

Is has been so for a long time: You could never have enough storage on a computer. And when you ran out of budget, you could wait a year, and the same amount of storage would cost you less. Companies would charge a premium for non-consumer storage, e.g. when you called IBM to install a new hard drive into your server, you would pay a ridiculous price at maybe five to ten times the rate you had to pay as a consumer. But you could still get the more storage for the same price one year later.

  • In the 1980s, consumers measured their storage needs for individual applications in kilobytes, and hard drives of several megabytes were sold for the equivalent of a thousand euros.
  • In the 1990s, hundreds of megabytes could be bought for hundreds of euros.
  • In the first decade of this century, people carried around USB storage devices with several hundred megabytes, and measured the size of their hard drives in hundreds of gigabytes. And they did not have to be rich to do that.
  • Today, you can store gigabytes of emails for very little money, and you can get several gigabytes of storage in the cloud for little to no money.

The world of embedded systems is always a decade behind in terms of available hardware at a reasonable price, so you still find systems in maintenance where developers had to opt for awkward data structures just because the price restrictions for the storage imposed limits. I remember telephone call pricing tables that could not be larger than a few kilobytes, and in my dreams I still hear the curses of engineers that had to torture their assembler code to fit into the small ROM of the cheap CPU. And still, more recent devices come with abundant memory and are still sold for competitive prices.

Why are applications and IT departments still stingy when it comes to storing data? Why do bytes, kilobytes, megabytes, gigabytes seem to matter so much?

Some recent examples:

  1. When I got a new phone at work, the fax server did not cope well with assigning a fax number to my extension. I was the first one to get an extension with four digits (instead of three), and fax numbers used to be generated by adding a prefix to the extension. The server application did not provide a field that was large enough to hold prefixed four digit extensions. Are extensions sequences of digits or are they stored as numbers?
  2. The password for my cloud storage is longer than 16 characters, but some of the applications accessing the services request me to truncate the password to just 16 characters. Shouldn’t hashing of passwords obviate the need to truncate passwords?
  3. I installed a new Wifi router at home and chose a long password for wireless access. When I tried to connect my mobile devices to the router, the smartphone was not smart enough to store a Wifi password that was longer than 32 characters. The phone has tens of gigabytes of flash memory, so what is the point?
  4. The storage limit for my blog posts is 100 megabytes including all posts and pictures. The emails exchanged with the IT department to get my quota increased to that level probably cost more than the storage is worth.
  5. The storage limit for my new workplace email account is at 200 megabytes. Out of experience I store 900 megabytes worth of email per year, including incoming and outgoing emails. The negotiable limit is 1.9 gigabytes, I have been told. So, two years from now I will have to have a discussion with administration what emails I can safely delete from the public record. Or maybe I should start to print and file my emails, but I doubt that this would be less expensive, just a difference cost code and cost centre.

Hello, developers and IT departments! Storage is cheap, storage demands are real, and if you like users to use your systems and services, and not employ their own „shadow IT“, then accept the world as it is and offer the services your users need.

About Author: Hanno Langweg

Comments are closed.