つまりどういう将来拡張を想定できるか。
予想し得る拡張には備えなければならないし、発生し得ない拡張に備えるのは無駄。
ここを的確に押さえて必要十分な設計を行うことが要求される。

プログラミングスキルだけではなく業務ドメインの知識になってくる。
むしろ真剣に事前の勉強が必要なのはそっちだ。開発言語なんか細かな話。
上流での設計ミスは取り返しがつかない。

仕事をしてない奴は、こういう話が分かってないんだよな。
だから実装レベルの話しかしない。
自分で仕様を決めて自分で実装するなら全知全能の神だからな。そりゃ楽だろ。

ここんとこの話は FizzBuzz では議論にならん。
出題者が脳内で想定している拡張には備えておき、出題者が想定していない拡張には備える必要がない。
FizzBuzz のような現実に結びつかない問題でそれができるのは、本人とエスパーだけ。