Page MenuHomePhabricator

Optimize loading speed by removing nested HTML tags
Open, Needs TriagePublic


The HTML part of the front-end is to be revised so that a picture generated by the old "Tilt3D" firefox plugin becomes flat.

This includes changing
a) mostly the wikimedia files that generate the HTML output code, which are supposedly to be found directly in "/includes"
b) widely used templates

I'm not sure about the tags and subscribers, so i'll leave these empty.

If no one disagrees, I'd implement it (bit by bit) and put the files to the respective directory.

EDIT2: It seems as though the HTML is scattered throughout the code files. Thus many more files will be affected.

Event Timeline

Nemo_bis added a subscriber: Nemo_bis.

I vaguely recall someone raising this point on wikitech-l some months ago, people asked for at least indicative figures on what kind of speed improvement you expect (10, 1, 0.001 %?).

I could build a prototype and run a benchmark, then we'd know precisely. Shall I do so?

I'd only do so if in case of a significant improvement, I get green lights.

By "significant" I mean >10% or so.

Oh boy, a classical page has ~6500 loc, that's gonna take some time.

At any rate, it should be a pretty substantial speedup, except on maths pages, where the maths mode will eat up most (or will it?).

The whole page seems to be minified by the resourceLoader. Is there an option to get a nonminified page somewhere? This would make the prototype creation so much easier.

OK, I'll try to find an extraction tool that will give me the source code in a reasonable form, and then test against a Google standard machine. I'll keep you posted.

I have now found a code "beautifier", but it seems as though the task itself is not more complicated than crafting the desired prototype. From previous experiments, I can however promise that the speed improvement will be quite substantial, certainly substantial enough that my suggestions merit implementation.

I will hence proceed to bit-by-bit removing unnecessary HTML elements. I hope no-one opposes this endeavour.

Removing task assignee due to inactivity, as this open task has been assigned to the same person for more than two years (see the emails sent to the task assignee on Oct27 and Nov23). Please assign this task to yourself again if you still realistically [plan to] work on this task - it would be welcome.
(See for tips how to best manage your individual work in Phabricator.)