Leon Timmermans wrote: >I'm not aware of any other major open source language that quite dumps new >features on their users like we do. We've got feature flags and experimental status to manage this. We mostly stopped just dumping new features onto users years ago. [smartmatch] > Late in that discussion changes were introduces >with compatibility consequences that weren't immediately recognized as >such; What specifically are you referring to here? I don't see anything matching that description. The only compatibility consequence that I see that was not immediately spotted was the issue of the "switch" feature being on by default for some existing version bundles, which interacts with the changes in keywords, but these changes didn't really start "late in that discussion". I also doubt that thinking about it in advance would have spotted that issue. It certainly wouldn't have made a difference to the resolution: if the changes hadn't been reverted, I was going to tweak the feature flag setup, in exactly the same manner that I would have if I'd been aware of the issue in advance. >Only after that one can actually design the feature. ... >After that, "Someone with time on their hands" can actually implement it I reject the notion that a waterfall process is a good approach in general or that enforcing such a process would solve problems. Issues often arise during development that were not apparent before touching any code, and spending longer before touching any code doesn't prevent that happening. If you enforce the sequential requirements-design-implementation process then that just means that you can't address these problems when they inevitably arise. -zeframThread Previous | Thread Next