Brotli compression for the web
calendar.perfplanet.com
calendar.perfplanet.com
For those of us building things on the web, things supported by browsers are far more compelling than those that are not.
Chromium is still milling on this: https://code.google.com/p/chromium/issues/detail?id=452335
But there seems to be some progress: https://chromium.googlesource.com/chromium/src.git/+log/lkcr...
https://en.wikipedia.org/wiki/SDCH
https://engineering.linkedin.com/shared-dictionary-compressi...
https://aprescott.com/posts/sdch
Guessing part of the hurdle is that you can't simply drop it in like gzip; you have to generate a dictionary and serve it and refresh it now and then (the LinkedIn post explains). And a CDN can't just cache "the SDCH'd version" of a resource; ideally it'd cache one version for each recently used dict.
The other, slightly happier "problem," is that other tuning can make the additional gains from SDCH less dramatic. I looked, and the Google homepage has a blob of JS that's 40KB gzip+sdch'd--but it's ~100KB gzip -9'd, and probably costs me 0KB most of the time because it's cacheable and its Last-Modified is about a month ago.
CloudFlare's Railgun proxy does use delta coding to good effect, though in a much different context (origin server to edge location).
I can imagine other variations, like priming Brotli's (de)compressor's history buffer with the first bytes of the old version of a cacheable resource in an If-None-Match request, if both sides have the old version handy and advertise the encoding. Sounds like what you're saying. Like SDCH, that still isn't drop-in; the server has to remember old versions of things. And it only applies to cached resources.
Anyhow, interesting space.
Too late to edit, but I mean a separate Accept-Encoding value for the diff-like usage (brdiff or whatever), not piggy-backing on the value already being added for Brotli. Clearly if you're messing with the history buffer it's no longer Brotli-as-we-know-it.
That or maybe he means the Huffman codes, in which case you'd do the same thing but s/LZ/Huffman/ s/dictionary/tree/g.
I tend to favor algorithms like LZF and LZ4 that don't have a separate dictionary for compressing text though, since there's just about no performance loss on either end and compression is "good enough".
Ah, so you mean something like what SDCH does. This works well for files that are smaller than the window size and has rewards rapidly diminishing with filesize past that.
Then again, this is just some wild speculation. :)
During a lot of overplayed drama it was decided to rename it to .br instead.
[146]: https://bugzilla.mozilla.org/show_bug.cgi?id=366559#c146 [152]: https://bugzilla.mozilla.org/show_bug.cgi?id=366559#c152
The whole drama around it, and "feminism gone too far" is ridiculous, and, worst of all, everyone claims the other side did far worse stuff than what actually happened.
And "kill" system call is eliminated for obvious reasons; processes can decide themselves whether they do anything when they receive the "euthanise" signal. Plus the biased "mail" delivery is replaced by "gendre".
A better name would have been "signal" (as in the verb), avoid a default signal (how often do you actually send TERM?) and to use lowercase for the signal names consistent with other commands.
> And hangup doesn't have anything to do with terminating.
The default hangup action is termination because people generally don't want interactive processes sticking around after their I/O is gone. > how often do you actually send TERM?
Each common termination trigger has its own signal so that programs can distinguish the source and potentially act differently for each — HUP for hangup, INTR for tty, TERM for kill(1).Sure but 'hangup' is used to reload configs (which may not actually mean terminating the process).
I don't know the history of SIGHUP-to-reload (perhaps a good question for TUHS) but I'd guess it originated outside of Bell or Berkeley, who would have simply added a new signal.
Unless the issue is that "bro" has some other kind of objectively offensive connotations, which I completely disagree with. Many women (and some men) use "sis" (or, much more rarely, "dudette"), in the exact same way as "bro".
(And for the record, I didn't downvote you.)
I understand there are gender issues, but if you have to overcorrect so much that you're changing an abbreviation to avoid the short form of "brother", you've gone wrong.
I am very thankful that my culture doesn't have this gender hostility and easy offense that's prevalent mostly in the US.
Don't ask me how this works but this is What (intersectional/third-wave) Feminists Actually Think.