Scalability

We often talk how “this don’t scale”, but what does scalability mean anyway?

I’ve came across this post from all things distributed that explains it very well.

Paraphrasing from the post:

scalability means the ability to increase performance proportionally to the resources added.

Will it perform proportionally if I add more instances? Scalable. Increase its CPU? Scalable.

To give a mundane example of something that doesn’t scale, my SO and I decided to keep track of our expenses in an app. She started doing it, which worked well. I started helping her out, but the overhead of me making mistakes (duplicates, forgetting to add etc) end up not making us increase performance proportionally. Suffice to say we rolled back to only have her keeping track of them.