Once, a friend of mine working for a big tech company told me: "I cannot give you the exact numbers but I usually work on a system with thousands of CPU cores and petabytes of storage space". I don't know the amount of RAM but you got the point: there are system out there that do not force you to be careful when allocating resources.

After reading several tweets and posts, I have to assume that many of those who give suggestions about best practices and warnings on anti-patterns, work for really big tech companies. Unfortunately, not everyone's target system has even the capability of a common home PC.

I'm not just speaking about embedded engineers like me. Consider developers of mobile apps. There are still people using smartphones with 4 GB of flash memory and 1 GB of RAM. Some apps simply don't even start while others crash or cause the phone to reboot. And this happens also with some websites.

My point is that some suggestions must be used with a grain of salt. When you decide to follow a best practice or avoid an anti-pattern, try to consider also the impact on the usage of the resources. Your users will be grateful.


Image credits: BalticServers data center by BalticServers.com licensed under CC BY-SA 3.0