To be frank, I find the concept of "best practice" a little dogmatic, and a little useless, at least the way I've seen that term thrown around.
In reality, every project is different in its goals and constraints and requires different trade-offs.
Is containerization a best practice? Well it depends on the complexity of deployment. What about unit tests? Code reviews? CI/CD? All of them depend on the project and its real world goals as you said. Which begs the question of whether "a best practice" even means anything.
Anyways, I agree with both you and penjelly. I was just commenting on the fact that penjelly does in fact seem to agree with you as tommychillfiger said.
I think that's where the real discussion is. A lot of things spoken of as a best practice are really just cargo culting rituals when they're not practically evaluated
There was a talk by Julia Evans recently shared here on HN[0]. A great talk overall, but I particularly liked this bit about "best practices" which I think describes the issue beautifully.
> One way I see people kind of trying to share terrible things that their computers have done to them is by sharing "best practices".
But I really love to hear the stories behind the best practices!
If someone has a strong opinion like "nobody should ever use bash", I want to hear about the story! What did bash do to you? I need to know.
The reason I prefer stories to best practices is if I know the story about how the bash hurt you, I can take that information and decide for myself how I want to proceed.
Maybe I feel like -- the computer did that to you? That's okay, I can deal with that problem, I don't mind.
Or I might instead feel like "oh no, I'm going to do the best practice you recommended, because I do not want that thing to happen to me".
TLDR (by me): Don't share best practices, share your experience and let others draw their own conclusions from that.
In reality, every project is different in its goals and constraints and requires different trade-offs.
Is containerization a best practice? Well it depends on the complexity of deployment. What about unit tests? Code reviews? CI/CD? All of them depend on the project and its real world goals as you said. Which begs the question of whether "a best practice" even means anything.
Anyways, I agree with both you and penjelly. I was just commenting on the fact that penjelly does in fact seem to agree with you as tommychillfiger said.