mirror of
https://git.sr.ht/~seirdy/seirdy.one
synced 2024-11-27 14:12:09 +00:00
Limit homepage posts to featured posts
This commit is contained in:
parent
e4b5d59520
commit
9d34f82f5d
6 changed files with 16 additions and 5 deletions
|
@ -5,6 +5,7 @@ outputs:
|
||||||
- html
|
- html
|
||||||
- gemtext
|
- gemtext
|
||||||
footnote_heading: Notes
|
footnote_heading: Notes
|
||||||
|
featured: true
|
||||||
title: "The right thing for the wrong reasons: FLOSS doesn't imply security"
|
title: "The right thing for the wrong reasons: FLOSS doesn't imply security"
|
||||||
---
|
---
|
||||||
I find it quite easy to handle views different from my own. I feel more troubled when I see people agree with me for the wrong reasons.
|
I find it quite easy to handle views different from my own. I feel more troubled when I see people agree with me for the wrong reasons.
|
||||||
|
|
|
@ -9,6 +9,7 @@ tags:
|
||||||
- free software
|
- free software
|
||||||
- user domestication
|
- user domestication
|
||||||
- platforms
|
- platforms
|
||||||
|
featured: true
|
||||||
title: Keeping platforms open
|
title: Keeping platforms open
|
||||||
---
|
---
|
||||||
This article is the second entry of series of posts exploring situations in which <abbr title="free, libre, and open-source software">FLOSS</abbr> alone isn't enough to secure user freedom.
|
This article is the second entry of series of posts exploring situations in which <abbr title="free, libre, and open-source software">FLOSS</abbr> alone isn't enough to secure user freedom.
|
||||||
|
|
|
@ -10,6 +10,7 @@ sitemap:
|
||||||
ChangeFreq: weekly
|
ChangeFreq: weekly
|
||||||
Priority: 0.7
|
Priority: 0.7
|
||||||
footnote_heading: Notes
|
footnote_heading: Notes
|
||||||
|
featured: true
|
||||||
title: A look at search engines with their own indexes
|
title: A look at search engines with their own indexes
|
||||||
---
|
---
|
||||||
This is a cursory review of all the indexing search engines I have been able to find.
|
This is a cursory review of all the indexing search engines I have been able to find.
|
||||||
|
|
|
@ -6,6 +6,7 @@ outputs:
|
||||||
- gemtext
|
- gemtext
|
||||||
footnote_heading: Notes
|
footnote_heading: Notes
|
||||||
toc: true
|
toc: true
|
||||||
|
featured: true
|
||||||
tags:
|
tags:
|
||||||
- web
|
- web
|
||||||
- accessibility
|
- accessibility
|
||||||
|
@ -13,6 +14,7 @@ tags:
|
||||||
sitemap:
|
sitemap:
|
||||||
ChangeFreq: daily
|
ChangeFreq: daily
|
||||||
Priority: 0.7
|
Priority: 0.7
|
||||||
|
featured: true
|
||||||
title: An opinionated list of best practices for textual websites
|
title: An opinionated list of best practices for textual websites
|
||||||
---
|
---
|
||||||
<div role="doc-preface">
|
<div role="doc-preface">
|
||||||
|
@ -687,7 +689,7 @@ Some image optimization tools I use:
|
||||||
: The reference WebP encoder; has dedicated lossless and lossy modes. Lossy WebP compression isn't always better than JPEG, but lossless WebP consistently beats PNG.
|
: The reference WebP encoder; has dedicated lossless and lossy modes. Lossy WebP compression isn't always better than JPEG, but lossless WebP consistently beats PNG.
|
||||||
|
|
||||||
`avifenc`
|
`avifenc`
|
||||||
: The reference AVIF encoder, included in [libavif](https://github.com/AOMediaCodec/libavif)[^11]. AVIF lossless compression is typically useless, but its lossy compression is pretty unique in that it leans towards detail removal rather than introducing compression artifacts. Note that AVIF is not supported by Safari or most WebKit-based browsers.
|
: The reference AVIF encoder, included in [libavif](https://github.com/AOMediaCodec/libavif)[^10]. AVIF lossless compression is typically useless, but its lossy compression is pretty unique in that it leans towards detail removal rather than introducing compression artifacts. Note that AVIF is not supported by Safari or most WebKit-based browsers.
|
||||||
|
|
||||||
I put together [a quick script](https://git.sr.ht/~seirdy/dotfiles/tree/3b722a843f3945a1bdf98672e09786f0213ec6f6/Executables/shell-scripts/bin/optimize-image) to losslessly optimize images using these programs. For lossy compression, I typically use [GNU Parallel](https://www.gnu.org/software/parallel/) to mass-generate images using different options before selecting the smallest image at the minimum acceptable quality. Users who'd rather avoid the command line while performing lossy compression can instead check out [Squoosh](https://squoosh.app/), a JavaScript app that bundles WebAssembly-compiled encoders; I've heard good things about it.
|
I put together [a quick script](https://git.sr.ht/~seirdy/dotfiles/tree/3b722a843f3945a1bdf98672e09786f0213ec6f6/Executables/shell-scripts/bin/optimize-image) to losslessly optimize images using these programs. For lossy compression, I typically use [GNU Parallel](https://www.gnu.org/software/parallel/) to mass-generate images using different options before selecting the smallest image at the minimum acceptable quality. Users who'd rather avoid the command line while performing lossy compression can instead check out [Squoosh](https://squoosh.app/), a JavaScript app that bundles WebAssembly-compiled encoders; I've heard good things about it.
|
||||||
|
|
||||||
|
@ -886,7 +888,7 @@ Where long inline `<code>` elements can trigger horizontal scrolling, consider a
|
||||||
|
|
||||||
Soft hyphens are great for splitting up text, but some text should stay together. The phrase "10 cm", for instance, would flow poorly if "10" and "cm" appeared on separate lines. Splitting text becomes especially painful on narrow viewports. A non-breaking space keeps the surrounding text from being re-flowed. Use the ` ` HTML entity instead of a space: `10 cm`.
|
Soft hyphens are great for splitting up text, but some text should stay together. The phrase "10 cm", for instance, would flow poorly if "10" and "cm" appeared on separate lines. Splitting text becomes especially painful on narrow viewports. A non-breaking space keeps the surrounding text from being re-flowed. Use the ` ` HTML entity instead of a space: `10 cm`.
|
||||||
|
|
||||||
<span itemscope itemtype="https://schema.org/Book">{{<cited-work name="Practical Typography" url="https://practicaltypography.com/">}}</span>[^10] describes [where to use the non-breaking space](https://briefs.video/videos/is-progressive-enhancement-dead-yet/) in more detail
|
<span itemscope itemtype="https://schema.org/Book">{{<cited-work name="Practical Typography" url="https://practicaltypography.com/">}}</span>[^11] describes [where to use the non-breaking space](https://briefs.video/videos/is-progressive-enhancement-dead-yet/) in more detail
|
||||||
|
|
||||||
One exception to the rules from <cite>Practical Typography</cite>: don't use a non-breaking space if it would trigger two-dimensional scrolling on a narrow viewport. Between broken text and two-dimensional scrolling, broken text is the lesser evil. I personally set a cutoff at 2.5 cm (1 inch) at 125% zoom.
|
One exception to the rules from <cite>Practical Typography</cite>: don't use a non-breaking space if it would trigger two-dimensional scrolling on a narrow viewport. Between broken text and two-dimensional scrolling, broken text is the lesser evil. I personally set a cutoff at 2.5 cm (1 inch) at 125% zoom.
|
||||||
|
|
||||||
|
@ -1347,12 +1349,12 @@ A special thanks goes out to GothAlice for the questions she answered in `#webde
|
||||||
|
|
||||||
[^9]: Decoration is more than cosmetic. The [color overrides and accessibility](#color-overrides-and-accessibility) sub-section describes how some decorations, like borders, improve access­ibility.
|
[^9]: Decoration is more than cosmetic. The [color overrides and accessibility](#color-overrides-and-accessibility) sub-section describes how some decorations, like borders, improve access­ibility.
|
||||||
|
|
||||||
[^10]: <span itemscope itemtype="https://schema.org/Book">{{<cited-work name="Practical Typography" url="https://practicaltypography.com/">}}</span> only renders invisible text without JavaScript. You can use a textual browser, screen reader, copy-paste the page contents elsewhere, use a reader-mode implemen­tation, or "view source" to read it without enabling scripts. All of these options will ironically override the carefully-crafted typography of this website about typography.
|
[^10]: libavif links against libaom, librav1e, and/or libsvtav1 to perform AVIF encoding and decoding. libaom is best for this use-case, particularly since libaom can link against libjxl to use its Butteraugli distortion metric. This lets libaom optimize the perceptual quality of lossy encodes much more accu­rately.
|
||||||
|
|
||||||
|
[^11]: <span itemscope itemtype="https://schema.org/Book">{{<cited-work name="Practical Typography" url="https://practicaltypography.com/">}}</span> only renders invisible text without JavaScript. You can use a textual browser, screen reader, copy-paste the page contents elsewhere, use a reader-mode implemen­tation, or "view source" to read it without enabling scripts. All of these options will ironically override the carefully-crafted typography of this website about typography.
|
||||||
|
|
||||||
I find <cite>Practical Typography</cite> quite useful for printed works, and incorporated a more moderate version of its advice on soft-hyphens into this page. With a few such exceptions, I generally find it to be poor advice for Web content.
|
I find <cite>Practical Typography</cite> quite useful for printed works, and incorporated a more moderate version of its advice on soft-hyphens into this page. With a few such exceptions, I generally find it to be poor advice for Web content.
|
||||||
|
|
||||||
[^11]: libavif links against libaom, librav1e, and/or libsvtav1 to perform AVIF encoding and decoding. libaom is best for this use-case, particularly since libaom can link against libjxl to use its Butteraugli distortion metric. This lets libaom optimize the perceptual quality of lossy encodes much more accu­rately.
|
|
||||||
|
|
||||||
[^12]: <p>Consider disabling the JIT for your normal browsing too; doing so removes whole classes of vulnera­bilities. In Firefox, navigate to <code>about:config</code> and toggle some flags under <code>javascript<wbr>.options</code>.</p><figure itemscope itemtype="https://schema.org/SoftwareSourceCode"><figcaption><strong itemprop="codeSampleType">Code snippet</strong>: Firefox prefs to turn off JIT compilation</figcaption><pre><code itemprop="text">javascript.options.ion<br>javascript.options.baselinejit<br>javascript.options.native_regexp<br>javascript.options.asmjs<br>javascript.options.wasm</code></pre></figure><p>
|
[^12]: <p>Consider disabling the JIT for your normal browsing too; doing so removes whole classes of vulnera­bilities. In Firefox, navigate to <code>about:config</code> and toggle some flags under <code>javascript<wbr>.options</code>.</p><figure itemscope itemtype="https://schema.org/SoftwareSourceCode"><figcaption><strong itemprop="codeSampleType">Code snippet</strong>: Firefox prefs to turn off JIT compilation</figcaption><pre><code itemprop="text">javascript.options.ion<br>javascript.options.baselinejit<br>javascript.options.native_regexp<br>javascript.options.asmjs<br>javascript.options.wasm</code></pre></figure><p>
|
||||||
|
|
||||||
In Chromium and derivatives, run the browser with `--js-flags='--jitless'`; in the Tor Browser, set the security level to "Safer".
|
In Chromium and derivatives, run the browser with `--js-flags='--jitless'`; in the Tor Browser, set the security level to "Safer".
|
||||||
|
|
|
@ -11,6 +11,7 @@ tags:
|
||||||
- user domestication
|
- user domestication
|
||||||
- privacy
|
- privacy
|
||||||
- platforms
|
- platforms
|
||||||
|
featured: true
|
||||||
title: WhatsApp and the domestication of users
|
title: WhatsApp and the domestication of users
|
||||||
---
|
---
|
||||||
|
|
||||||
|
|
|
@ -1,13 +1,17 @@
|
||||||
<section class="h-feed hfeed" itemscope itemtype="https://schema.org/DataFeed">
|
<section class="h-feed hfeed" itemscope itemtype="https://schema.org/DataFeed">
|
||||||
|
{{ $allPosts := false }}
|
||||||
{{ if eq .RelPermalink "/posts.html" -}}
|
{{ if eq .RelPermalink "/posts.html" -}}
|
||||||
|
{{ $allPosts = true }}
|
||||||
<h1 class="p-name" itemprop="name headline" id="posts">Posts</h1>
|
<h1 class="p-name" itemprop="name headline" id="posts">Posts</h1>
|
||||||
{{ else -}}
|
{{ else -}}
|
||||||
<h2 class="p-name" itemprop="name" id="posts">Posts</h2>
|
<h2 class="p-name" itemprop="name" id="posts">Posts</h2>
|
||||||
|
<p>Here's a selection of my best posts. To see the rest, visit <a href="/posts.html">my Posts page</a>.</p>
|
||||||
{{ end -}}
|
{{ end -}}
|
||||||
<p>I edit some of these posts quite often; some are updated indefinitely. Check the "updated" timestamps.</p>
|
<p>I edit some of these posts quite often; some are updated indefinitely. Check the "updated" timestamps.</p>
|
||||||
<p><em>Timestamp format: <code>YYYY-MM-DD</code>, as per <cite><a href="https://www.ietf.org/rfc/rfc3339.txt">RFC 3339</a></cite> and <cite><a href="https://xkcd.com/1179/">ISO 8601</a></cite></em></p>
|
<p><em>Timestamp format: <code>YYYY-MM-DD</code>, as per <cite><a href="https://www.ietf.org/rfc/rfc3339.txt">RFC 3339</a></cite> and <cite><a href="https://xkcd.com/1179/">ISO 8601</a></cite></em></p>
|
||||||
<ol class="unstyled-list" reversed>
|
<ol class="unstyled-list" reversed>
|
||||||
{{- range where site.RegularPages "Type" "in" site.Params.mainSections }}
|
{{- range where site.RegularPages "Type" "in" site.Params.mainSections }}
|
||||||
|
{{- if or ($allPosts) (.Params.featured) -}}
|
||||||
<li>
|
<li>
|
||||||
<article class="h-entry hentry" itemprop="dataFeedElement" itemscope itemtype="https://schema.org/BlogPosting https://schema.org/DataFeedItem">
|
<article class="h-entry hentry" itemprop="dataFeedElement" itemscope itemtype="https://schema.org/BlogPosting https://schema.org/DataFeedItem">
|
||||||
<h3 itemprop="name headline" class="p-name entry-title">
|
<h3 itemprop="name headline" class="p-name entry-title">
|
||||||
|
@ -21,5 +25,6 @@
|
||||||
</article>
|
</article>
|
||||||
</li>
|
</li>
|
||||||
{{- end }}
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
</ol>
|
</ol>
|
||||||
</section>
|
</section>
|
||||||
|
|
Loading…
Reference in a new issue