Let me widen your point. When I was a young engineer, I told to always write a parent interface and abstract class to every class I built, so we could change the design "in the future". Guess what? The future never happened, and we had an overengineered design. Please See Are you guilty of over-engineering? for my whole argument.
Yes, the customer may change their mind. But they might as well not. Or they don't have budget. Or they might have other priorities. Etc. Nowadays, apart from very obvious cases that are indeed context-dependent, I design for the now.
For further actions, you may consider blocking this person and/or reporting abuse
We're a place where coders share, stay up-to-date and grow their careers.
Really interesting comment.
Let me widen your point. When I was a young engineer, I told to always write a parent interface and abstract class to every class I built, so we could change the design "in the future". Guess what? The future never happened, and we had an overengineered design. Please See Are you guilty of over-engineering? for my whole argument.
Yes, the customer may change their mind. But they might as well not. Or they don't have budget. Or they might have other priorities. Etc. Nowadays, apart from very obvious cases that are indeed context-dependent, I design for the now.