The pieces the writing on jaeaeich.com is made of, rendered by the same pipeline, in both themes. Markdown covers most of it; the rest are a few Astro components you can drop into an .mdx post.
Paragraphs, headings with a hover anchor, links, bold, inline code and keyboard keys. All plain Markdown.
dark
Pitfall: the tokio blocking pool
When the OS decided to flush its page cache under all that write pressure, everything piled up behind it. The same 5 GB download took anywhere from 4 to 29 seconds, because every pwrite went through spawn_blocking. See the s3z repo for the fix.
A smaller heading
Press Ctrl + C to disconnect, then run vpn again to stop the instance. Italics are for the occasional aside.
light
Pitfall: the tokio blocking pool
When the OS decided to flush its page cache under all that write pressure, everything piled up behind it. The same 5 GB download took anywhere from 4 to 29 seconds, because every pwrite went through spawn_blocking. See the s3z repo for the fix.
A smaller heading
Press Ctrl + C to disconnect, then run vpn again to stop the instance. Italics are for the occasional aside.
usage
## Pitfall: the tokio blocking pool
When the OS decided to flush its page cache under all that write pressure, everything piled up behind it. The same **5 GB download** took anywhere from 4 to 29 seconds, because every `pwrite` went through `spawn_blocking`. See the [s3z repo](https://github.com/jaeaeich/s3z) for the fix.
### A smaller heading
Press <kbd>Ctrl</kbd> + <kbd>C</kbd> to disconnect, then run `vpn` again to stop the instance. *Italics* are for the occasional aside.
For quoting someone else. Serif italic, so it never gets mistaken for your own voice.
dark
Most rewrites are mistakes. The ones that aren’t usually happen because the platform underneath you grew a feature that does one of your components’ jobs.
light
Most rewrites are mistakes. The ones that aren’t usually happen because the platform underneath you grew a feature that does one of your components’ jobs.
usage
> Most rewrites are mistakes. The ones that aren't usually happen because the platform underneath you grew a feature that does one of your components' jobs.
The header reads like a section label. Scrolls sideways on narrow screens instead of squashing. Right-align number columns with a colon in the divider row.
The TaskPod is built in <Refrepo="jaeaeich/poiesis"path="poiesis/core/taskpod.py"/>, and the whole project lives at <Refrepo="jaeaeich/poiesis"/>. A specific line works too: <Refrepo="jaeaeich/vpn"path="vpn.sh"line={79}/>.
A few numbers compared as bars. Highlight your own. Plain HTML, so it follows the theme and screen readers get a list. Wrap it in a Figure for a caption.
dark
lower is better
s3z
0.25 s
mc
0.26 s
s5cmd
0.37 s
aws-cli
0.83 s
Downloading 768 MB from MinIO, median of 10 to 30 runs.
light
lower is better
s3z
0.25 s
mc
0.26 s
s5cmd
0.37 s
aws-cli
0.83 s
Downloading 768 MB from MinIO, median of 10 to 30 runs.
A left-to-right sequence for architecture sketches. Use unit when every step is its own thing, frame when they share one box, and lane for something that runs alongside all of them.
dark
TorcorchestratorPod
TIFPod
TexamPod
exec 1Pod
exec 2Pod
exec 3Pod
TOFPod
Redis pub/sub between every step
Poiesis v0.1: every step is its own Pod, glued together with Redis.
one Pod
TIF
exec 1
exec 2
exec 3
TOF
ack
TRec, a native sidecar, watches every step
Poiesis v0.2: the same task as one Pod.
light
TorcorchestratorPod
TIFPod
TexamPod
exec 1Pod
exec 2Pod
exec 3Pod
TOFPod
Redis pub/sub between every step
Poiesis v0.1: every step is its own Pod, glued together with Redis.
one Pod
TIF
exec 1
exec 2
exec 3
TOF
ack
TRec, a native sidecar, watches every step
Poiesis v0.2: the same task as one Pod.
prop
type
default
notes
stepsrequired
(string | Step)[]
–
frame
string
–
Label for a box drawn around all steps.
lane
string
–
A bar under the steps for something that spans all of them.
unit
string
–
Tag shown on every step, e.g. "Pod" when each step is its own Pod.