Abstract Nonsense

A place for musings, observations, design notes, code snippets - my thought gists.

Shellshocked? Brace yourselves!

I just discovered that to capture multiple lines of stdout from a shell script and redirect them to a file, you can simply wrap them in braces!

For example, my “Create a blog post via a GitHub Action triggered on an Issue creation” workflow uses this snippet:

{
  echo "---"
  jq 'del(.content)' "parsed_issue.json" | yq -P
  echo "---"
  echo ''
  
  # Inline "content" key for the body
  jq -r '.content' "parsed_issue.json"
} > content/micro-blog/"$FILENAME"

Developer Ergonomics

“I wonder how much it is insightful to watch someone doing a workflow and to note when discomfort kicks in. That’s a really insightful thing to realize what matters from bitter experience, right? … Experience tells you when to worry about something and when not to worry about it” - Ben Sparks

That is - the rising discomfort of a programmer when employing a new tool, framework, or library is a good window into the ergonomics of how one uses your tool, framework, or library. Source: How I animate 3Blue1Brown | A Manim demo with Ben Sparks. The whole video is worth checking out! It’s a masterclass on how to construct a programatic-animation library and demonstrate how to work within it.

When I get a chance, I’d love to unpack the source code for how sprite-to-sprite transforms (part of 3B1B’s signature look) and the vectorised rendering engine are implemented with OpenGL.

Week 22

  1. I noted that there’s a difference between Anomaly detection and Outlier detection.
  2. Word of the week ~ enjambement

    enjambement: (in verse) the continuation of a sentence without a pause beyond the end of a line, couplet, or stanza.

  3. As an aside, I find Rust as a language fiendishly complex at a first glance, and I’m amazed by people who find it so straightforward. Having said that, I’d much rather have lived in a universe where Rust was the first ’low-level’ language I learnt instead of C.