HN user

aplaice

278 karma
Posts2
Comments49
View on HN

Unfortunately, GTK 4 has removed key themes. Eventually, Firefox, Chrom(e|ium) and all actual GTK applications will migrate to GTK 4, so this is not very future-proof.

I use a variant of the emacs key theme, so I'd be happy if there were a workaround...

In-person meetings are completely different.

Video conferences are as if everybody were potentially constantly staring at you, but you couldn't tell if or when this was the case, and despite everybody looking at you, you couldn't even make eye-contact with anybody, share a smile etc.

If anything, video conferences are dehumanising.

I'm not disagreeing that (in these scenarios) EB would probably become paid-for, while Chrome never would. I'm just arguing that Chrome would become even more privacy- and user-unfriendly, which is the approximate equivalent of EB putting up paywalls. (Is paying with your attention and privacy better or worse than paying directly with money?)

Apple would continue offering a relatively privacy-friendly alternative — but would require you to switch OS to use it; Microsoft might fork Chromium, but I fear that they'd only pay lip-service to privacy.

Obviously these analyses are complicated by the fact that in both cases the forces that helped create Wikipedia/Firefox wouldn't disappear. If Wikimedia died, then people would put up their Wikipedia dumps online in their own MediaWiki instances. If Mozilla died, then people would either try to keep Firefox alive or try to maintain a set of privacy patches on Chromium. How successful they'd be is another matter...

Doesn't the same also partially hold for Firefox and Chrome, though?

They wouldn't start charging for Chrome, as that's not their business model, but they might move part of their development out of (open source) Chromium and into (closed source) Chrome or further curtail extensions (e.g. adblockers) etc.

I'm not OP, (and people at Mozilla have probably already considered this), but why doesn't Mozilla try a far more aggressive Wikipedia-like donation campaign?

Admittedly:

1. Wikipedia has more "users" than Firefox.

2. Despite this, the donations Wikimedia receives are only about a fifth of Mozilla's budget.

