I get that this takes a while, but what's the holdup? It's never clearly explained.
FA wasn’t originally designed as a behemoth of a site, and some design decisions made were... not great. That includes database design. At some point in time,
at least, usernames were literally the key column of the user database, if I’ve understood things correctly.
If you don’t know database lingo, the key column is what holds the unique identifier of any given database row. It’s sort of, in a metaphorical way, like the page numbers of a book. And most databases will use an incremented integer as their key column (a number that might never be visible outside the database at all, mind you - it’s still useful for cross-referencing tables!), which is a much more flexible solution when it comes to things like username changes. But imagine you had to try to find a specific page by searching for the first sentence on that page? Changing the schema of a database is not something you do lightly, and if you do it on a production site and mess up, Bad Things are liable to happen.
That’s
one of the technical hurdles that have to be overcome, even without UI concerns and information presentation considerations. And it’s one that I know has been explained multiple times. Practically all the work done on this sort of feature will also be “under the hood” work, which I believe the administration has been trying to alternate with more visible changes.
On top of that, the last couple of years have seen the passage of online privacy legislation in multiple areas where FA has users, and compliance with legislation is kind of one of those things that have to be pushed to the front of the queue no matter what. Research regarding the future of Flash content has also been an issue with a timeline imposed by outside forces, so any work done to e.g. get the site ready to implement/integrate Ruffle would likely also come out of the same development schedule.
Also FA has historically had a lot of legacy spaghetti in its code, so to whatever degree that’s still the case, new features are going to be hard to implement without breaking something else in the process.
All or most of these issues have been described by staff members in the past. I get that some explanations may not be very clear if you don’t have the technical understanding required to follow them, and that’s understandable. But even with that I wouldn’t agree that it’s never been clearly explained. I suspect that it’s rather a matter of you not being satisfied with the explanations available and/or that you are conflating “clear” with “exhaustive.”