Wikipedia's JavaScript Initialisation on a Budget
phabricator.wikimedia.org
phabricator.wikimedia.org
https://www.mediawiki.org/wiki/ResourceLoader/Architecture#R...
You can 'view source' on a page to confirm that their JS doesn't even do "safe" transformations like local variable renaming.
Don't get me wrong, I really like the "just ship less code" approach to making apps fast. I am just shocked that running a processor on the code that they do ship to make it smaller was not one of the first things they tried. (Disclaimer: I work in this space and have even tinkered with writing such a tool. http://neugierig.org/software/blog/2019/04/js-minifiers.html )
Sadly all too common in my experience. Disappointing? Absolutely. But few things of this sort surprise me anymore.
Also, is it really working for them? We're responding to someone who thinks it isn't.
More background: https://phabricator.wikimedia.org/phame/post/view/146/migrat...
But (according to their linked article) 14KB is only the max size of the _first_ burst of packets, after which TCP will usually double the size in each subsequent burst. So two bursts equal 14 + 28 = 42 KB, not 28.
Are they doing this to assume a connection limited to only its initial burst size? I imagine this might be relevant in low-data areas (developing countries, etc.), but they don't go in to it.
> So why try to squeeze a website into ~14KB? Seems like you should be trying to squeeze it into 1432 bytes.
> I found my answer in IETF RFC 6928 – a proposal to increase the TCP Initial Window to 10 segments. The Initial Congestion Window (cwnd) is the maximum number of bytes that a server can send without receiving any acknowledgement that the bytes were received via a client ACK packet. This maximum number of bytes to send is calculated by multiplying some number by MSS. As of RFC 6928 some number is equal to 10 (initially).
If you create an account on wikipedia you can tell them to serve you formulas using images or mathml but without doing that formulas stop working. Those hover previews hang midori though, I wouldn't mind losing those.
On any preview, hit the gear icon in the bottom-right.