However, people use their browser far more than they use any single website and hence might be more willing to donate more to Mozilla. (For example, I love Wikipedia, but I've gotten even more value from Firefox.)

Overall, this would be unlikely to cover all of Mozilla's expenses, but I'd also be surprised if donations (after such a campaign) would be less than 10% of current revenue; in any case it'd be a valuable source of diversification.

It's possible that the legal relation between the Foundation and the Corporation doesn't make this possible.

Maybe you have some suggestions?

I'm probably not the intended "you", but one idea would be a "testimonials"/thanks section in GitHub/GitLab/Gitea, in addition to the standard Issues and Pull/Merge requests.

It'd allow users of the tool/library to express gratitude, give the developer feedback about their creation and possibly even provide inspiration to other users. People could set their own notification preferences, and the UI could make it clear to those thanking that they shouldn't necessarily expect a reply.

The "testimonials/thanks template" could include a suggestion to donate if you've made a commercial product using the software or if you're just a happy end-user.

GitHub is trying out "discussions", but that's far less targeted.

From a personal point of view, I just try to express thanks whenever I otherwise have a substantive point to make (bug report, comment on an issue, but as you point out that doesn't allow for situations where you don't have anything else to say.

Unfortunately, that's not what OP wants. What OP wants is that when they scroll, the position of the cursor remains at the same position in the buffer (the contents), even when that means that it leaves the currently visible screen.

What scroll-preserve-screen-position determines, is whether the point/cursor stays at the same visual position in the screen — i.e. if for instance your cursor was in the middle of the screen, it will stay in the middle when you scroll.

OP needs the currently non-existent scroll-preserve-buffer-position.

XMonad's[0] default behaviour of being able to separately tell a program to go "fullscreen" (i.e. hide most UI) and control what portion of the screen its window takes up is extremely valuable, since many programs don't give you the option of separately hiding their UI, and it's only possible by making them go fullscreen. However, being able to hide the UI is actually most valuable when there is more than one window on the screen... This is especially important when you have a small (or average-sized) screen, but it's also useful on larger ones to avoid distractions.

Getting the "normal" fullscreen is just two keyboard shortcuts away ("fullscreen" the program and assign its window the entire screen), rather than one. From an intuitiveness point of view, being able to hide a program's UI and change its window size separately is arguably more intuitive — according to the separation of concerns, the former is managed by the program itself and the latter by the WM.

PiP is really nice, but videos aren't the content for which getting a distraction-free experience is most important...

[0] I'm sure that it's also possible with other tiling WMs such as ratpoison, stumpwm, awesome etc.

NflxMultiSubs is still working. I wrote a patch to fix it, and took over maintence on Chrome.

That's great! It's a shame that it's (apparently) no longer open source, though obviously given the MIT license you're allowed to stop disclosing the source.

I second the mpv-based solution, as suggested by st1ck. If you prefer vlc, it now (as of the beta 4.0.0)[0] also supports dual/secondary subtitles. Making it work seems a bit fiddly: first you need to turn them on (under Tools > Preferences > Subtitles/OSD > Dual Subtitles (at the very bottom) > Align — change to anything but unset, and possibly also adjust offset). Then, when playing a video, to select them for that video, you need to "Toggle secondary subtitle control" with Ctrl+Shift+V (this means that the normal subtitle control shortcuts like "v", "Alt+v" etc. now apply to the secondary subtitles) and press "v" the right number of times to switch to the subtitles that you want.

(Obviously vlc and mpv will only work for DRM-free videos, e.g. from youtube or a DVD.)

If you were asking specifically about Netflix subtitles, there used to be an open source NflxMultiSubs extension[1] for both Firefox and Chromium, but it was broken by Netflix introducing changes to its video player and discontinued. There is an active, open-source dual-captions[2] extension, but it's for Chrome only. (However, since it's open source adapting it it for Firefox should be straightforward.) Finally, as an alternative approach, you could try a Firefox addon which allows loading arbitrary subtitles in the SRT format to netflix,[3] and which might perhaps allow you to have both netflix's subtitles and your own SRT ones at the same time.

[0] https://github.com/videolan/vlc/blob/master/NEWS#L30

[1] https://github.com/dannvix/NflxMultiSubs/

[2] https://github.com/mikesteele/dual-captions

[3] https://addons.mozilla.org/en-US/firefox/addon/netflix-srt-s...

Weirdly, it seems[0][1][2], that the layout doesn't do particularly well by Carpalx's keyboard effort estimator[3], as it gets a total effort score of 2.260, compared to 3, 2.098 and 1.842 for Qwerty, Dvorak and Colemak, respectively[4] (lower is better). In contrast, the halmak repo claims[5] an efficiency gain of +134% over Qwerty for halmak, compared to +77% for Dvorak and +84% for Colemak. Since (one would assume) efficiency and effort should be approximately inversely correlated, these results don't square.

I have no idea whether Carpalx's or Halmak's keyboard layout (efficiency|effort) evaluator is more accurate (indicative of real (efficiency|effort)), but the huge disparity between the two is troubling.

(Obviously, Carpalx and Halmak use different optimisation methods — Monte Carlo simulated annealing versus an "evolution algorithm based AI" — and these could well give different results, even with the same scoring method, due to getting stuck in different local maxima etc., but the issue is that the scoring methods themselves give different rankings of fixed keyboard layouts.)

Edit: quickly reading through all of the halmak author's blog posts, it seems that they're aware of the Carpalx project. They describe their (current?) effort model here[6]. It seems heavily data-based, but it's still difficult to determine whether it's "better" than Carpalx's.

[0] https://gist.github.com/tdegrunt/80e63f464c9a1c336e0f1d4e6aa...

[1] https://github.com/MadRabbit/halmak/issues/4#issuecomment-44...

[2] I haven't done the analysis myself and can't be sure that it was done correctly

[3] http://mkweb.bcgsc.ca/carpalx/?interpreting_optimization

[4] http://mkweb.bcgsc.ca/carpalx/?keyboard_layouts

[5] https://github.com/MadRabbit/halmak#comparisons

[6] http://nikolay.rocks/2016-10-22-keyboard-analytics

They dropped their implementation of MathML in 2013. In the six years since then, they didn't fix it or replace it with a better one.

I'm extremely excited by Igalia's work on MathML and glad that the Google Chrome team had given it their preliminary approval, but in the context of criticising Google for working on the "application web" and ignoring the "document web" (for scientists and others), it doesn't change anything[0]. Google is neither doing the work, nor funding it[1], and their contribution until now has mostly (solely?) been to be open about merging it.

[0] not that you explicitly said that it did...

[1] It's funded by the NISO and the Alfred P. Sloan Foundation.

Does anybody know where I can/should host a copy?

With torrent or IPFS, perhaps? (Given the CC BY-SA license, this would be completely legal.)

Also, GitHub's behaviour wrt to LFS is really disappointing — the epub file could have been stored normally with git (its size of ~ 3 MB is far less than the hard limit of 100 MB), in which case there would have been no issues of exceeding a data quota...

For comparison, the linked PDF is normally indexed with git, despite weighing at 7.7 MB.

Since LFS is supposed to reduce total bandwidth use for the hoster, GitHub is, in effect, punishing people for reducing GitHub's bandwidth usage...

Actually, the linked PDF is originally[0] by the same author as the EPUB version you linked. However, in the original repository[0] the PDF is managed with LFS, so it's inaccessible...

[0] https://github.com/sarabander/sicp-pdf

Celestia[0][1] can just about do it. In principle, it can show you what you'd see from any point in space. In practice, it's limited by the data it has (for stars, it uses the Hipparcos Catalogue, which only contains ~ 100,000 stars of the ~ 250 billion that are in the Milky Way) and displays the Milky Way, outside our "immediate" neighbourhood (i.e. several hundred light years), as just a set of amorphous blobs. Hence you can visualise the Milky Way as seen from the edge of the galaxy, but it'll be rather blurry. (It also obviously doesn't include the newly discovered warped shape.)

