User:Alexis Jazz/DEVELOPERS DEVELOPERS DEVELOPERS

Hi Steve.

I'll collect examples of the train of thought of developers here as I stumble upon them. For some reason, developers often look at problems in.. interesting ways.

Mostly rants this.

Convoluted
"(in response to a report of an error that occurred as the result of double-clicking a submit button) To prevent this, the form should contain the current revision ID in a hidden field. If that revision is no longer current when attempting to move the page, the attempt should fail with a meaningful error message. This is how edit conflict detection works, and we should apply the same logic here."

- User:DKinzler (WMF) on T235589

The issue with this: you should always avoid showing the user an error message, unless either you fucked up (like, say, your database is unreachable) or the user fucked up beyond what you can correct for them.

In this case, it's easy to avoid the bad request from ever being made in the first place: just disable the submit button after it's pressed. If required you could re-enable it after a second or two. (if the button isn't meant to cause the user to leave the page)

DKinzler's solution might still be required for some other use-cases, but not this one.

Licensing? Who cares
In early 2019 developers introduced "file captions" on Commons, the first step in the introduction of structured data.

File captions are considered "raw" data and such data gets licensed CC0 because attribution can get highly problematic real fast and the data isn't supposed to be eligible for copyright in the US anyway. Of course, not everyone lives in the US (shocker) and anyone should be able to realize that some people are going to enter "captions" that are eligible for copyright, if not in the US, at least in their home country. So users should be made aware of the license they are releasing their contribution under. That's a really obvious thing. And a showstopper if it's absent! So naturally, the developers completely forgot about it.

And of course, people started to copy-paste the contents of the "description" parameter of the information template into the file caption. Which is not only a waste of time, but since descriptions can be imported from third parties like Flickr or museums, it results in file captions that actually aren't CC0. And you're welcome.

File captions
File captions as structured data are a brilliant idea that.. just kidding, it's a moronic idea. File captions were the first step in the introduction of structured data. Too bad nobody really thought about it before introducing it. Besides the licensing, storing file captions is an exercise in futility. Because file captions depend on context. There is no useful "generic" caption to write for any image. To make matters worse, captions can't contain wikitext (like a link), making them even more useless for captions.

If the developers had communicated with the community they could have discovered this. And there was an alternative, which was very simple and would have solved literally all their problems, including the license problem: don't have file captions, have a text description of the image for the visually impaired instead. It was that simple. For the life of me I have no idea how they missed this.

And from what I can tell, the developers still haven't implemented text descriptions for the visually impaired. Seriously?

Structured data
Structured data is a brilliant concept with an implementation that roughly resembles an armored cash transport car getting rammed by a train that's transporting manure: there's crap everywhere but underneath there's something valuable.

Structured data was implemented without the ability to transclude the data into wikitext. Result? Bots creating massive data duplication. Now there are two sets of data: the data in the wikitext and the data in the structured data which is usually just a copy. The copy may or may not be accurate and can always become desynchronized. For stuff like licensing, the wikitext remains leading. So the structured data is just a fifth wheel in this scenario. The data should have never been duplicated.

If developers would actually communicate with the community this could have been avoided and structured data could have been a useful tool. Instead we just got.. this.

Tool naming
How many colorful names there are out there! What is an Instagram? How much is a Google? How fast is wikiwiki? At least back in 2001 they were original, and it paid off. Now the radical freethinkers on a platform like this would surely come up with many more catchy appropriate names for the things they make!
 * SecurePoll
 * SpamBlacklist
 * MobileApp
 * VisualEditor
 * UploadWizard
 * Translate extension
 * Content translation
 * DiscussionTools
 * SyntaxHighlight
 * Flow never mind they rebranded it Structured Discussions Twemoji12 1f602.svg

DYK? Aklapper is not a developer
If you've done anything at all on Phabricator you've seen this name. Did you know Aklapper is not a developer? I was surprised. See, not everything on this page is a rant.

Let's enforce an arbitrary performance budget for gadgets and let's avoid getting the community involved
"Currently anyone with the correct rights can edit MediaWiki:Gadgets-definition to turn gadgets on for anonymous users. Left unchecked this has led to some performance problems and potential SEO (related to slow loading) on many of our smaller sites leading to T340705. We should be doing more to guide site admins on when they are introducing performance/SEO problems to the site.

In MediaWiki we've been investing a lot of effort in limiting the amount of CSS and JS we ship to our end users, but any improvements here are meaningless if the same is not happening within gadgets.

I think we should enforce a performance budget for all gadgets that have been marked as "default".

To do this we need"

- Jdlrobson

Does this sound like a recipe for a dumpster fire? It did to me, so I added the "CommRel-Specialists-Support." tag which should result in m:Communications/Movement Communications getting involvement which I'd hope would prevent a shitload of drama from occurring.

Only for Aklapper to remove the tag 17 minutes later. Well, we'll see where this goes. My prediction? The forest of dead dreams.