3 ms·
While I agree this is an important problem, I don't think there is a satisfactory answer. Programming language evolution is more or less a complexity management
by lifthrasiir 3y ago
While I agree this is an important problem, I don't think there is a satisfactory answer. Programming language evolution is more or less a complexity management, while you also have to balance requirements from various stakeholders. Almost all governance drama came from one group of stakeholders complaining about requirements essential for other group of stakeholders, and you can't always satisfy both. (Rust `async` for example is known to be such case, explaining a functioning but generally unsatisfactory design.) Go is a rare exception where the core team had no reason to honor all stakeholders and enough resource and willpower to do so, and yet some drama did happen.
- neilv 3y agoWe might be able say that a given assessment of governance will work out well for our needs. But it's a lot easier to identify showstoppers early on. For example, if a language designer and implementor says upfront that they want to run it as Benevolent Dictator For Life, and also that they don't want to see feature PRs from people, because they prefer to work through all the details themself... That's their right, and great information to have upfront. That governance might tentatively work for some adopters, and others will decide it's a showstopper without needing to explore further.
- lifthrasiir 3y agoYou are right about early adopters, but once those have been filtered, there will still be multiple stakeholders within the resulting community. Even when we don't consider new users, I can't see how they can be adaquately catered for in general.
- neilv 3y ago> We might be able say Correction: "We might not be able to say".