Edit: For this purpose, I think that this "Chrome Experiment"[2], might be better.

Also see "Gaia Sky"[3] which I haven't tried, but which looks really interesting and may well do what you want.

[0] https://celestia.space/

[1] https://en.wikipedia.org/wiki/Celestia

[2] https://experiments.withgoogle.com/100000-stars

[3] http://sci.esa.int/gaia/60036-gaia-data-release-2-virtual-re...

Mozilla Firefox

Depending on what you mean by "in some future update" and "pretty much guaranteed" (given an infinite timespan everything will disappear) I don't think that's true. I've kept my Firefox user.js (my manual about:config changes) under git over the past 3 years[0], and of the 44 options that I customised, 36 are still present and (seem[1] to be) active.

6 of the about:config user_prefs customised add-ons, so they no longer work due to the shift to Webextensions (but I can still make 5 of the customisations via another interface).

1 customised the GCLI, which was removed, and 1 customised Panorama, which was also removed. (However, most of what GCLI did, can be done some other way, and there are a couple of Webextensions faithfully emulating Panorama.)

[0] The file is older, but I added it to git only three years ago. Hence, many of the about:config changes have been "alive" for longer, but I have no record of those that were removed earlier than 3 years ago.

[1] Cursorily glancing through my comments above each entry to make sure that it still does what it was supposed to.

MathML in Chromium 7 years ago

For the latter, I can only say that anyone advocating using MathML today despite its problems (poor layout and browser support) clearly cares about something else more than they do about actually communicating mathematics to humans.

Much of the reason people are in favour of providing MathML output is that if nobody did, then the likelihood of Chrome getting MathML support would have been near zero (and the risk of Firefox removing its existing (if imperfect) implementation, high). (A chicken and egg problem.) Since MathML is likely (you may disagree — but you must agree that it's plausible that if a JavaScript solution can do it, a native one can probably do it better) to lead to better equation typesetting on the web, once it's properly implemented, people advocating MathML today can very much care about better communicating maths to humans, in the long run. Also, MathML is not incompatible with MathJax — in fact, since MathJax's internal representation of equations is similar to MathML's, converting from MathML (to SVG/HTML+CSS/whatever) is faster than converting from TeX — so it's not as if providing MathML in the document dooms your readers you to its "ugly" output. (And yes, MathML can be both an input and an output for MathJax...)

[...] (which for some reason is given on the page in low-resolution images rather than high-dpi images or SVG) [...]

That's because the page was made several years ago, when such images were the norm (look at a Wikipedia page on the Archive from even 2016), and hasn't seen significant updates since, because MathML was feared dead (due to Chrome, at the time, explicitly rejecting support) and volunteer effort dried up. Somebody™ should update this...

Looking at the MathML sample page in Firefox [...], there are many that are worse and none that is better that TeX's output

For the little that it's worth, IMO five are worse, two are slightly better and the rest just as good as the TeX.

And personally I've seen very little by Firefox/MathML people on their layout decisions (if they decided to do things differently from TeX, why?), while with MathJax I've seen that if their output is found not to match TeX's it is treated as a bug report and a fix attempted.

Far more people work on MathJax than on MathML — MathJax has a two-member team, plus support from AMS, plus volunteers, while MathML has only had occasional volunteers (see above; not that it was much better previously), so it's not a fair comparison. Also the page comparing TeX with MathML was made by the people in favour of MathML precisely because they care about trying to achieve parity with TeX.

What are the some respects in which you say Firefox's output is visually superior to MathJax's?

For instance the speed with which the output is rendered. Several second latency for better final appearance might be a bargain you want to take, but it's still a visual trade-off. (You can use server-side MathJax, but then you lose some end-user customisability.)

the tag soup of MathML, though shorter, has still all the XML ugliness so it's not as if it will ever be readable.

How else would you expose the structure of an equation, to the DOM, than with XML ugliness? It's just important that the XML ugliness makes sense (and MathML's does).

