

Unless you know the hours on a drive, you might get brand new ones, or you might get ones with 50k hours on them. They may also be from the same batch, which isn’t ideal for data durability.
If it helps, my strategy is to use RAID6 to handle up to 2 drive failures, and apart from the initial 4 drives needed to initially create the array, I just add another when I need more space. Then even if I get drives with sequential serial numbers, they’re going to have differing amount of life used.
Also, always keep a couple spare drives for quick swapping. Especially with RAID6 given how long rebuilding the array can take

Like I said, the problem with OOP advocates is that most of them are calling for bolts to be destroyed in this analogy. If they weren’t so fanatical about it we wouldn’t be havining this conversation.
It’s not a random example. I can’t go into detail, but it’s the code I work on on a daily basis. It’s a physics model for industrial equipment. Highly customizable for customers, and I need to know exactly where various sub assemblies are located and be able to move them in various configurations.
And scripts doesn’t “fix” the problem. It’s more that using functions is infeasible due to the difficulty in cramming everything into input arrays, so scripts end up being orders of magnitude more efficient to work with. The scripts are all called from a function, which does allow us to interface with other groups or our own custom GUI.