Helen Hou-Sandi, in response to someone suggesting a large rewrite in slack wrote this:
Your plan as I understand it disregards a couple of core WordPress philosophies/practices: striving for maintenance of backwards-compatibility, and that an X.0 release is no more significant than X.1 or Y.9 (this is closely related to maintaining back-compat, in that something like semantic versioning is less meaningful for WordPress core).
Generally, the most successful refactorings in core have been done in support of features being built, whether that’s a user- or dev-focused feature. It’s not that core code can’t be improved (clearly it can), it’s that better decisions regarding back-compat and, more importantly, forward-compat for an API or other bit of code can be made when one eye is on practical application.
As a user-centric project, WordPress chooses philosophies that put the user first. There is also an unwritten philosophy point that many committers talk about which is that User Trust Matters. What that means to me is that users trust WordPress for running businesses, sharing content, and engaging with their own users. User trust must be maintained in order to provide features such as automatic updates.
User trust isn’t something you earn and then just get to keep forever. It’s a maintenance relationship.
Trust is maintained by understanding that WordPress core is one piece of a WordPress website. It doesn’t matter if it’s a plugin using an API in a novel way, a theme missing a needed CSS class, or an outdated version of PHP running on a server. When a site running WordPress breaks, it’s WordPress that breaks and it’s user trust that is hurt. It’s why WordPress has a beta and RC period with many calls for testing. It’s why a field guide is published and plugin authors are emailed before a release.
It works for users now. When it stops working for them, it’s our fault and we lose their trust.
Over the last 3 years, the underlining taxonomy code in WordPress has changed dramatically in order to support taxonomy meta. In new versions though, WordPress still considers the case that data hasn’t been migrated. At WordCamp NYC a few years ago, five contributors talked through how to best handle meta when a term hadn’t been split. By thinking through cases where things aren’t pristine, WordPress is stronger and users can trust it.
To design a spacecraft right takes an infinite amount of effort. This is why it’s a good idea to design them to operate when some things are wrong
Akin’s 2nd law of spacecraft design
WordPress can absolutely do a better job with maintaining user trust, but as long as it considers the fact that User Trust Matters, it will be a stronger project.