MathML in Chromium 7 years ago

This is an interesting, thought-provoking comment!

(though the original MathML proponents perhaps did not)

FWIW I'm pretty sure that they did. Arguments to authority are pretty terrible, but if you look at the authors of the MathML 1.0 (earliest) or 3.0 (latest) specs[0][1], and google them, you can see that many of them have backgrounds in science or math and have been active in the LaTeX ecosystem.

but this [quality of the typesetting] has been mostly underestimated/ignored by those advocating MathML.

I don't see any evidence for this, not among its designers, implementers or even general proponents.

Firefox's output (implemented almost(?) entirely by individual volunteers), for instance, is acknowledged to be still considerably worse than LaTeX output in a pdf, though it is competitive with its web alternatives (superior in some respects, worse in others) — do be sure to install MathML fonts[2] though.

5. What the result [...] will be, in the web page's DOM.

Have you seen the tag soup generated (by necessity) with MathJax or KaTeX?

[0] https://www.w3.org/TR/REC-MathML//TR/REC-MathML/

[1] https://www.w3.org/TR/MathML3/

[2] https://developer.mozilla.org/en-US/docs/Mozilla/MathML_Proj...

MathML in Chromium 7 years ago

How's it worse?

In either case, you can use TeX as your input, and if you do, you have to convert it, client-side or browser-side, into something usable by the browser; it's just that if the browser accepts MathML the rendering is faster and/or more convenient, plus you get other options.

MathML in Chromium 7 years ago

