Two Days Ago

The best poems are ineffable

Published by marco on in Philosophy

The poem in Tell me Something I don’t Know by Jim Culleny (3QuarksDaily) isn’t deeply thought-provoking or revelatory but it does what poetry does best: it seems to distill meaning from elegantly juxtaposed words.

“Tell me how to weave
tomorrow into yesterday
without tangling, without
strangling today”

You see? I love it but I don’t know what it means. Not yet.

A poetic friend wrote to tell me that,

“About the poets and their words. Can you ‘know’ what they mean? Nope! Like a good question maybe we can “die Fragen selbst... [More]”

Angular is pretty specialized

Published by marco on in Programming

 I recently had a conversation about the pros and cons of using Angular and I found this year-old article that I’d prepared from my notes but never published. The article
Two-way binding between Signals and Query Params by Julio Castro (Software Engineering Corner by Zühlke Engineers) includes the following code snippet.

@Component({
  selector: "app-root",
  standalone: true,
  imports: [AsyncPipe],
  template: `
    <h1>Signals Demo</h1>
    <p>Your first name is: {{ firstName$ | async }}</p>
  `,
})
export class AppComponent {
  private activatedRoute =... [More]

Balancing user experience and performance in a web page

Published by marco on in Programming

 This video is just under 30 minutes and provides a lot of useful tips about how to optimize web pages. It’s almost a year old, but a lot of the optimizations are good to know, even though they won’t apply to most pages out there. It’s good to know how the browser works and which heuristics it uses to determine what can be optimized. Knowing these things helps you avoid accidentally formulating your web pages in ways that slow things down unnecessarily. You’ll be less likely to suffer under... [More]

Swift protocol extensions for C#

Published by marco on in Programming

 Extension syntax in C#14Since this feature is being touted for C# 14—this time it’s coming for real!—I thought it would be good to refresh what I’d already learned about it. The title is a bit hyperbolic but it’s quite an interesting feature. It’s basically protocol extension from Swift for C#. It’s .NET’s answer to extending extension methods to properties and, probably, operators. You can’t add state, as far as I can tell. But that isn’t so surprising.

The video below discuss the proposal as it looked for... [More]

A good intro to .NET Aspire from the 2024 Build Conference

Published by marco on in Programming

This is another 46-minute, 10-month-old video from the last Build conference that I found extremely helpful in explaining what .NET Aspire is and what it’s good for.

Demystify cloud-native development with .NET Aspire | BRK181 by Microsoft Developer (YouTube)

Damian Edwards and David Fowler do a soup-to-nuts demonstration of Aspire. It basically lets you configure your multi-project, distributed projects with code rather than with YAML (e.g. dockercompose.yml). Instead, it writes the files for you and handles the deployment to Docker. This lets you much more easily create and... [More]

Toub and Hanselmann at the Build Conference 2024

Published by marco on in Programming

This 46-minute presentation by Scott Hanselman and Stephen Toub is ten months old but is still worth watching. I note below that one of the more significant things Toub shows is not any sort of programming wizardry, but column-selection in a text editor. Half of the things that people use AI for can be solved with column-select and judicious copy/paste.

'Highly Technical Talk' with Hanselman and Toub | BRK194 by Microsoft Developer (YouTube)

Another fantastic “deep dive” with these two: this time they’re optimizing the Humanizer library on-the-fly, on-stage, during a session.... [More]

Getting Docker in the path on MacOS

Published by marco on in Programming

I couldn’t call Docker from the command line. I had installed Docker a long time ago, but had just restored from a Time Machine backup, so my system was new but the applications had been restored. That meant that Docker had recorded that the executables had been sym-linked to the right folder (/usr/local/bin) but those links were part of the old, dead system.

Long story short, go to the settings, as shown below. If you’re in the situation that I was in, in which the app was out of sync with... [More]

2 days Ago

Toub’s 234-page tour-de-force on performance in .NET 9

Published by marco on in Programming

 The articlebook Performance Improvements in .NET 9 by Stephen Toub (.NET Blog) was published about six months ago. It contains a tremendous amount of interesting information, which I’ve attempted to summarize below, following the document structure in the original.

Tier 0

“Another tier 0 boxing example is dotnet/runtime#90496. There’s a hot path method in the async/await machinery: AsyncTaskMethodBuilder<TResult>.AwaitUnsafeOnCompleted (see How Async/Await Really Works in C# for all the details). It’s really... [More]”

Junior code is insidious

Published by marco on in Programming

