MathJax CDN

2011 - 2017
dead
in its last measured month cdn.mathjax.org served 3.3 billion requests to 179 million people and shipped 70 terabytes of javascript, and every byte of it was free. then cloudflare told the mathjax consortium to move to a significantly more expensive plan, and a nonprofit funded by scientific publishers could not make that number work. the announcement went up on 31 march 2017 and the cdn was gone on 30 april. the replacement everybody was sent to, cdnjs, runs on cloudflare.

~ the obit ~

MathJax is the JavaScript that turns TeX and MathML into readable equations in a browser. The library was the hard part to write; the CDN was the hard part to pay for. Launched in March 2011 alongside MathJax version 1.1, cdn.mathjax.org let any author put one script tag on a page and get properly typeset mathematics, with nothing to install and no bill to pay.

I never installed MathJax and never ran a page that needed it. I have read an enormous number of pages it rendered. Anybody who went looking for a derivation on Wikipedia or an answer on one of the Stack Exchange math sites in that decade was being served by this thing, and the whole design goal was that you would never learn its name. It worked on me for years.

Uptake was immediate. Three months in it was serving just under 2,000 domains. By late 2011 that was 22 million monthly users generating 100 million requests and 1.3 terabytes of traffic, and the consortium published a cheerful note about how successful the service had become. Six years later the same measurements had reached 179 million users and 70 terabytes a month.

~ the rap sheet ~

BornMarch 2011, announced alongside MathJax 1.1
Peak179 million monthly users, 3.3 billion requests, 70 TB a month
Killed30 April 2017
Lifespan6 years
Made bythe MathJax Consortium
Killed bya CDN bill a nonprofit could not pay

~ the free years ~

The version string is where the convenience really lived. Pointing a script tag at cdn.mathjax.org/mathjax/latest/ meant your page got whatever the current release was, with patches and bug fixes arriving the moment they shipped. An author could write a textbook chapter in 2012, never touch it again, and have the math keep rendering correctly in browsers released years afterward.

That is an unusual promise for free infrastructure to make, and it explains why the address ended up hardcoded in so many places. Course pages and journal templates, thousands of WordPress installs, documentation generators that emitted the script tag without being asked. None of those authors were users of a service in any sense they recognized. They had pasted a line in once.

~ the cost of free ~

The MathJax Consortium was a nonprofit, backed by the American Mathematical Society and the Society for Industrial and Applied Mathematics among its sponsors, with a budget sized for library development rather than for operating global infrastructure. The CDN had been running on donated or discounted delivery, Amazon CloudFront at the start and CloudFlare later.

Then CloudFlare informed them they needed to upgrade to a significantly more expensive plan. The announcement on 31 March 2017 put it plainly: "we do not see an affordable way to keep the CDN." Thirty days of notice, and a service at 3.3 billion requests a month was switched off on 30 April.

~ the twist ~

The recommended replacement was cdnjs, and the announcement noted in passing that cdnjs "also uses CloudFlare for delivery." So the traffic did not leave CloudFlare's network. It moved from an account CloudFlare wanted to charge for to an account somebody else was paying for, and the equations kept rendering.

There was one real loss in the migration, and it was the version string. The cdnjs copy would not serve a latest alias, so every page had to name an exact version, 2.7.1 rather than 2.7-latest. Every hardcoded tag on the web became a tag frozen to whatever release was current the week its author happened to update it.

~ what survives ~

MathJax itself is fine. Version 3 was a full rewrite, it is maintained, and the project moved its hosting question onto other people's CDNs permanently. What died was the specific idea that the people who make a piece of web infrastructure should also hand out the bandwidth for it, which the consortium tried for six years and could not afford past 179 million people a month.

~ leave a rose ~

an anonymous tribute. one rose per visitor per day.

@}-->-- ... roses left here

~ leave a wreath ~

a rose fades by morning. a wreath stays on this grave for good, with your name on it.

from $1, paid once through stripe. it keeps the graveyard running: the hosting and the nightly digging. adopt it and the headstone reads "maintained in memory by" you. the groundskeeper plants new wreaths at the next tending, usually within a day.

» one email a week: new graves and the anniversaries of the dead. subscribe

~ leave a note ~

visitors before you have left these graveside notes. anonymous welcome.

other protocols: FeedSync, WAIS, FastTrack, Manifest V2

also died in 2015-2019: Demon Internet, FrontierVille, Readability

« previous  ·  random  ·  next »