Pandoc and Mediawiki have been able to convert embedded LaTeX to MathML, for a while. Once Chromium supports MathML most CMSs will probably start providing suitable converters, and in the meantime MathJax will still work (and better, since MathJax's Native MathML output is faster than its CommonHTML one[0]).

[0] http://docs.mathjax.org/en/latest/output.html

MathML in Chromium 7 years ago

XML is faster and far simpler to parse than TeX. To the extent that you need to (if for whatever reason you don't want to rely on a LaTeX to MathML or Ascii to MathML converter) you can make the quadratic equation MathML slightly more readable, by not using hex entities, but unicode for − and ±, and the named entity for ⁢.[0] Furthermore, you (and I!) are just far more familiar with TeX, which makes the comparison in readability not particularly fair. Finally, much of the invisible, seemingly redundant mark-up, such as ⁢ or ⁡, can help you avoid some of TeX's ambiguities — e.g. is $ f(a+x) $ the function $f$ acting on $(a+x)$ or $f$ multiplying $(a+x)$?[1] If you were to omit this mark-up (and if you're converting from TeX to MathML and don't want your converter to engage in guesswork, you have to) the MathML would be even simpler.

Using the same format for equations as for the rest of the document (i.e. HTML/XML) is advantageous (in addition to the parsing benefits). In particular, you can use the same mechanisms for styling and transforming elements, as you can for the whole document. For instance, you could easily style parts of an equation, provide pop-ups that explain what each symbol means, when you hover over it, or interactively change the equation. (Much of this hasn't actually been done, outside experiments, because only Firefox properly(-ish) supports MathML, so it would have been wasted effort.)

[0] https://gist.github.com/aplaice/266b092bc48afbbdd46cdbd0ca81...

[1] Presentation MathML is still obviously not semantic, but it can be better in this respect than default TeX — there have been proposals for semantic TeX, but none of them have really caught on.

MathML in Chromium 7 years ago

When you write web-pages, do you usually write the raw HTML or do you use something like Markdown or Wikitext and have it converted to HTML? If the latter, then why would having LaTeX as part of the input and MathML as part of the output, be any different?

Also, directly converting TeX to MathML, even client-side, is much easier and faster than MathJax's many-to-many approach (I'm not criticising MathJax — given the constraints, they're doing the best possible job).[0][1][2] (See also the Ascii to MathML converter[3] that has already been mentioned in another comment.)

[0] http://fred-wang.github.io/MathUI2014/demos/7-web-component....

[1] https://github.com/fred-wang/MathUI2014/blob/master/demos/7-...

[2] https://github.com/fred-wang/x-tex

[3] https://runarberg.github.io/ascii2mathml/

MathML in Chromium 7 years ago

In addition to the already mentioned performance issue with client-side MathJax, having native MathML makes it conceptually far simpler to do more complex things with equations, both for the end user and for the developer.

For instance, as a user, if you want to scale the equations by some amount or use a different maths font, it's a couple of lines of CSS, using exactly the same method you'd use to make any other changes to the appearance of a web-page. (Yes, you can easily do the former with MathJax, but I don't think the latter is possible user-side).

As a developer, if you'd want to interactively highlight parts of an equation, for educational purposes, it'd be trivial with MathML, but rather hard to do nicely with MathJax (statically coloured elements are possible with MathJax, with the "color.js" extension, but not dynamically coloured ones — and no, swapping out the entire equation to make colour changes is neither nice nor scalable). Alternatively, if you want to embed equations in a diagram or a graph, it's pretty easy with MathML[0][1], but would be difficult otherwise.

Obviously, all of the above is in principle possible with JavaScript implementations, but it's far harder. You might argue that this extra effort is worth the smaller attack surface. IMO, given the importance of maths and science, it isn't.

Also, why do we, say, have the CSS flexbox layout? After all, we could have used javascript to arrange elements into an appropriate table or even just set the x and y positions of all elements...

[0] http://fred-wang.github.io/MathUI2014/demos/2-mathml-in-svg....

[1] http://fred-wang.github.io/MathUI2014/demos/6-mathml-in-webg...

MathML in Chromium 7 years ago

MathML is here today and works in Firefox. I use it on Wikipedia[0], which is the only major ("non-niche"[1]) website that provides it, and it's much nicer than the image-based equations (and much, much faster than MathJax would be).

[0] https://www.mediawiki.org/wiki/Extension:Math/advancedSettin...

[1] not that "niche" websites like nLab[2] should be disregarded, since the web was originally designed to help scientists...

[2] https://ncatlab.org/nlab/show/HomePage

Entirely irrelevant to the content of the article, but is there a solution to the problematic interaction between sticky headers and full-page scrolling?

At least in Firefox, if you press Space or PageDown (to scroll down a "page"), on the linked article, you'll lose several lines of the text, as they're obscured by the header. Illustrating:

<------ page 1 --------->

<------ page 1 --------->

<------ page 1 --------->

<------ page 1 --------->

<------ page 1 --------->

<------ page 1 --------->

<----- lost line ------->

<----- lost line ------->

<------ page 2 --------->

<------ page 2 --------->

<------ page 2 --------->

<------ page 2 --------->

<------ page 2 --------->

<------ page 2 --------->

Chrome isn't afflicted by this (on the linked article), due to the fact that its page scroll is slightly shorter than Firefox's (on a webpage without any sticky headers, Firefox gives you about 1.5 lines of context from the previous "page"/screen, when you page-scroll; Chrome gives you about 5). However, if the height of the sticky header were greater (as often is the case), Chrome would also be affected.

This is obviously in addition to the annoyance of the sticky header wasting vertical screen space, but the latter is just an aesthetic preference, while the former is broken functionality.

Yes, I know that on Firefox I can just use reader mode, but it seems sad that after almost 30 years of the development of the web, going back to a design that could easily have existed in the 90s, is an improvement.