 The article Enumerated Science by Remy Porter (Daily WTF) describes a train wreck of a code example. It suitably illustrates why we really have to question whether scientists/juniors/etc. should really be writing code with so little training. If they wrote text this poorly, they’d be laughed out of their profession. Somehow, it’s perfectly fine to write code like this.

index = 0
for index, fname in enumerate(img_list):
    data = np.load(img_list[index])
    img = data[0][:,:]
    img_title... [More]

Web optimization: preload vs. fetchpriority

Published by marco on in Programming

This is a nearly 50-minute video about certain optimizations that used to be useful but which, in modern browsers, often get in the way of heuristic optimizations that browsers apply automatically.

How browsers REALLY load Web pages by We Love Speed / Robin Marx (YouTube)

“Preload should be applied with surgical precision
  • Specific edge cases (you really know what you’re doing)
  • If the resource isn’t in the HTML
    • Fonts
    • Dynamic LCP images
    • JS imports

Basically, he said if you’re using preload, you’re almost certainly doing it wrong. For example, you can use fetchpriority=high... [More]

Guide to being a good person and programmer

Published by marco on in Programming

 The article The Best Programmers I Know by Matthias Endler seems almost too good to be true. NGL I feel seen. I have cited heavily from it, highlighting the parts I find especially interesting. At the end are a few pallid notes from me, but the meat of this article is the quote.

  • Read the Reference
  • Know Your Tools Really Well
  • Read The Error Message
  • Break Down Problems

    If you work as a professional developer, that is the bulk of the work you get paid to do: breaking down problems. If you do it right, it will... [More]

Studio Ghibli and AI guardrails (a plea for free software)

Published by marco on in Technology

A little while ago, OpenAI released a tool that is much better at copying styles from other artists than previous models had been. This one was particularly good at copying the Studio Ghibli style.

So, people are generating all sorts of moments in history with ChatGPT in Studio Ghibli style. The tweet no fucking way dude, this studio ghibli thing has gone way too far (Twitter) provides a provocative example.

 9 11 in Studio Ghibli style

It’s pretty good, bro.

Be me.

Wanna try it.

So I went to Copilot and asked it to render... [More]

QAnon is a conspiracy, while Russiagate is the truth

Published by marco on in Philosophy

As usual, Natalie Wynn puts together an interesting analysis of a difficult issue. As usual, in a giant video; this one is 160 minutes long. It’s not a well-balanced analysis—as you can tell from my article’s title—but entertaining enough and honestly about the best we can hope for, at this point. I don’t think anyone who’s researching conspiracy theories is likely to ever notice the conspiracy theories that “their own side” believed in or continues to believe in.

CONSPIRACY by Contrapoints (YouTube)

At 20:00,

I’m... [More]

3 days Ago

We have always manufactured consent

Published by marco on in Quotes

“All over the world, wherever there are capitalists, freedom of the press means freedom to buy up newspapers, to buy writers, to bribe, buy and fake “public opinion” for the benefit of the bourgeoisie.”
A Letter To G. Myasnikov by V. I. Lenin on August, 5, 1921 (Marxists.org)

 Lenin on Manufacturing Consent

4 days Ago

Links and Notes for April 11th, 2025

Published by marco on in Notes

Below are links to articles, highlighted passages[1], and occasional annotations[2] for the week ending on the date in the title, enriching the raw data from Instapaper Likes and Twitter. They are intentionally succinct, else they’d be articles and probably end up in the gigantic backlog of unpublished drafts. YMMV.

[1] Emphases are added, unless otherwise noted.
[2] Annotations are only lightly edited and are largely contemporaneous.

Table of Contents

Live your life in small bytes

Published by marco on in Philosophy

The article Is it Possible to Read Walden When You Own a Smartphone? by Rebecca Baumgartner (3 Quarks Daily) writes of reading Thoreau in the 21st century,

“[…] is it the content that’s boring, or are we simply less capable of appreciating it? I propose that we’re the boring ones. Or more precisely, our thinking is too small and frantic to follow where Thoreau’s mind goes. It’s the same reason we find meditation so hard and boring. It’s the same reason most of us haven’t stared off into space at all in the past 15... [More]”