The only issues I've come across so far is when a site uses font symbols, but overall, I've been pleasantly surprised.
The only issues I've come across so far is when a site uses font symbols, but overall, I've been pleasantly surprised.
Of course, there’s always the tracking ability, but that’s inherent to every CDN.
> Since Chrome v86, released October 2020, cross-site resources like fonts can’t be shared on the same CDN anymore. This is due to the partitioned browser cache
Keep in mind that Chrome basically pioneered the concept of doing OS-level sandboxing between websites. We can complain all we want about how Google should give people the option to choose whether they want hard site isolation or not, but if it weren't for Google's investment in Chrome, we wouldn't even think of the option. Would it be better to live in a world where hard problems don't get possible solutions at all, where no one feels like they have choices taken away from them because the choices were never given them in the first place?
(I do firmly agree that the very existence of Google is anti-democratic, though... but I get there via an entirely different argument. I'm glad to see more people concluding this, nonetheless.)
As for technology existing only because of Google or some other large company, that's not the case. Google was more innovative when it was smaller. Netscape created the whole browser industry as a small startup. Just let a lot of small to medium size companies compete in the market and split the ones that become so big as to become a threat to the whole ecosystem.
Similarly Google at its scale can tackle large problems more efficiently than having 10000 medium sized companies pool their resources together to do the same.
In other words, everything has pros and cons that depend on each particular situation. Large companies aren't "all bad" and small companies aren't "all good", you just chose to give lower priority (or ignore) ti the bad aspects of small companies while showing concern with the bad aspects of large companies.
No, a plurality of people agreed on the solution, and everyone else disagreed with it but was stuck with it.
> Therefore you are not a the whim of a single person or entity and this legitimates the way you live.
Now you're at the whim of a popularity contest.
Entity A does thing that impacts entity B. Entity B makes those effects known to a broader group than entity B. Maybe entity A does thing about it, maybe not.
2) Every setting comes with an opportunity cost. More than one product has died under a morasse of way too many configuration flags, or focused on features to please a minority of users at the cost of the product itself.
3) The group that says they want the setting is always bigger than the group that will actually use the setting.
Sure, their code will compile faster but they won't get a feel for how it behaves in the real world. Probably the best is to have fast build servers on the LAN while typing at pedestrian machines.
Also I doubt there are many people reading the web on 2004 netbooks. You know what I am talking about.
2. I used a small 2007 laptop well in to 2018, and I believe that the software I wrote was better for it.
The result is designs I can actually be proud of, not ashamed.
Of course, no one is paying me for it. And that's OK. I'd rather be doing this for frew than getting six figures working on advertising bullshit which will be gone tomorrow.
Let me ask you a similar question. Is there any evidence whatsoever that Google built this service out of the goodness of their hearts, and have no intent of using it to gain any sort of competitive advantage?
And if you do believe that, is there any evidence that Google will continue to spend millions of dollars supporting a service that gives them zero benefit? What does their track record say about that?
For the record, I'm not anti-Google, nor ultra privacy focused. I just think it's common sense that Google expects some sort of ROI here. To many, using Google fonts is considered a fair exchange (especially given that their data is anonymized) and I think that's a perfectly reasonable position. But make no mistake, there is a clear benefit to Google here.
Bundling with browsers outside of Chrome would be a different story, but Google has no say over that anyways.
That's true for now (you should know that Google Chrome will deploy changes on caching third-party content), but webfont caching simply doesn't work as well when you've realized that websites that do use webfonts have a tendency to pick fonts that are unlikely to match another website.
Hasn't been true for Safari for quite some time, and Chrome followed suit two months ago. That's not "will deploy," it has already been released in Chrome v86.
* In uBlock Origin (which is a must have on bad internet): Settings > Block remote fonts
* In browser, Firefox about:config, gfx.downloadable_fonts.enabled, Chrome run with --disable-remote-fonts
* Download fonts when on good connection
> You can download all Google Fonts in a simple ZIP snapshot (over 300MB)
> https://github.com/google/fonts
installation depends on OS, on Arch Linux it would be
$ yay -S ttf-google-fonts-git
basically it puts font file under /usr/share/fonts/Google recommends
> using a fonts manager (such as SkyFonts) that automatically syncs the latest versions of fonts from the Google Fonts API to your computer.
https://developers.google.com/fonts/faq
------
I browse with JS disabled by default in uMatrix, turn it off on problematic websites (maybe ten times a day). It would revert back to disabled on next browser reload. And I have maybe 20 hosts enabled by default which I use often enough.
https://github.com/sergeykish/uMatrix/commit/929a25e39fc1d38...
> If the local() function is provided, specifying a font name to look for on the user's computer, and the user agent finds a match, that local font is used. Otherwise, the font resource specified using the url() function is downloaded and used.
https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face
And this is not the case for Google Fonts anymore, for example
https://fonts.googleapis.com/css2?family=Noto%20Sans
I've created issue
https://github.com/google/fonts/issues/2855
----
>> Any correctly-coded website will try a local source first, which should help a lot for poor connections.
> Then Google Fonts is not correctly coded, as it'll use remote font only. And myriads of websites reusing Google Fonts snippets. To try local source first, you have to explicitly ask for it in @font-face/src which Google Fonts does not do.
> So installing font into your OS won't help you with any website using Google Fonts service.
(on rereading this I sounded sarcastic, but I really wasn’t trying to be)
Because I've noticed a strong correlation with lack of accessibility and poor quality content I ended up regretting wasting my time reading.
You'll probably have to let it go someday :(
(Actually, it will be some time after that, since the day it stops working I will spend some time investigating how much work it would be to un-break it myself. The web can pry uMatrix from my cold, dead fingers. And I suspect I am not alone in feeling that way.)
1) No cosmetic filtering.
2) A more powerful interface, as _underfl0w_ describes at https://news.ycombinator.com/item?id=25302405
The key thing which that comment does not mention is that the interface enables a whitelist approach — block everything (read: as much as you want) by default and selectively allow certain types of content from certain sites.
This is important because of where your effort is spent.
With uBO, sites always work by default, but it requires manual effort — albeit mostly not by regular users — to stay up to date and blocking the latest trackers and annoyances. So, the amount of effort to keep uBO functioning is proportional to the rate of change in tracking. uBO is an arms race between advertisers and blocklist maintainers.
With uMatrix, all annoyances are gone by default, but often so is desired functionality. It requires manual effort to make the site work again, but once it works, it will continue to work until the site owner changes which types of resources must be loaded in order to function. So, the amount of effort required to keep uMatrix functioning is proportional to the rate of development, specifically major changes.
So, really, the two approaches take a different bet. uBO bets that trackers and ads will change less frequently than functionality. uMatrix bets the opposite. I know which bet I think is more reasonable. Advertisers have way more incentive to try and circumvent uBO than developers do to regularly break their site's functionality.
This all said, it works very well to use both. Having uBO installed means that when you're un-breaking sites in uMatrix, and you allow something that was actually advertising, uBO will usually catch it for you, so you don't have to see ads. This means you don't have to think quite so hard before allowing something in uMatrix, which makes the overall experience much more pleasant.
UI screenshot: https://i.imgur.com/o0UsSdP.png
You can expand any base domain to see subdomains -- click where there is no text. You can also click the "all" cell to expand to see all subdomains.
That plus adblock makes the web almost... enjoyable.
https://github.com/gorhill/uBlock/wiki/Per-site-switches#no-...
I wonder, though, how the client determines the size? Doesn't that require at least a HEAD request, introducing another round trip?
There are only two ways loading such a site goes:
a) you get to stare at a blank page for a couple minutes while the font downloads, if it downloads at all. (this seemed to be google's favorite way to screw over people with bad connections; acknowledgment that it's going to suck and doing it anyway)
b) you get two minutes into reading the page only for everything to suddenly jump somewhere else when it switches to the font. (this seems more like the result of ignorant web designers)
JS sucks but webfonts consistently make the web an awful place.
It’d be neat if something like that were available for web fonts. Each paragraph gets its own “block” that the installed font uses (and contains padding), and when the font downloads, it won’t reflow. But I’d assume it’d be way too complicated to deal with (different screen widths is the first to come to mind).
So, a bunch of work to fix something that isn't broken when you turn off webfonts and respect user settings.
With that said, they're a fantastic feature but are also way overused. You don't need web fonts unless your website is either heavily type-centric, or has font-related dependencies (such as embedded content of some kind). Icon fonts are also a neat use of web fonts, but they don't make the page "feel slow" when their rendering is slow, because icons loading slower affects our perception of a page's loading time less than its text.
Uh yeah, I lack sleep. I meant type-centric (such as a newspaper).
What are you thinking of in terms of "implemented incorrectly", do you happen to have an example?
I've considered storing each default SVG into the user table and then inlining in the HTML but decided to wait on that optimization since inlining dynamic SVGs itself was such a significant speed boost, especially on threads with hundreds of comments.
Without inlining, each profile image or SVG would be a separate request parallel HTTP request and often at least a couple requests would be slow.
2. If you do find this irresponsible, then by all means create a small SVG file with the 5 icons in it and allow that to be cached, or even 5 small individual SVG files if it comes to that.
With this approach you can be more practical with your goals. If the design cannot be compromised, you can still get to initial paint quickly and let the WOFF files load in as needed.
Edit: If anyone is looking for more information about this, the post [2] from this tool's author from 2016 does a good job of discussing the tradeoffs.
I remember when the browsers even allowed the user to configure a background image for content. You could have all your web sites render over a tiled picture of a brick wall if you wanted. Year after year, we give up end-user configurability and simply hand it over to nameless web designers who decide what is good for us.
I imagine this is partly tongue-in-cheek, but I think the real difficulty here is that CSS doesn't differentiate between "user-configured sans-serif font" and "the system fallback sans-serif font". As a result, you can't allow users to override your font choices without disregarding custom fonts entirely.
.left-sidebar { display: none }
#content { width: 100% /* calc(100% - 164px) */ }
.top-bar { display: none }
body { padding-top: inherit /* 50px */ }
its no script experience cluttered by warning and GDPR consent: #noscript-warning { display: none }
body { margin-top: inherit /* 1.9em */ }
#js-gdpr-consent-banner { display: none }
Users can extend, overwrite and even discard authors styles, but they have to either understand web layout or use userstyles.org.That might be due to font hinting. The default fonts (on Windows) were beautifully manually hinted to give a really crisp results without font smoothing. But manual font hinting is super expensive, so web fonts don't do it. If you disable them, I'm sure the system has to fall back to the (higher quality) defaults.
Most web fonts are automatically hinted, so they only look acceptable with font smoothing on (at normal font sizes with normal DPIs). If you turn smoothing off, the fonts look super ugly with all kinds of artifacts like weird double-thick lines.
I've tried to disable web fonts because I hate font smoothing (to me it's just blurry, not smooth), but the issue I've run into is the fad of using a custom font for icons, so I end up getting lots of unicode tofu for graphics (e.g. https://twitter.com/FakeUnicode/status/1194628430559469568).
It'd be more overhead of course, and basically the opposite of what this thread is about, but it's something I'd be interested in. I'd love to be able to choose a font without things getting mangled.
I'm not too familiar with the details of the icon fonts, but my bet is that most of those characters are in the private use area.
I guess it boils down to if an extension can hook into the font-resolution process, to have different resolution policies for different character ranges. I know there are extensions that can block web fonts, but maybe they just prevent the resource from loading at all.
I used to work at MS, and a lot of people don't realize exactly how much time, money, and love is put into fonts there.
When my team ordered custom fonts, I personally spent a lot of time going over each character pixel by pixel, in combination with many other characters, to make sure everything was perfect. I know other members on my team did the same. It wasn't some sort of mandate, it was just some sort of institutional knowledge, or maybe pride, that Microsoft was paying for custom fonts for our project and we were going to make well sure and good that what we delivered to customers was perfect.
I know there is a holy-war between people who like MacOS's font rendering and people who like Microsoft's font rendering, but I hope everyone can respect the amount of pride that both companies put into their work.
Same platform, different browsers, fonts render differently.
Different platform, same browser, fonts render differently.
Same computer, same browser, laptop monitor vs external, fonts render differently.
Same font, same computer, web browser vs local application, fonts render differently.
It is madness.
WOFF has nothing to do with rendering. You can achieve the exact same rendering with a WOFF file as you can with TTF; the contents are the same.
On the other hand, it's possible that in the course of deployment, various things may be dropped from the original font resource: not just subsetting (reducing the repertoire of supported characters), but in some cases also OpenType features (e.g. ligatures or contextual forms), and in some cases hinting is stripped.
If that is done, the webfont version may indeed appear differently than the original "desktop" font, depending on local font-rendering settings.
Is this really done?
Rent-seeking would be if Google demanded money from a font designer to let their fonts be "compatible" with Chrome. I.e. Pay me or I'll make sure your product doesn't work with my product. App stores is a common example; pay Apple or they'll make sure your software doesn't run on the iPhone.
The most usual is that you'll have to pay a certain price up-front (or monthly), and some more for each access. The odds are also good that you won't be able to host the font yourself, because well, the foundry has to count those access, doesn't it? And if you want the foundry to respond any quickly, you better pay some extra.
For example, some foundries require you buy a special expensive license in order to use their fonts in a PDF. IIRC, Hoefler & Co. and Emigre do this (though it's been years since I've looked, so I may have changed this). Their rationale is that since it's possible to extract font from a PDF, they need to pay for any font piracy that results from that.
(never mind that anyone who wants to pirate the font would just go and find a torrent instead of ripping it out of a PDF... and there are torrents of every notable foundry's entire libraries)
Rent-seeking is when a third party uses force to claim profit from an agreement they're not actually party to.
For example, you rent a business property. You pay the landlord and agree to their terms. Next week the mob shows up and demand protection money to "keep you from harm". Implying that harm will surely come to you unless you pay. That's rent-seeking.
The app store analogy fits rather nicely I think, but it depends on your viewpoint.
The agreement is between you and the law in most countries, which says that typefaces are exempt from copyright. The third party are foundries who license fonts to you and charge you more based on how popular your website is.
If you don't wish to agree to the license terms of a particular typeface, you have the option to choose another typeface instead. This includes the myriad free typefaces that exist today.
If you buy something from me or strike a license agreement with me, I'm not a "third party" to that transaction.
> If they were not then why would license agreements even be a thing.
We could make a license agreement that you pay me per breathe of air you take. It’s not my fault if you sign that.
(Though I've heard Adobe Stock and iStock at least works ok for photographers and graphic artists for now)
Now if you use a high-resolution monitor and print-optimized fonts, MacOS will look better. If you use a low-resolution monitor and screen-optimized fonts, Windows will look better. Problem is, most designers come from print and use expensive Mac gear, so they are designing for a minority, their peers, not their users.
This can't still be true. No one comes from print anymore.
It is. The real problem is that a large number of designers like to have a pixel-perfect experience (which on print doesn't really matter as they know what paper will that publication use).
I think macOS will always be optimised for the best experience. Even if that means sub par XP if you don’t go all in on money.
I’d actually be interested in learning more about the rendering vs say windows if you have a source.
It is probably better to say that Apple will design for their intended market. I was using Apple products long before HiDPI was a thing and was never particularly happy with the fuzzy fonts under Mac OS X. While that may be acceptable when designing for print, since accuracy is more important, it is an annoyance in many other circumstances.
On hi-def monitors and laser-printed page, it is lovely both to read and to look at.
I mean, 4K (3840×2160) 23" displays nowadays start at $300, so if you’re still on hundred-buck 1920x1080 then you’re only getting what you paid for.
Going to all hi-def displays is the single best investment I ever made as a professional programmer, reading and writing text on screens daily.
In my recollection (and it's been a few years since I used a Linux GUI) Linux was the one with dodgy font rendering.
To me, fonts indeed look blurry on macOS and weird on Windows. Screenshots from Windows with colored pixels particularly don't look good to me. Though after having seen screens of people using Windows 10, it seems they changed whatever I really didn't like about font rendering on Windows.
I still like font rendering on GNU/Linux (and Android) better it is correctly configured, which it is on widespread distributions with widespread desktop environments (I use a QHD screen). But it could be out of habit. On some configurations, kerning is bad though.
https://github.com/gorhill/uBlock/wiki/Per-site-switches#no-...
Would you be amenable to "A well-designed web page does not need to rely on custom fonts, provided their impact on page load is absolutely minimal"?
You can unobtrusively serve up a single font embedded as base64 on a static site - a world of difference from some of these sites that load up 5MB of a UX person's vision off some remote CDN.
How do you do this exactly?
You could add a filter like `*$font,third-party` or similar as well
It actually was quite pleasant and readable, despite the particular font choice.
Safari prevents website from using local fonts. Only web fonts.
The thought is that a site could check which fonts work for you based on local fonts and use that towards your marketing thumbprint.
I personally find browsing the internet without javascript or cookies enabled by default to be incredibly frustrating/inconvenient, but I'm sure it's all very subjective, down to your own personal browsing habits.
From my POV I too find it frustrating at times, but I'd say much of that comes quite unnecessarily not from JS use, but its abuse, eg. fails to display text unless JS is enabled. HTML is pretty good at that!
There's no point me boring you with all the plusses of not using js (just ask) but speed... once a connection is made this http://antirez.com/latest/0 is pretty much instantaneous.
(thanks for your reply)
Some people even invent new protocols (Gemini comes to mind) to circumvent some of these frustrations.
The reason I prefer AA off (with fonts that were designed for it like Verdana or Bitstream Vera Sans Mono) is because I find it less tiring on the eyes. With AA off, the edges are all sharp and crisp, there's no blurriness. It looks closer to print. When AA is on, they look smeared and don't have clearly defined edges.
What is also a puzzler, as displays become increasingly higher resolution, now 4K and heading toward 8K, the need for AA is supposed to disappear. You don't need to fake smoothness at high pixel resolutions, yet many OSes are actually now making it harder to turn AA off.
It gets dumber.. OSes that used RGB subpixel AA (cleartype) because they're now on tablets and other devices that rotate, they can't count on the RGB stripe, so they stopped using RGB subpixel AA and went back to greyscale AA.
On the other hand, android has only one system font, Roboto, which kind of necessitates using external fonts
(1) The options for controlling the style of SVG elements (e.g. on hover) are not great.[0] In contrast, font icons can be styled as easily as any other text.
(2) Font files are usually smaller than their SVG counterparts.
(3) Font rendering is faster than SVG rendering.
(4) IE did not support SVG until version 9, but supported custom fonts since version 5.
(5) Old browsers that did support SVG had serious issues with SVG sprite maps, ranging from creating duplicate rasterisations of the entire SVG file in memory for every use of the same file in a document, to not caching the rasters at all and regenerating them every time they needed to be repainted (e.g. during scrolling). These are fixed now, but inertia is what it is.
options -> language and appearance -> advanced -> uncheck 'Allow pages to choose their own fonts, instead of your selections above'
It's annoying to hit a page with a video player, and all the buttons are little boxes with numbers in them because the icon font didn't load...
I don't see any disadvantages to giving it a try yourself for a while tho' - it's just a single checkbox setting.
In Firefox, disabling "Allow pages to choose their own fonts" does not completely block web fonts (as setting gfx.downloadable_fonts.enabled to false would); what it does is to prioritise the default fonts, and move any page-specified fonts to the end of the fallback list.
This means that for "normal" text, the browser's default fonts will be used, but if there are Private Use Area character codes that are only supported by the site's custom webfont, it'll still get used for those. So icon fonts that are based on PUA code points will still work.
What doesn't work in this scenario is when the icon font doesn't encode its icons in the PUA, but uses normal Unicode characters -- either symbol code points that are supported by the system's default fonts, or as some icon fonts do, regular English words that then use ligature rules to produce the icon glyphs. (So the icon font contains OpenType mappings such as "phone" -> [phone icon].) In this case the content on the page will end up rendered using the default font instead.
[Edited: HN doesn't let me include an actual phone icon there, apparently.]
More readable, and also helps one focus on the content. A lot of web publications with literary pretensions (New Yorker, Quillette, LRB …) use pretty classic-looking externally loaded serif fonts for their articles, which not only slows down reading but can also (IMO) make one less critical of the content than one otherwise would be.
If I were the editors of these magazines I would be seriously tempted to force the use of Comic Sans for all article content. May not be good from advertising point of view but it signals a kind of intellectual honesty that I suspect is valued higher by their readership than a "classic look"