The Antenna

finding signal in the noise

Items collected from feeds in snapshots.txt

snapshots

(date: 2025-04-03 14:09:09)


A Model Context Protocol Server (MCP) for Microsoft Paint

date: 2025-04-03, from: Geoffrey Hunntley’s blog

Why did I do this? I have no idea, honest, but it now exists. It has been over 10 years since I last had to use the Win32 API, and part of me was slightly curious about how the Win32 interop works with Rust.

Anywhoooo, below you'll find


https://ghuntley.com/mcp/


Part 3 – Babylon.js 8.0: glTF, USDz, and WebXR advancements

date: 2025-04-03, from: Windows Developer Blog

The latest Babylon.js 8.0 release includes several updates to assist developers in creating beautiful and performant 3D experiences.

Updated glTF Support — KHR_materials_diffuse_transmission

Babylon.js 8.0 continues the lo

The post Part 3 – Babylon.js 8.0: glTF, USDz, and WebXR advancements appeared first on Windows Developer Blog.


https://blogs.windows.com/windowsdeveloper/2025/04/03/part-3-babylon-js-8-0-gltf-usdz-and-webxr-advancements/


Felix Oliver Friedrich pushed to project branch vy64 at Felix Oliver Friedrich / Oberon A2

date: 2025-04-03, updated: 2025-04-03, from: Oberon A2 repository

Felix Oliver Friedrich (bd8ea88c) at 03 Apr 21:53

all files compile on 64bit


https://gitlab.inf.ethz.ch/felixf/oberon/-/commit/bd8ea88ca09b7acb789ae80ab393968beb0cc8d1


Altair Basic Source Code

date: 2025-04-03, from: Michael Tsai

Bill Gates (via Slashdot): It feels like just yesterday that Paul and I were hunched over the PDP-10 in Harvard’s computer lab, writing the code that would become the first product of our new company. That code remains the coolest code I’ve ever written to this day—and you can see it for yourself at the […]


https://mjtsai.com/blog/2025/04/03/altair-basic-source-code/


France Fines Apple Over App Tracking Transparency

date: 2025-04-03, from: Michael Tsai

Reuters (PDF, Slashdot): Apple was hit with a 150 million euro ($162.4 million) fine by French antitrust regulators on Monday for abusing its dominant position in mobile app advertising on its devices via a privacy control tool. […] “While we are disappointed with today’s decision, the French Competition Authority has not required any specific changes […]


https://mjtsai.com/blog/2025/04/03/france-fines-apple-over-app-tracking-transparency/


France Rejects Backdoor Mandate

date: 2025-04-03, from: Michael Tsai

Joe Mullin: In a moment of clarity after initially moving forward a deeply flawed piece of legislation, the French National Assembly has done the right thing: it rejected a dangerous proposal that would have gutted end-to-end encryption in the name of fighting drug trafficking. Despite heavy pressure from the Interior Ministry, lawmakers voted Thursday night […]


https://mjtsai.com/blog/2025/04/03/france-rejects-backdoor-mandate/


Apple Intelligence Available in EU

date: 2025-04-03, from: Michael Tsai

Apple: Starting today, with the availability of iOS 18.4, iPadOS 18.4, and macOS Sequoia 15.4, Apple Intelligence features are now available in many new languages, including French, German, Italian, Portuguese (Brazil), Spanish, Japanese, Korean, and Chinese (simplified) — as well as localized English for Singapore and India — and are accessible in nearly all regions […]


https://mjtsai.com/blog/2025/04/03/apple-intelligence-available-in-eu/


Thunderbird plans to launch open source alternatives to Gmail, Google Calendar and Office 365

date: 2025-04-03, from: Liliputing

Mozilla Thunderbird is a free and open source email client, calendar, and contact application that’s been available for more than two decades. It first launched at a time when Gmail wasn’t a thing and most web-based email service providers offered only a few megabytes of storage space. But the demand for desktop-only email applications has […]

The post Thunderbird plans to launch open source alternatives to Gmail, Google Calendar and Office 365 appeared first on Liliputing.


https://liliputing.com/thunderbird-plans-to-launch-open-source-alternatives-to-gmail-google-calendar-and-office-365/


Did an LLM help write Trump’s trade plan?

date: 2025-04-03, from: Gary Marcus blog

Probably yes


https://garymarcus.substack.com/p/did-an-llm-help-write-trumps-trade


@Dave Winer’s linkblog (date: 2025-04-03, from: Dave Winer’s linkblog)

Tesla's only growing business was just kneecapped by Trump's tariffs.


https://electrek.co/2025/04/03/tesla-only-growing-business-kneecapped-trump-tariffs/


Expanso Wins 2025 Data Breakthrough Award

date: 2025-04-03, from: Bacalhau Blog

for Open Source Data Platform of the Year


https://blog.bacalhau.org/p/expanso-wins-2025-data-breakthrough


Breaking the STEM Stereotype

date: 2025-04-03, from: Guy Kawasaki blog

Yamilée Toussaint’s Dance Revolution.


https://guykawasaki.substack.com/p/breaking-the-stem-stereotype


Podcast: OpenAI’s Studio Ghibli AI Is ‘An Insult to Life Itself’

date: 2025-04-03, from: 404 Media Group

Jason, Sam, and Emanuel talk about Miyazaki being turned into a meme, the guys suing OnlyFans after being surprised to learn they were not actually talking to models, and the depravity of “brainrot” AI.


https://www.404media.co/podcast-openais-studio-ghibli-ai-is-an-insult-to-life-itself/


Eventually, You’ll Pay

date: 2025-04-03, updated: 2025-04-03, from: One Foot Tsunami


https://onefoottsunami.com/2025/04/03/sooner-or-later-youll-pay/


‘Sea of Idiocy:’ Economists Say Trump Tariffs Will Raise Price of Switch 2 and Everything Else

date: 2025-04-03, from: 404 Media Group

“The policy announcement is astonishing for its stupidity. It seems like a joke!”


https://www.404media.co/sea-of-idiocy-economists-say-trump-tariffs-will-raise-price-of-switch-2-and-everything-else/


@Dave Winer’s linkblog (date: 2025-04-03, from: Dave Winer’s linkblog)

Trump’s new tariff math looks a lot like ChatGPT’s.


https://www.theverge.com/news/642620/trump-tariffs-formula-ai-chatgpt-gemini-claude-grok


Intel is discontinuing its Unison app for connecting smartphones and PCs (just two years after launch)

date: 2025-04-03, from: Liliputing

I’ve lost count of the number of companies that have launched software designed to bridge the divide between smartphones and PCs. Microsoft has Phone Link. Samsung has Samsung Flow. And over the years I’ve seen PC makers introduce and eventually discontinue a bunch of proprietary solutions. Last year Intel introduced its entry in this space: […]

The post Intel is discontinuing its Unison app for connecting smartphones and PCs (just two years after launch) appeared first on Liliputing.


https://liliputing.com/intel-is-discontinuing-its-unison-app-for-connecting-smartphones-and-pcs-just-two-years-after-launch/


First look at the modern attr()

date: 2025-04-03, updated: 2025-04-03, from: Simon Willison’s Weblog

First look at the modern attr()

Chrome 133 (released February 25th 2025) was the first browser to ship support for the advanced CSS attr() function (MDN), which lets attr() be used to compose values using types other than strings.

Ahmad Shadeed explores potential applications of this in detail, trying it out for CSS grid columns, progress bars, background images, animation delays and more.

I like this example that uses the rows=“5” attribute on a <textarea> to calculate its max-height - here wrapped in a feature detection block:

@supports (x: attr(x type(*))) {
  textarea {
    min-height: calc(
      attr(rows type(<number>)) * 50px
    );
  }
}

That type(<number>) is the new syntax.

Many of Ahmad’s examples can be achieved today across all browsers using a slightly more verbose CSS custom property syntax.

Here are the tracking issues for CSS values support in attr() for Firefox (opened 17 years ago) and WebKit (16 years ago).

<p>Tags: <a href="https://simonwillison.net/tags/css">css</a>, <a href="https://simonwillison.net/tags/css-custom-properties">css-custom-properties</a>, <a href="https://simonwillison.net/tags/chrome">chrome</a>, <a href="https://simonwillison.net/tags/web-standards">web-standards</a>, <a href="https://simonwillison.net/tags/ahmad-shadeed">ahmad-shadeed</a></p> 


https://simonwillison.net/2025/Apr/3/first-look-at-the-modern-attr/#atom-everything


smartfunc

date: 2025-04-03, updated: 2025-04-03, from: Simon Willison’s Weblog

smartfunc

Vincent D. Warmerdam built this ingenious wrapper around my LLM Python library which lets you build LLM wrapper functions using a decorator and a docstring:

from smartfunc import backend

@backend("gpt-4o")
def generate_summary(text: str):
    """Generate a summary of the following text: {{ text }}"""
    pass

summary = generate_summary(long_text)

It works with LLM plugins so the same pattern should work against Gemini, Claude and hundreds of others, including local models.

It integrates with more recent LLM features too, including async support and schemas, by introspecting the function signature:

class Summary(BaseModel):
    summary: str
    pros: list[str]
    cons: list[str]

@async_backend("gpt-4o-mini")
async def generate_poke_desc(text: str) -> Summary:
    "Describe the following pokemon: {{ text }}"
    pass

pokemon = await generate_poke_desc("pikachu")

Vincent also recorded a 12 minute video walking through the implementation and showing how it uses Pydantic, Python’s inspect module and typing.get_type_hints() function.

<p>Tags: <a href="https://simonwillison.net/tags/llm">llm</a>, <a href="https://simonwillison.net/tags/python">python</a>, <a href="https://simonwillison.net/tags/generative-ai">generative-ai</a>, <a href="https://simonwillison.net/tags/ai">ai</a>, <a href="https://simonwillison.net/tags/llms">llms</a>, <a href="https://simonwillison.net/tags/vincent-d-warmerdam">vincent-d-warmerdam</a></p> 


https://simonwillison.net/2025/Apr/3/smartfunc/#atom-everything


Questions about President Trump from a former psychology professor

date: 2025-04-03, from: Gary Marcus blog

Is he well?


https://garymarcus.substack.com/p/questions-about-president-trump-from


Felix Oliver Friedrich pushed to project branch vy64 at Felix Oliver Friedrich / Oberon A2

date: 2025-04-03, updated: 2025-04-03, from: Oberon A2 repository

Felix Oliver Friedrich (d43baa3b) at 03 Apr 15:46

a few more


https://gitlab.inf.ethz.ch/felixf/oberon/-/commit/d43baa3b165d862cd9c16bbfd5a812a460ad9355


China’s Controversial Court Rulings on AI Output—and How It May Affect People in the US

date: 2025-04-03, from: Authors Union blogs

Chinese courts are recognizing AI-generated works as copyrightable, and these rulings could potentially impact those in the US under certain circumstances.


https://www.authorsalliance.org/2025/04/03/chinas-controversial-court-rulings-on-ai-output-and-how-it-may-affect-people-in-the-us/


@Dave Winer’s linkblog (date: 2025-04-03, from: Dave Winer’s linkblog)

Waltz’s team set up at least 20 Signal group chats for crises across the world.


https://www.politico.com/news/2025/04/02/waltzs-team-set-up-at-least-20-signal-group-chats-for-crises-across-the-world-00266845


Curiouser and curiouser

date: 2025-04-03, from: Status-Q blog

Amongst the more bizarre aspects of the Trump tariff announcements last night were the figures he came up with for the tariffs being charged by other countries. Even people who are as unfamiliar with economics as I am wondered, “Where on earth did he get those from?” They didn’t seem to bear any resemblance to Continue Reading


https://statusq.org/archives/2025/04/03/13111/


Felix Oliver Friedrich pushed to project branch vy64 at Felix Oliver Friedrich / Oberon A2

date: 2025-04-03, updated: 2025-04-03, from: Oberon A2 repository

Felix Oliver Friedrich (b1251cc3) at 03 Apr 12:51

a few more steps


https://gitlab.inf.ethz.ch/felixf/oberon/-/commit/b1251cc3253319c6b0f451c218fd171458f5e506


@Dave Winer’s linkblog (date: 2025-04-03, from: Dave Winer’s linkblog)

I’ve been friends with Om for decades, but he’s wrong about Bluesky. It’s a clone of Twitter, that’s why it’s so popular, but it has the same flaw Twitter had — it could be turned against its users by an acquiring billionaire. He and his co-author fell for their hype.


https://crazystupidtech.com/archive/bluesky-isnt-just-another-twitterx-competitor-it/


@Dave Winer’s linkblog (date: 2025-04-03, from: Dave Winer’s linkblog)

Trump’s Fight Against Antisemitism Has Become Fraught for Many Jews.


https://www.nytimes.com/2025/04/02/us/jews-trump.html


Will Malignant Stupidity Kill the World Economy?

date: 2025-04-03, from: Paul Krugman

Trump’s tariffs are a disaster. His policy process is worse.


https://paulkrugman.substack.com/p/will-careless-stupidity-kill-the


What’s up with Linux on Snapdragons?

date: 2025-04-03, from: Libre News

Linux support for the Snapdragon X Elite is not there yet, but Tuxedo has a plan to ship their ARM-based Linux laptop anyway.


https://thelibre.news/snadpragon-laptops-are-pretty-rough-on-linux-but-theres-hope-2/


Stay on schedule with Raspberry Pi Pico W and an e-ink dashboard

date: 2025-04-03, from: Raspberry Pi News (.com)

A Raspberry Pi Pico W–powered e-ink display helps this maker stay on track with the demands of a busy schedule.

The post Stay on schedule with Raspberry Pi Pico W and an e-ink dashboard appeared first on Raspberry Pi.


https://www.raspberrypi.com/news/stay-on-schedule-with-raspberry-pi-pico-w-and-an-e-ink-dashboard/


@Dave Winer’s linkblog (date: 2025-04-03, from: Dave Winer’s linkblog)

Trump wanted people to inject chlorine, take ivermectin, to recover from Covid, now prescribes same for the world economy.


https://heathercoxrichardson.substack.com/p/april-2-2025-wednesday?publication_id=20533&post_id=160478600&isFreemail=true&r=w33x&triedRedirect=true


Felix Oliver Friedrich pushed to project branch vy64 at Felix Oliver Friedrich / Oberon A2

date: 2025-04-03, updated: 2025-04-03, from: Oberon A2 repository

Felix Oliver Friedrich (4b9505b7) at 03 Apr 09:33

continued with adaptation


https://gitlab.inf.ethz.ch/felixf/oberon/-/commit/4b9505b7b54cc89e6b00f1d304f13fd90a98bd95


@Dave Winer’s linkblog (date: 2025-04-03, from: Dave Winer’s linkblog)

Inside ICE Air: What It’s Like to Be a Deportation Flight Attendant.


https://www.propublica.org/article/inside-ice-air-deportation-flights


291: Merlin’s Manuscript

date: 2025-04-03, from: Fix the News

Plus, Thailand bans smacking kids, solar canals, India’s super highways, and good news on dementia in the United States, wildlife crossings in Colorado, and Finland going coal-free ahead of schedule.


https://fixthenews.com/291-merlins-manuscript/


Many second-hand electric cars are cheaper up-front than their petrol equivalents

date: 2025-04-03, from: Hannah Richie at Substack

And no, it’s not just for old ones that have done lots of miles.


https://www.sustainabilitybynumbers.com/p/used-electric-car-costs


The VCR’s Last Stand

date: 2025-04-03, updated: 2025-04-03, from: Tedium site

It’s pretty much the answer to a trivia question at this point, but there was once a version of VHS that looked better than DVDs. Really.


https://feed.tedium.co/link/15204/16997781/d-vhs-d-theater-digital-vcr-history


@Seth Erickson’s Mastodon feed (date: 2025-04-03, from: Seth Erickson’s Mastodon feed)

Nicely designed scholarly web project: stones.computer


https://hachyderm.io/@serickson/114271765657834315


Minimal CSS-only blurry image placeholders

date: 2025-04-03, updated: 2025-04-03, from: Simon Willison’s Weblog

Minimal CSS-only blurry image placeholders

Absolutely brilliant piece of CSS ingenuity by Lean Rada, who describes a way to implement blurry placeholder images using just CSS, with syntax like this:

<img src="" style="--lqip:192900">

That 192900 number encodes everything needed to construct the placeholder - it manages to embed a single base color and six brightness components (in a 3x2 grid) in 20 bits, then encodes those as an integer in the roughly 2 million available values between -999,999 and 999,999 - beyond which range Lean found some browsers would start to lose precision.

The implementation for decoding that value becomes a bunch of clever bit-fiddling CSS expressions to expand it into further CSS variables:

[style*="--lqip:"] {
  --lqip-ca: mod(round(down, calc((var(--lqip) + pow(2, 19)) / pow(2, 18))), 4);
  --lqip-cb: mod(round(down, calc((var(--lqip) + pow(2, 19)) / pow(2, 16))), 4);
  /* more like that */
}

Which are expanded to even more variables with code like this:

--lqip-ca-clr: hsl(0 0% calc(var(--lqip-ca) / 3 * 100%));
--lqip-cb-clr: hsl(0 0% calc(var(--lqip-cb) / 3 * 100%));

And finally rendered using a CSS gradient definition that starts like this:

[style*="--lqip:"] {
  background-image:
    radial-gradient(50% 75% at 16.67% 25%, var(--lqip-ca-clr), transparent),
    radial-gradient(50% 75% at 50% 25%, var(--lqip-cb-clr), transparent),
    /* ... */
    linear-gradient(0deg, var(--lqip-base-clr), var(--lqip-base-clr));
}

The article includes several interactive explainers (most of which are also powered by pure CSS) illustrating how it all works.

Their Node.js script for converting images to these magic integers uses Sharp to resize the image to 3x2 and then use the Oklab perceptually uniform color space (new to me, that was created by Björn Ottosson in 2020) to derive the six resulting values.

<p><small></small>Via <a href="https://news.ycombinator.com/item?id=43523220">Hacker News</a></small></p>


<p>Tags: <a href="https://simonwillison.net/tags/css">css</a>, <a href="https://simonwillison.net/tags/css-custom-properties">css-custom-properties</a></p> 


https://simonwillison.net/2025/Apr/3/minimal-css-only-blurry-image-placeholders/#atom-everything


Quoting Nolan Lawson

date: 2025-04-03, updated: 2025-04-03, from: Simon Willison’s Weblog

I started using Claude and Claude Code a bit in my regular workflow. I’ll skip the suspense and just say that the tool is way more capable than I would ever have expected. The way I can use it to interrogate a large codebase, or generate unit tests, or even “refactor every callsite to use such-and-such pattern” is utterly gobsmacking. […]

Here’s the main problem I’ve found with generative AI, and with “vibe coding” in general: it completely sucks out the joy of software development for me. […]

This is how I feel using gen-AI: like a babysitter. It spits out reams of code, I read through it and try to spot the bugs, and then we repeat.

Nolan Lawson, AI ambivalence

<p>Tags: <a href="https://simonwillison.net/tags/ai-assisted-programming">ai-assisted-programming</a>, <a href="https://simonwillison.net/tags/claude">claude</a>, <a href="https://simonwillison.net/tags/generative-ai">generative-ai</a>, <a href="https://simonwillison.net/tags/ai">ai</a>, <a href="https://simonwillison.net/tags/llms">llms</a>, <a href="https://simonwillison.net/tags/nolan-lawson">nolan-lawson</a></p> 


https://simonwillison.net/2025/Apr/3/nolan-lawson/#atom-everything


@Dave Winer’s linkblog (date: 2025-04-03, from: Dave Winer’s linkblog)

“Every living American was raised under the Bill of Rights.”


http://scripting.com/2025/04/02.html#a140506


Language evolves, so we must too. On generative art

date: 2025-04-03, from: Lean Rada’s blog

A year ago, I stood by the statement that AI Art is not Generative Art, arguing that the term ‘generative art’ is an art movement in itself that is separate from AI art.

Safe to say, it has been a losing battle.

Even the converse, “generative art is not necessarily AI art”, would be met by confusion from most people. ‘Generative’ has been equated to AI.

Fidenza, a generative artwork system, by Tyler Hobbs

Exhibition

r/generative - Has the word ‘generative’ been hijacked by AI?

I think it’s time to move on to a different label. Words are for communication, and if a word results in failure of communication, we should either agree on a common definition (we can’t) or just use better word.

So, what are the other words for this art?

If you haven’t read the mentioned prequel post, you may not understand what “art” I’m taliking about. There’s one example above, but here’s more.

Fortunately, there are already well-established terms to describe the medium:

It’s just a matter of choosing one and leaving the now-loaded ‘generative’ term behind.

By the process of elimination, I think ‘procedural art’ is the best term to use. Let me explain each of the other options.

Why not Algorithmic

‘Algorithmic art’ is a top candidate, for sure, and many others have opted for it in the exodus from ‘generative’. Algorithmic art and procedural art are pretty much synonymous, so why or why not?

Pros: Unlike generative art, algorithmic art doesn’t have the unfortunate connotation from sharing a word with ‘generative AI’.

Cons: While ‘algorithmic art’ doesn’t immediately invoke visions of generative AI, the term ‘algortihm’ under the broad definition of a ‘set of instructions’ would still include machine learning models.

In fact, the word ‘algorithm’ has also entered commonplace usage via ‘social media algorithms’, which are yet another application of machine learning and statistics. In this sense, it is used interchangeably with the recommender system used to construct personalised content feeds. “The algorithm” is a black box, and the word suggests a system beyond understanding. This connotation is not in the spirit of procedural art, where the procedures are authored knowingly.

Another distinction is that while an algorithm is usually defined as a process that takes some input and processes it into an output, most procedural art programs don’t need inputs at all. They create things from scratch, from maths, from chaos. OK, technically random seeds would be considerend input. But on a conceptual level, no inputs!

Why not Creative Coding

First of all, it’s such a vague phrase. Why not ‘dynamic programming’? 😉

Anyway, that’s not the main point.

Procedural art has grown beyond just coding. I would even say most procedural artists don’t use code, but nodes and graphs. The majority of these procedural art would be used in video games and movie VFX.

Instead of coding, one would use node-based programming connecting nodes that represent operations, building up a graph to produce a complex image or even a 3D model.

Node graph and its output
Shahriar Shahrabi - Procedural Chinese Landscape Painting in Geometry Nodes

And it’s not just for industrial VFX purposes. It’s also used mainly for multimedia, interactive, and installation art.

Sydney Opera House with a projected image on it
Audiovisual projection by Obscura Digital using TouchDesigner, a node-based software. (Picture from YouTube Symphony Orchestra)

So… yeah this genre of art, is not coding.

OK, then why Procedural Art

Because the ‘procedure’, the ‘how’ is the core feature of procedural art.

In procedural art, we describe precisely how the artwork is made. And it’s far from describing to a chatbot in plain English. The how is well-defined and understood. Every shape, stroke, their positions, colours, ranges, constraints, rules of interaction, etc., are all described in some precise way. Sometimes we go down to individual pixel level as in a shader. Sometimes at a more geometric level, like in turtle or vector graphics. Sometimes on a mathematical level, like fractals. Sometimes it’s even a simulation with emergent properties!

Procedural art is more about the process, watching things unfold and emerge, rather than the final output that algorithms are obsessed about.

Procedural art is about the interaction of rules in interesting ways, regardless of whether the rules were written in code, or connected as a graph, or wired in redstone dust.

Finally, procedural art is not AI art. [Insert same exact argument as AI Art is not Generative Art but with a different name, here]. For funsies, here’s a quick guide: In AI art, you describe what the artwork should be. In procedural art, you describe how the artwork could be.

What now

Language evolves because of general usage. See: AI, crypto, cyber, generative. As a fellow user of language, I must evolve my languaging as well — starting with this website.

I have updated the following pages to either disambiguate or even completely replace mentions of “generative art”:

For the record, I’m not rejecting the other perfectly acceptable terms like algorithmic art and creative coding. My art is still algorithmic, and it’s the result of creative coding. I’m just moving away from ‘generative’.

I’m sure we’ll settle on a universal term soon. Language evolves, after all.

Appendix

Searches for “generative art” over time
Note saying: I like your algorithmic art
A visitor has left me this note, which made me rethink


https://leanrada.com/notes/language-evolves-generative-art/?ref=rss


@Dave Winer’s linkblog (date: 2025-04-02, from: Dave Winer’s linkblog)

Central U.S. braces for powerful tornadoes and flash floods. (No FEMA.)


https://www.npr.org/2025/04/02/nx-s1-5349304/storms-tornadoes-flooding-midwest-south


@Dave Winer’s linkblog (date: 2025-04-02, from: Dave Winer’s linkblog)

Adam Schiff: Putin Sees Trump as a ‘Child’ Who Can Be Easily Manipulated.


https://foreignpolicy.com/2025/04/02/adam-schiff-putin-trump-ukraine-signalgate-witkoff/


@Dave Winer’s linkblog (date: 2025-04-02, from: Dave Winer’s linkblog)

Apple leads a drop in tech stocks after Trump tariff announcement.


https://www.cnbc.com/2025/04/02/-apple-leads-drop-in-tech-stocks-after-trump-tariff-announcement.html


@Dave Winer’s linkblog (date: 2025-04-02, from: Dave Winer’s linkblog)

Dow futures tumble 1,000 points on fear Trump’s tariffs will spark trade war.


https://bsky.app/notifications


553. The Last Viking: Warrior of the New Rome (Part 2)

date: 2025-04-02, from: This is history podcast

Harald Hardrada; exiled prince of Norway and mercenary, has landed in the greatest city on Earth: Constantinople. There he joins one of the most prestigious military organisations in the world, the Varangian Guard, charged with protecting the Emperor. Almost the next ten years of Harald’s young life are spent at war protecting the city from […]

The post 553. The Last Viking: Warrior of the New Rome (Part 2) appeared first on The Rest is History.


https://therestishistory.com/553-the-last-viking-warrior-of-the-new-rome-part-2/


@Dave Winer’s linkblog (date: 2025-04-02, from: Dave Winer’s linkblog)

Immigrant toddlers ordered to appear in court alone.


https://www.texastribune.org/2018/06/27/immigrant-toddlers-ordered-appear-court-alone/


Trump Goes Crazy on Trade

date: 2025-04-02, from: Paul Krugman

“Liberation Day” is even worse than expected


https://paulkrugman.substack.com/p/trump-goes-crazy-on-trade


@Robert’s feed at BlueSky (date: 2025-04-02, from: Robert’s feed at BlueSky)

Yet another wrong committed by the spoiled orange boy. Unfortunately not surprising. 👇

[contains quote post or other embedded content]


https://bsky.app/profile/rsdoiel.bsky.social/post/3llu6navz3223


Lilbits: Framework Laptop 12, Dasung Paperlike 13K, and Snapdragon 8s Gen 3

date: 2025-04-02, from: Liliputing

Frameworks is expanding its modular, repairable laptop lineup this year with the introduction of the first Framework Laptop 12. It’s the company’s first laptop with a touchscreen display and 360-degree hinge, the first with a 12.2 inch screen, and the first that’s positioned as more of a budget device than a premium system: it’s expected […]

The post Lilbits: Framework Laptop 12, Dasung Paperlike 13K, and Snapdragon 8s Gen 3 appeared first on Liliputing.


https://liliputing.com/lilbits-framework-laptop-12-dasung-paperlike-13k-and-snapdragon-8s-gen-3/


@Robert’s feed at BlueSky (date: 2025-04-02, from: Robert’s feed at BlueSky)

Well said 👇

[contains quote post or other embedded content]


https://bsky.app/profile/rsdoiel.bsky.social/post/3llu646v3bs23


Felix Oliver Friedrich pushed to project branch vy64 at Felix Oliver Friedrich / Oberon A2

date: 2025-04-02, updated: 2025-04-02, from: Oberon A2 repository

Felix Oliver Friedrich (eae32bde) at 02 Apr 21:42

a few ants modules


https://gitlab.inf.ethz.ch/felixf/oberon/-/commit/eae32bde5287031a2446a1b22c57cd018f8668b2


Moving Targets

date: 2025-04-02, from: Michael Tsai

Nick Lockwood: Airdrop on macOS has this “great” feature where it displays receivers asynchronously as it finds them and they are sorted alphabetically, so the order shuffles randomly under the mouse as you are trying to clickBrought to you by the guy who sent a file to a random colleague when trying to share it […]


https://mjtsai.com/blog/2025/04/02/moving-targets/


Swift Testing: Return Errors From #expect(throws:)

date: 2025-04-02, from: Michael Tsai

Also new in Swift 6.1, ST-0006: We offer three variants of #expect(throws:):One that takes an error type, and matches any error of the same type;One that takes an error instance (conforming to Equatable) and matches any error that compares equal to it; andOne that takes a trailing closure and allows test authors to write arbitrary […]


https://mjtsai.com/blog/2025/04/02/swift-testing-return-errors-from-expectthrows/


Severed Edits

date: 2025-04-02, from: Michael Tsai

Ernie Smith (via Hacker News): But it of course raises the question: Do they make Apple‘s shows on Macs? As the second season of Severance ended in dramatic fashion, Apple decided to answer that question, and the answer was … surprisingly confusing. […] In the video Apple released, which highlights the Mac-driven editing process that […]


https://mjtsai.com/blog/2025/04/02/severed-edits/


Rebuilding the Social Security Administration’s Codebase

date: 2025-04-02, from: Michael Tsai

Makena Kelly (Hacker News): The project is being organized by Elon Musk lieutenant Steve Davis, multiple sources who were not given permission to talk to the media tell WIRED, and aims to migrate all SSA systems off COBOL, one of the first common business-oriented programming languages, and onto a more modern replacement like Java within […]


https://mjtsai.com/blog/2025/04/02/rebuilding-the-social-security-administrations-codebase/


@Dave Winer’s linkblog (date: 2025-04-02, from: Dave Winer’s linkblog)

Tesla car sales lurch as Elon Musk hits the gas for President Trump.


https://www.politico.com/news/2025/04/02/elon-musk-alliance-with-trump-turns-off-potential-tesla-buyers-00249228


@Dave Winer’s linkblog (date: 2025-04-02, from: Dave Winer’s linkblog)

WordPress maker Automattic lays off 16% of staff.


https://techcrunch.com/2025/04/02/wordpress-maker-automattic-lays-off-16-of-staff/


Earners vs Owners

date: 2025-04-02, from: Prof. Scott Galloway, No Mercy/No Malace blog

It’s tax season in the U.S. At least 60 million Americans have taxes that are so simple, the IRS could do them automatically and just send them the bill. Instead, the average American spends $270 and 13 hours filing their taxes each year. Is anyone surprised that the IRS is the least popular federal agency, […]

The post Earners vs Owners appeared first on No Mercy / No Malice.


https://www.profgalloway.com/earners-vs-owners-2/


My Pen Plotter Collection

date: 2025-04-02, from: Biosrhythm blog

Amazing to think I’ve been playing with pen plotters for over 10 years (longer if you count my first plotter, the Commodore 1520 with my VIC-20). What started out as a curiosity has continued to keep me engaged as a retro computing enthusiast and captivated as an artist. I thought I’d go back in time […]


https://biosrhythm.com/?p=3004


Samsung Galaxy Tab S10 FE brings a modest spec bump, Galaxy Tab S10 FE+ gets a bigger screen

date: 2025-04-02, from: Liliputing

Samsung’s latest mid-range tablets arrive this week with the new Samsung Galaxy Tab S10 FE and Galaxy Tab S10 FE+ set to go on sale in select markets starting April 3, 2025. At first glance, the new tablets look a lot like the Galaxy Tab S9 FE series that launched about a year and a half ago. But […]

The post Samsung Galaxy Tab S10 FE brings a modest spec bump, Galaxy Tab S10 FE+ gets a bigger screen appeared first on Liliputing.


https://liliputing.com/samsung-galaxy-tab-s10-fe-brings-a-modest-spec-bump-galaxy-tab-s10-fe-gets-a-bigger-screen/


Forks or No?

date: 2025-04-02, updated: 2025-04-02, from: One Foot Tsunami


https://onefoottsunami.com/2025/04/02/forks-or-no/


PocketCloud is a portable NAS with a docking station for home use (crowdfunding)

date: 2025-04-02, from: Liliputing

The PocketCloud is a modular storage solution designed to function as a portable hard drive, a backup device for camera SD cards, and a network-attached storage solution with wireless and wired capabilities. It does all of that thanks to a two-part design. Most of the hardware is built into a small, portable gadget that lets you […]

The post PocketCloud is a portable NAS with a docking station for home use (crowdfunding) appeared first on Liliputing.


https://liliputing.com/pocketcloud-is-a-portable-nas-with-a-docking-station-for-home-use-crowdfunding/


T-Mobile Shows Users the Names, Pictures, and Exact Locations of Random Children

date: 2025-04-02, from: 404 Media Group

“I would log in and I couldn’t see my children but I could see a kid in California. I refreshed and would see a different child.”


https://www.404media.co/t-mobile-shows-users-the-names-pictures-and-exact-locations-of-random-children/


MediaTek Kompanio Ultra is made for high-performance Chromebooks… and maybe more?

date: 2025-04-02, from: Liliputing

MediaTek’s ARM-based processors are often found in entry-level Chromebooks. But the company is taking aim at the premium Chromebook Plus platform with a new chip for high-performance laptops. The MediaTek Kompanio Ultra 910 is the first chip in the new Kompanio Ultra family, and it features 8 high-performance CPU cores, Immortalis-G925MC 11 graphics with support for […]

The post MediaTek Kompanio Ultra is made for high-performance Chromebooks… and maybe more? appeared first on Liliputing.


https://liliputing.com/mediatek-kompanio-ultra-is-made-for-high-performance-chromebooks-and-maybe-more/


Nintendo Switch 2 launches June 5 for $450, has a 7.9 inch FHD 120 Hz HDR display and new accessories

date: 2025-04-02, from: Liliputing

The Nintendo Switch has been a wildly successful game console since it first launched in 2017. So what’s Nintendo planning for its next game console? Something similar… but bigger in just about every way that matters. The Nintendo Switch 2 will be available June 5 for $450. It goes up for pre-order on April 9. And it has […]

The post Nintendo Switch 2 launches June 5 for $450, has a 7.9 inch FHD 120 Hz HDR display and new accessories appeared first on Liliputing.


https://liliputing.com/nintendo-switch-2-launches-june-5-for-450-has-a-7-9-inch-fhd-120-hz-hdr-display-and-new-accessories/


Why Every Entrepreneur Needs a Little Delusion

date: 2025-04-02, from: Guy Kawasaki blog

Entrepreneurship is not for the faint of heart.


https://guykawasaki.substack.com/p/why-every-entrepreneur-needs-a-little


Composite primary keys in Django

date: 2025-04-02, updated: 2025-04-02, from: Simon Willison’s Weblog

Composite primary keys in Django

Django 5.2 is out today and a big new feature is composite primary keys, which can now be defined like this:

class Release(models.Model):
    pk = models.CompositePrimaryKey(
        "version", "name"
    )
    version = models.IntegerField()
    name = models.CharField(max_length=20)

They don’t yet work with the Django admin or as targets for foreign keys.

Other smaller new features include:

5.2 is also an LTS release, so it will receive security and data loss bug fixes up to April 2028.

<p>Tags: <a href="https://simonwillison.net/tags/django">django</a>, <a href="https://simonwillison.net/tags/python">python</a></p> 


https://simonwillison.net/2025/Apr/2/composite-primary-keys-in-django/#atom-everything


@Dave Winer’s linkblog (date: 2025-04-02, from: Dave Winer’s linkblog)

In Alien Enemies Case, Many With Open Asylum Claims Allegedly Removed.


https://www.lawfaremedia.org/article/in-alien-enemies-case--many-with-open-asylum-claims-allegedly-removed


AI has (sort of) passed the Turing Test; here’s why that hardly matters

date: 2025-04-02, from: Gary Marcus blog

Don’t panic


https://garymarcus.substack.com/p/ai-has-sort-of-passed-the-turing


‘I Want to Make You Immortal:’ How One Woman Confronted Her Deepfakes Harasser

date: 2025-04-02, from: 404 Media Group

“After discovering this content, I’m not going to lie… there are times it made me not want to be around any more either,” she said. “I literally felt buried.” 


https://www.404media.co/deepfakes-harassment-youtube-instagram-ai-generated-explicit-videos/


Vibe Coded AI App Generates Recipes for Cyanide Ice Cream and Cum Soup

date: 2025-04-02, from: 404 Media Group

A Y Combinator partner proudly launched an AI recipe app that told people how to make “Actual Cocaine” and a “Uranium Bomb.”


https://www.404media.co/vibe-coded-ai-app-generates-recipes-for-cyanide-ice-cream-and-cum-soup/


Felix Oliver Friedrich pushed to project branch vy64 at Felix Oliver Friedrich / Oberon A2

date: 2025-04-02, updated: 2025-04-02, from: Oberon A2 repository

Felix Oliver Friedrich (248948a5) at 02 Apr 15:18

missing file


https://gitlab.inf.ethz.ch/felixf/oberon/-/commit/248948a553508f7a48e9dc1210a822fc857d522c


Felix Oliver Friedrich pushed to project branch vy64 at Felix Oliver Friedrich / Oberon A2

date: 2025-04-02, updated: 2025-04-02, from: Oberon A2 repository

Felix Oliver Friedrich (5de89710) at 02 Apr 15:10

Voyager compiles on a 64 bit platform


https://gitlab.inf.ethz.ch/felixf/oberon/-/commit/5de8971072e744416b134ba3eaddd8c8e7a7fb59


Escaping POC Purgatory: Evaluation-Driven Development for AI Systems

date: 2025-04-02, from: O’Reilly Radar

Let’s be real: Building LLM applications today feels like purgatory. Someone hacks together a quick demo with ChatGPT and LlamaIndex. Leadership gets excited. “We can answer any question about our docs!” But then…reality hits. The system is inconsistent, slow, hallucinating—and that amazing demo starts collecting digital dust. We call this “POC purgatory”—that frustrating limbo where […]


https://www.oreilly.com/radar/escaping-poc-purgatory-evaluation-driven-development-for-ai-systems/


@Dave Winer’s linkblog (date: 2025-04-02, from: Dave Winer’s linkblog)

David Frum: No Tariff Carve-Out for Farmers.


https://www.theatlantic.com/politics/archive/2025/04/trump-tariff-carveout-farmers/682260/?gift=f35zZN0v_gDFE8xNwlQAHVfPnI_oK8aBbjCmLTzPyVg&utm_source=copy-link&utm_medium=social&utm_campaign=share


date: 2025-04-02, from: O’Reilly Radar

On April 22, 2022, I received an out-of-the-blue text from Sam Altman inquiring about the possibility of training GPT-4 on O’Reilly books. We had a call a few days later to discuss the possibility. As I recall our conversation, I told Sam I was intrigued, but with reservations. I explained to him that we could […]


https://www.oreilly.com/radar/copyright-aware-ai-lets-make-it-so/


Are AI Models Advanced Enough To Translate Literature? The Debate Is Roiling Publishing

date: 2025-04-02, from: The Markup blog

Major publishers are experimenting with automated translations, hundreds of which have already been produced


https://themarkup.org/artificial-intelligence/2025/04/02/are-ai-models-advanced-enough-to-translate-literature-the-debate-is-roiling-publishing


Stop Looking for Methods in the Madness

date: 2025-04-02, from: Paul Krugman

There’s no plan, secret or otherwise, behind Trump’s tariffs


https://paulkrugman.substack.com/p/stop-looking-for-methods-in-the-madness


Felix Oliver Friedrich pushed to project branch vy64 at Felix Oliver Friedrich / Oberon A2

date: 2025-04-02, updated: 2025-04-02, from: Oberon A2 repository

Felix Oliver Friedrich (77af7118) at 02 Apr 10:08

intermediate step


https://gitlab.inf.ethz.ch/felixf/oberon/-/commit/77af7118e88e7c24f97dd0b381b0ecee5cd78a83


@Dave Winer’s linkblog (date: 2025-04-02, from: Dave Winer’s linkblog)

‘It’s a bloodbath’: Massive wave of job cuts underway at US health agencies.


https://www.cnn.com/2025/04/01/health/staff-cuts-at-federal-health-agencies-have-begun/


@Dave Winer’s linkblog (date: 2025-04-02, from: Dave Winer’s linkblog)

Susan Crawford wins Wisconsin Supreme Court race as Democrats take stand against Donald Trump, Elon Musk.


https://www.wpr.org/news/susan-crawford-wins-wisconsin-supreme-court-race-democrats-elon-musk


@Dave Winer’s linkblog (date: 2025-04-02, from: Dave Winer’s linkblog)

Val Kilmer, star of Top Gun and The Doors, dies aged 65.


https://www.theguardian.com/film/2025/apr/02/val-kilmer-death-age-65-pneumonia


@Dave Winer’s linkblog (date: 2025-04-02, from: Dave Winer’s linkblog)

Joe Rogan: 'Horrific' that innocent people could be deported to El Salvador.


https://thehill.com/homenews/media/5224117-trump-deportation-gang-members/


@Dave Winer’s linkblog (date: 2025-04-02, from: Dave Winer’s linkblog)

Silly Nice Seeks Hospitality Partnerships Across New York.


https://stupiddope.com/2025/04/silly-nice-seeks-hospitality-partnerships-across-new-york/


More predictable benchmarking with testing.B.Loop

date: 2025-04-02, updated: 2025-04-02, from: Go language blog

Better benchmark looping in Go 1.24.


https://go.dev/blog/testing-b-loop


@Robert’s feed at BlueSky (date: 2025-04-01, from: Robert’s feed at BlueSky)

About time 👇

[contains quote post or other embedded content]


https://bsky.app/profile/rsdoiel.bsky.social/post/3llrx422sbk2b


@Robert’s feed at BlueSky (date: 2025-04-01, from: Robert’s feed at BlueSky)

So true 👇

[contains quote post or other embedded content]


https://bsky.app/profile/rsdoiel.bsky.social/post/3llrx27jd422b


Journalism and its discontents [Draft]

date: 2025-04-01, from: Press Think

In mid-March of this year I was invited to speak to a conference in Montreal that had primarily attracted disinformation reseachers and activists in that field, along with some civic tech people, some journalists (mostly Canadian) and myself as a press critic who could lend a different persective. The plan was to tape a podcast […]

The post Journalism and its discontents [Draft] appeared first on PressThink.


https://pressthink.org/2025/04/journalism-and-its-discontents-draft/


@Feed for Alt USDS (date: 2025-04-01, from: Feed for Alt USDS)

We stand behind Senator Booker as he approaches 24 hours on the Senate floor protesting the administration. We stand for a government that functions, that serves its citizens, just as Sen. Booker does

[contains quote post or other embedded content]


https://bsky.app/profile/altusds.bsky.social/post/3llrt4zobqs2r


@Feed for Alt USDS (date: 2025-04-01, from: Feed for Alt USDS)

Today is a lot.

We have public health gutted across the government. HHS, CDC, FDA. @altcdc.altgov.info @altfda.altgov.info

But then there’s @booker.senate.gov taking a stand, being a model for everyone else in Congress.


https://bsky.app/profile/altusds.bsky.social/post/3llrsleqnes2y


@Feed for Alt USDS (date: 2025-04-01, from: Feed for Alt USDS)

Cory Booker is standing up to the dismantling of the services and agencies and we’re all watching him as he approaches 24 hours on the Senate floor

[contains quote post or other embedded content]


https://bsky.app/profile/altusds.bsky.social/post/3llrsd3evzk2y


@Dave Winer’s linkblog (date: 2025-04-01, from: Dave Winer’s linkblog)

Is your state at risk? These 15 states face huge job losses if the IRA is repealed.


https://electrek.co/2025/04/01/15-states-face-huge-job-losses-ira-is-repealed/


@Robert’s feed at BlueSky (date: 2025-04-01, from: Robert’s feed at BlueSky)

Impressive and still going strong.

[contains quote post or other embedded content]


https://bsky.app/profile/rsdoiel.bsky.social/post/3llrqbrnhck23


Felix Oliver Friedrich pushed to project branch vy64 at Felix Oliver Friedrich / Oberon A2

date: 2025-04-01, updated: 2025-04-01, from: Oberon A2 repository

Felix Oliver Friedrich (fae020c8) at 01 Apr 22:24

64-bit adaptions


https://gitlab.inf.ethz.ch/felixf/oberon/-/commit/fae020c894c469d25e90a572e1a66433f7296b23


Chicanes, not Chicanery

date: 2025-04-01, updated: 2025-04-01, from: One Foot Tsunami


https://onefoottsunami.com/2025/04/01/chicanes-not-chicanery/


Swift Testing: Test Scoping Traits

date: 2025-04-01, from: Michael Tsai

Holly Borla: Swift 6.1 enables custom Swift Testing traits to perform logic before or after tests run in order to share set-up or tear-down logic. If you write a custom trait type which conforms to the new TestScoping protocol, you can implement a method to customize the scope in which each test or suite the […]


https://mjtsai.com/blog/2025/04/01/swift-testing-test-scoping-traits/


Xcode 16.3

date: 2025-04-01, from: Michael Tsai

Apple (security, downloads): Clang now defines TARGET_OS_* conditionals as built-in macros based on the provided target triple.[…]Searching in the documentation viewer may start an indexing process which makes no progress. This may result in missing search results and increased CPU usage.[…]Fixed: Foundation encoders/decoders user info dictionaries now require Sendable values. This may cause build errors […]


https://mjtsai.com/blog/2025/04/01/xcode-16-3/


SpamSieve 3.1.2

date: 2025-04-01, from: Michael Tsai

SpamSieve 3.1.2 improves the filtering accuracy of my Mac e-mail spam filter, amongst other enhancements and fixes. Some interesting issues were: I made some more table view improvements enabled by the lazy Core Data collections mentioned in the previous release. Since it no longer loads the whole selection into RAM, it’s now possible to operate […]


https://mjtsai.com/blog/2025/04/01/spamsieve-3-1-2/


xAI Acquires X/Twitter

date: 2025-04-01, from: Michael Tsai

Elon Musk (Hacker News): @xAI has acquired @X in an all-stock transaction. The combination values xAI at $80 billion and X at $33 billion ($45B less $12B debt). Since its founding two years ago, xAI has rapidly become one of the leading AI labs in the world, building models and data centers at unprecedented speed […]


https://mjtsai.com/blog/2025/04/01/xai-acquires-x-twitter/


Orange Pi RV2 is a single-board PC with an 8-core RISC-V processor

date: 2025-04-01, from: Liliputing

The Orange Pi RV2 is a credit card-sized single-board computer with Gigabit Ethernet, four USB 3.0 Type-A ports, HDMI and USB-C ports, and a 3.5mm audio jack plus a 40-pin GPIO header. It looks a lot like a Raspberry Pi Model B, but Orange Pi’s board stands out for a few reasons. First, it has […]

The post Orange Pi RV2 is a single-board PC with an 8-core RISC-V processor appeared first on Liliputing.


https://liliputing.com/orange-pi-rv2-is-a-single-board-pc-with-an-8-core-risc-v-processor/


@Dave Winer’s linkblog (date: 2025-04-01, from: Dave Winer’s linkblog)

GM is beating EV rivals with more choices at lower prices.


https://electrek.co/2025/04/01/gm-beating-ev-rivals-with-more-choices-at-lower-prices/


@IIIF Mastodon feed (date: 2025-04-01, from: IIIF Mastodon feed)

Join us April 9 at 9am PT / 17:00 UTC for our next Community Call.

@aboutgeo will demo liiive, a real-time collaborative viewing and & annotation platform.

Zoom link on the Community Calendar: iiif.io/community


https://glammr.us/@IIIF/114263953317138762


AOOSTAR WTR Max 11-drive NAS with AMD Hawk Point now available for pre-order for $699

date: 2025-04-01, from: Liliputing

The AOOSTAR WTR Max is a network-attached storage (NAS) system with an AMD Ryzen 7 PRO 8845HS “Hawk Point” processor, support for up to 128GB of RAM, and support for up to 11 storage devices thanks to 6 slots for 3.5 inch drives and 5 M.2 2280 slots for SSDs. It also has a robust set […]

The post AOOSTAR WTR Max 11-drive NAS with AMD Hawk Point now available for pre-order for $699 appeared first on Liliputing.


https://liliputing.com/aoostar-wtr-max-11-drive-nas-with-amd-hawk-point-now-available-for-pre-order-for-699/


If FEMA Didn’t Exist

date: 2025-04-01, from: Guy Kawasaki blog

Ming Xie, University of Maryland, Baltimore County.


https://guykawasaki.substack.com/p/if-fema-didnt-exist


@Dave Winer’s linkblog (date: 2025-04-01, from: Dave Winer’s linkblog)

Trump Nominee for Joint Chiefs Denies Wearing MAGA Hat.


https://politicalwire.com/2025/04/01/trump-nominee-for-joint-chiefs-denies-wearing-maga-hat/


Sticky Fingers in Moscow, 1959

date: 2025-04-01, from: National Archives, Text Message blog

One of the more notable events in U.S.-Soviet relations during the Eisenhower Administration War was the American National Exhibit in Moscow from July 25 to September 4, in 1959.  This was the scene of the so-called Kitchen Debate between Vice President Richard Nixon and Soviet Chairman of the Soviet Council of Ministers Nikita Khrushchev.  The … Continue reading Sticky Fingers in Moscow, 1959


https://text-message.blogs.archives.gov/2025/04/01/sticky-fingers-in-moscow-1959/


@Dave Winer’s linkblog (date: 2025-04-01, from: Dave Winer’s linkblog)

300 Alums Call on HLS to Denounce Trump’s Attacks on Law Firms.


https://www.thecrimson.com/article/2025/4/1/hls-alums-trump-letter/


@Feed for Alt USDS (date: 2025-04-01, from: Feed for Alt USDS)

Fed workers are required to send 5 bullet points each week, but where is the data going? Some believe it’s being funneled into AI systems, targeting workers for layoffs.

🔗 : https://www.wethebuilders.org/posts/why-are-we-writing-5-bullets

#altgov #altUSDS #GovernmentEfficiency #FedUp #CivicTec


https://bsky.app/profile/altusds.bsky.social/post/3llra6ghxp32v


@Dave Winer’s linkblog (date: 2025-04-01, from: Dave Winer’s linkblog)

House Republicans Blame Elon Musk for Dragging GOP Down


https://www.mediaite.com/news/house-republicans-say-elon-musk-is-dragging-down-party-rooting-for-special-election-massacre-so-gop-will-bench-him/


@Dave Winer’s linkblog (date: 2025-04-01, from: Dave Winer’s linkblog)

Federal food assistance cuts would crush 1.8M NYers, city officials say.


https://gothamist.com/news/federal-food-assistance-cuts-would-crush-18m-nyers-city-officials-say


Felix Oliver Friedrich pushed new project branch vy64 at Felix Oliver Friedrich / Oberon A2

date: 2025-04-01, updated: 2025-04-01, from: Oberon A2 repository

Felix Oliver Friedrich (4f7edb92) at 01 Apr 17:03

started with porting vy / ants to 64 bit


https://gitlab.inf.ethz.ch/felixf/oberon/-/commits/vy64


Half Stack Data Science: Programming with AI, with Simon Willison

date: 2025-04-01, updated: 2025-04-01, from: Simon Willison’s Weblog

Half Stack Data Science: Programming with AI, with Simon Willison

I participated in this wide-ranging 50 minute conversation with David Asboth and Shaun McGirr. Topics we covered included applications of LLMs to data journalism, the challenges of building an intuition for how best to use these tool given their “jagged frontier” of capabilities, how LLMs impact learning to program and how local models are starting to get genuinely useful now.

At 27:47:

If you’re a new programmer, my optimistic version is that there has never been a better time to learn to program, because it shaves down the learning curve so much. When you’re learning to program and you miss a semicolon and you bang your head against the computer for four hours […] if you’re unlucky you quit programming for good because it was so frustrating. […]

I’ve always been a project-oriented learner; I can learn things by building something, and now the friction involved in building something has gone down so much […] So I think especially if you’re an autodidact, if you’re somebody who likes teaching yourself things, these are a gift from heaven. You get a weird teaching assistant that knows loads of stuff and occasionally makes weird mistakes and believes in bizarre conspiracy theories, but you have 24 hour access to that assistant.

If you’re somebody who prefers structured learning in classrooms, I think the benefits are going to take a lot longer to get to you because we don’t know how to use these things in classrooms yet. […]

If you want to strike out on your own, this is an amazing tool if you learn how to learn with it. So you’ve got to learn the limits of what it can do, and you’ve got to be disciplined enough to make sure you’re not outsourcing the bits you need to learn to the machines.

<p><small></small>Via <a href="https://bsky.app/profile/halfstackdatascience.com/post/3llo3l33opk2p">@halfstackdatascience.com</a></small></p>


<p>Tags: <a href="https://simonwillison.net/tags/podcasts">podcasts</a>, <a href="https://simonwillison.net/tags/generative-ai">generative-ai</a>, <a href="https://simonwillison.net/tags/podcast-appearances">podcast-appearances</a>, <a href="https://simonwillison.net/tags/ai">ai</a>, <a href="https://simonwillison.net/tags/llms">llms</a>, <a href="https://simonwillison.net/tags/data-journalism">data-journalism</a></p> 


https://simonwillison.net/2025/Apr/1/half-stack-data-science/#atom-everything


@Dave Winer’s linkblog (date: 2025-04-01, from: Dave Winer’s linkblog)

Scripting News: More weird ChatGPT fun.


http://scripting.com/2025/04/01/104758.html


Who can Stop Trump’s Bullet Train… and A Fab Party in a London Time Capsule

date: 2025-04-01, from: Tina Brown

Why does America have to lurch between such extremes?


https://tinabrown.substack.com/p/who-can-stop-trumps-bullet-train


@Dave Winer’s linkblog (date: 2025-04-01, from: Dave Winer’s linkblog)

Substack says it’ll legally defend writers ‘targeted by the government.’


https://www.theverge.com/news/640495/substack-legally-defend-writers-targeted-by-government


What’s wrong with AI-generated docs

date: 2025-04-01, from: Blog by Fabrizio Ferri-Benedetti

In what is tantamount to a vulgar display of power, social media has been flooded with AI-generated images that mimic the style of Hayao Miyazaki’s anime. Something similar happens daily with tech writing, folks happily throwing context at LLMs and thinking they can vibe write outstanding docs out of them, perhaps even surpassing human writers. Well, it’s time to draw a line. Don’t let AI influencers studioghiblify your work as if it were a matter of processing text.


https://passo.uno/whats-wrong-ai-generated-docs/


Breaking GPT-5 news

date: 2025-04-01, from: Gary Marcus blog

To my amazement, I just came back from a trip to Europe only to find an invite to a private GPT-5 demo, and I tried it.


https://garymarcus.substack.com/p/breaking-gpt-5-news


@Dave Winer’s linkblog (date: 2025-04-01, from: Dave Winer’s linkblog)

The Hungarian Model.


https://anneapplebaum.substack.com/p/the-hungarian-model


@Dave Winer’s linkblog (date: 2025-04-01, from: Dave Winer’s linkblog)

Civil Rights and Historical Honesty.


https://snyder.substack.com/p/civil-rights-and-historical-honesty?publication_id=310897&post_id=160312432&isFreemail=true&r=w33x&triedRedirect=true


@Dave Winer’s linkblog (date: 2025-04-01, from: Dave Winer’s linkblog)

First ever USB-C recharging electric bicycles launch sales.


https://electrek.co/2025/04/01/first-ever-usb-c-chargeable-electric-bikes-launched-hopefully-becoming-new-trend/


OnlyFans Sued After Two Guys Realized They Might Not Actually Be Talking to Models

date: 2025-04-01, from: 404 Media Group

A class action complaint claims OnlyFans is allowing fraud on its platform by letting models use agency chat service to talk to fans.


https://www.404media.co/onlyfans-sued-after-two-guys-realized-they-might-not-actually-be-talking-to-models/


@Dave Winer’s linkblog (date: 2025-04-01, from: Dave Winer’s linkblog)

Trump's tariffs are like his idea for injecting bleach to get rid of Covid.


https://www.youtube.com/watch?v=zicGxU5MfwE


Q1 2025

date: 2025-04-01, from: Accidentally in Code

Having set my intention for the year as “health”, Q1 2025 felt a bit like whatever the atheist, gender neutral equivalent is of the saying “Man plans, and God laughs”. I had a good start to January – all set with my intentions and my Trello board – only to get very sick in February […]


https://cate.blog/2025/04/01/q1-2025/


@Dave Winer’s linkblog (date: 2025-04-01, from: Dave Winer’s linkblog)

It’s the moment of truth for Zuckerberg’s Trump bet.


https://www.theverge.com/news/640368/mark-zuckerberg-meta-eu-fine-trump


A Note on Trade Deficits and Manufacturing

date: 2025-04-01, from: Paul Krugman

Some perspective on the eve of trade war


https://paulkrugman.substack.com/p/a-note-on-trade-deficits-and-manufacturing


date: 2025-04-01, from: O’Reilly Radar

March was the biggest month that Trends has ever had. In addition to almost daily announcements about AI, a lot has been going on in programming, in security, in operations (which usually doesn’t merit its own topic), and even in quantum computing. It’s been a long time since we’ve had much to say about social […]


https://www.oreilly.com/radar/radar-trends-to-watch-april-2025/


Exploring Art with TypeScript, Jupyter, Polars, and Observable Plot

date: 2025-04-01, updated: 2025-04-01, from: Deno blog

With Deno’s Jupyter support, you can explore, interact, and create interactive charts with TypeScript and HTML. Here’s a tutorial featuring data of over 130,000 famous artworks.


https://deno.com/blog/exploring-art-with-typescript-and-jupyter


SPD muss Informationsfreiheit schützen!

date: 2025-04-01, updated: 2025-04-01, from: Chaos Computer Club Updates

Die CDU/CSU plant, das Informationsfreiheitsgesetz in seiner jetzigen Form abzuschaffen. Der CCC fordert die SPD auf, dies zu verhindern.


https://www.ccc.de/de/updates/2025/spd-muss-informationsfreiheit-schuetzen


Pydantic Evals

date: 2025-04-01, updated: 2025-04-01, from: Simon Willison’s Weblog

Pydantic Evals

Brand new package from David Montague and the Pydantic AI team which directly tackles what I consider to be the single hardest problem in AI engineering: building evals to determine if your LLM-based system is working correctly and getting better over time.

The feature is described as “in beta” and comes with this very realistic warning:

Unlike unit tests, evals are an emerging art/science; anyone who claims to know for sure exactly how your evals should be defined can safely be ignored.

This code example from their documentation illustrates the relationship between the two key nouns - Cases and Datasets:

from pydantic_evals import Case, Dataset

case1 = Case(
    name="simple_case",
    inputs="What is the capital of France?",
    expected_output="Paris",
    metadata={"difficulty": "easy"},
)

dataset = Dataset(cases=[case1])

The library also supports custom evaluators, including LLM-as-a-judge:

Case(
    name="vegetarian_recipe",
    inputs=CustomerOrder(
        dish_name="Spaghetti Bolognese", dietary_restriction="vegetarian"
    ),
    expected_output=None,
    metadata={"focus": "vegetarian"},
    evaluators=(
        LLMJudge(
            rubric="Recipe should not contain meat or animal products",
        ),
    ),
)

Cases and datasets can also be serialized to YAML.

My first impressions are that this looks like a solid implementation of a sensible design. I’m looking forward to trying it out against a real project.

<p><small></small>Via <a href="https://twitter.com/samuel_colvin/status/1906841604377211375">@samuel_colvin</a></small></p>


<p>Tags: <a href="https://simonwillison.net/tags/evals">evals</a>, <a href="https://simonwillison.net/tags/python">python</a>, <a href="https://simonwillison.net/tags/pydantic">pydantic</a>, <a href="https://simonwillison.net/tags/generative-ai">generative-ai</a>, <a href="https://simonwillison.net/tags/ai">ai</a>, <a href="https://simonwillison.net/tags/llms">llms</a></p> 


https://simonwillison.net/2025/Apr/1/pydantic-evals/#atom-everything


Why is everything so scalable?

date: 2025-04-01, from: Stavros Stuff

Everyone is a FAANG engineer

I’m entirely convinced that basically every developer alive today heard the adage “dress for the job you want, not the job you have” and figured that, since they always wear jeans and a t-shirt anyway, they might as well apply it to their systems’ architecture. This explains why the stack of every single company I’ve seen is invariably AWS/GCP with at least thirty microservices (how else will you keep the code tidy?), a distributed datastore


https://www.stavros.io/posts/why-is-everything-so-scalable/


Quoting Brad Lightcap

date: 2025-04-01, updated: 2025-04-01, from: Simon Willison’s Weblog

We’re planning to release a very capable open language model in the coming months, our first since GPT-2. […]

As models improve, there is more and more demand to run them everywhere. Through conversations with startups and developers, it became clear how important it was to be able to support a spectrum of needs, such as custom fine-tuning for specialized tasks, more tunable latency, running on-prem, or deployments requiring full data control.

Brad Lightcap, COO, OpenAI

<p>Tags: <a href="https://simonwillison.net/tags/openai">openai</a>, <a href="https://simonwillison.net/tags/llms">llms</a>, <a href="https://simonwillison.net/tags/ai">ai</a>, <a href="https://simonwillison.net/tags/generative-ai">generative-ai</a></p> 


https://simonwillison.net/2025/Apr/1/brad-lightcap/#atom-everything


@Dave Winer’s linkblog (date: 2025-04-01, from: Dave Winer’s linkblog)

Trump officials to review $9bn in Harvard funds over antisemitism claims.


https://www.theguardian.com/education/2025/mar/31/trump-harvard-funding-review


@Dave Winer’s linkblog (date: 2025-04-01, from: Dave Winer’s linkblog)

Bird flu could be on the cusp of transmitting between humans − but there are ways to slow down viral evolution.


https://theconversation.com/bird-flu-could-be-on-the-cusp-of-transmitting-between-humans-but-there-are-ways-to-slow-down-viral-evolution-250232


@Dave Winer’s linkblog (date: 2025-04-01, from: Dave Winer’s linkblog)

Software is a mathematical science, so if I write a piece that says what a company is telling you about their technology is not true, I’m not saying it because of a conflict, or because I don’t like them, I say it because it’s true.


http://scripting.com/2025/03/11/113838.html


LLMs Are Not Security Mitigations

date: 2025-04-01, updated: 2025-04-01, from: Tom Kellog blog

LLMs are great code reviewers. They can even spot security mistakes that open us up to vulnerabilities. But no, they’re not an adequate mitigation. You can’t use them to ensure security.


http://timkellogg.me/blog/2025/04/01/llm-security


Apply for funding before June 1st 2025

date: 2025-04-01, updated: 2025-04-01, from: nlnet feed


https://nlnet.nl/news/2025/20250401-call.html


Managed HTTPS tunnels in one-click with inlets cloud

date: 2025-04-01, updated: 2025-04-01, from: Inlets.dev, cloud tunneling

Imagine if you could expose a local HTTP service, without TLS enabled to the public Internet with a HTTPS certificate with just one click.


https://inlets.dev/blog/tutorial/2025/04/01/one-click-hosted-http-tunnels.html


nimi sin

date: 2025-04-01, from: Nora Tindall’s blog

This post is part of April Cools Club: an April 1st effort to publish genuine essays on unexpected topics. Please enjoy these true stories, and rest assured that the tech content will be back soon eventually!

sina o pali e nimi sin. sina o pana e nimi mute tawa mi.
nimi o kama sama pi soweli lili. mi wile e ni: nimi li kama mute a.

That’s toki pona, a constructed language with somewhere between 118 and 181 words, depending on who you ask. It was meant to be quick and easy to learn, but more importantly, to guide the mind toward a simpler, better, more pona way of being. The fewer words, the broader their semantic space, the more contextual and general their meaning, the better. That’s the toki pona philosophy - but that’s not what I’m asking you for.


https://nora.codes/post/nimi-sin/


@Dave Winer’s linkblog (date: 2025-03-31, from: Dave Winer’s linkblog)

Trump Administration Will Review Billions in Funding for Harvard.


https://www.nytimes.com/2025/03/31/us/trump-administration-harvard-funding.html?unlocked_article_code=1.8E4.FKTT.InfhSzOCRWtU&smid=url-share


@Dave Winer’s linkblog (date: 2025-03-31, from: Dave Winer’s linkblog)

OpenAI just raised another $40 billion funding round.


https://www.theverge.com/news/640259/openai-40-billion-softbank-investment


debug-gym

date: 2025-03-31, updated: 2025-03-31, from: Simon Willison’s Weblog

debug-gym

New paper and code from Microsoft Research that experiments with giving LLMs access to the Python debugger. They found that the best models could indeed improve their results by running pdb as a tool.

They saw the best results overall from Claude 3.7 Sonnet against SWE-bench Lite, where it scored 37.2% in rewrite mode without a debugger, 48.4% with their debugger tool and 52.1% with debug(5) - a mechanism where the pdb tool is made available only after the 5th rewrite attempt.

Their code is available on GitHub. I found this implementation of the pdb tool, and tracked down the main system and user prompt in agents/debug_agent.py:

System prompt:

Your goal is to debug a Python program to make sure it can pass a set of test functions. You have access to the pdb debugger tools, you can use them to investigate the code, set breakpoints, and print necessary values to identify the bugs. Once you have gained enough information, propose a rewriting patch to fix the bugs. Avoid rewriting the entire code, focus on the bugs only.

User prompt (which they call an “action prompt”):

Based on the instruction, the current code, the last execution output, and the history information, continue your debugging process using pdb commands or to propose a patch using rewrite command. Output a single command, nothing else. Do not repeat your previous commands unless they can provide more information. You must be concise and avoid overthinking.

<p><small></small>Via <a href="https://jack-clark.net/2025/03/31/import-ai-406-ai-driven-software-explosion-robot-hands-are-still-bad-better-llms-via-pdb/">Import AI</a></small></p>


<p>Tags: <a href="https://simonwillison.net/tags/prompt-engineering">prompt-engineering</a>, <a href="https://simonwillison.net/tags/llms">llms</a>, <a href="https://simonwillison.net/tags/python">python</a>, <a href="https://simonwillison.net/tags/generative-ai">generative-ai</a>, <a href="https://simonwillison.net/tags/llm-tool-use">llm-tool-use</a>, <a href="https://simonwillison.net/tags/ai">ai</a>, <a href="https://simonwillison.net/tags/microsoft">microsoft</a>, <a href="https://simonwillison.net/tags/claude">claude</a></p> 


https://simonwillison.net/2025/Mar/31/debug-gym/#atom-everything


Addison Kliewer – Bridging Academia and Industry with Technical Writing Mastery

date: 2025-03-31, from: Digital Humanities Quarterly News

Addison Kliewer did not initially plan to become a technical writer. As an undergraduate honors student majoring in English at the University of Texas, Austin, he envisioned an academic career in publishing, teaching, or even writing books. He was drawn to how storytelling can be enriching and insightful, fascinated by how clothing symbolized identity and […]

Source


https://www.digitalrhetoriccollaborative.org/2025/03/31/addison-kliewer-bridging-academia-and-industry-with-technical-writing-mastery/


Lilbits: ZimaBoard 2 pocket-sized server is coming, Alexa+ Early Access is here, and more Copilot+ features roll out to Intel and AMD PCs

date: 2025-03-31, from: Liliputing

Four years after launching a single-board server with an Intel Apollo Lake processor, the makers of the ZimaBoard are preparing to introduce a new model. The company hasn’t provided detailed specifications yet, but the design, expansion slots, and processor have all been upgraded for the upcoming ZimaBoard 2. In other recent tech news from around […]

The post Lilbits: ZimaBoard 2 pocket-sized server is coming, Alexa+ Early Access is here, and more Copilot+ features roll out to Intel and AMD PCs appeared first on Liliputing.


https://liliputing.com/lilbits-zimaboard-2-pocket-sized-server-is-coming-alexa-early-access-is-here-and-more-copilot-features-roll-out-to-intel-and-amd-pcs/


The Signal Noise: A Wake-Up Call for Secure Communications

date: 2025-03-31, from: Purism News and Events

When all the control is handled in-house and all communication is quantum-safe as well as on private networks you have the strongest possible security story and the most convenient offering for the toughest of security needs; including national security.

The post The Signal Noise: A Wake-Up Call for Secure Communications appeared first on Purism.


https://puri.sm/posts/the-signal-noise-a-wake-up-call-for-secure-communications/


macOS 15.4

date: 2025-03-31, from: Michael Tsai

Juli Clover (release notes, security, enterprise, developer, full installer, IPSW): With macOS 15.4, Apple is bringing Mail Categorization to the Mac. The Mail app features dedicated categories like transactions, updates, and promotions, with important emails organized into a primary section.Apple News+ subscribers now have access to an Apple News Food section with recipes, food articles, […]


https://mjtsai.com/blog/2025/03/31/macos-15-4/


macOS 14.7.5 and macOS 13.7.5

date: 2025-03-31, from: Michael Tsai

macOS 14.7.5 (full installer, security): This update provides important security fixes and is recommended for all users. macOS 13.7.5 (full installer, security): This update provides important security fixes and is recommended for all users. Previously: macOS 14.7.4 and macOS 13.7.4


https://mjtsai.com/blog/2025/03/31/macos-14-7-5-and-macos-13-7-5/


iOS 18.4 and iPadOS 18.4

date: 2025-03-31, from: Michael Tsai

Juli Clover (no iOS/iPadOS release notes, security, enterprise, no developer): iOS 18.4 adds Priority notifications for Apple Intelligence-capable devices, showing you your most notification first. There’s a dedicated Apple Vision Pro app for Vision Pro owners, and a new Apple News Food feature for Apple News+ subscribers. There’s lots more quoted in her article, though […]


https://mjtsai.com/blog/2025/03/31/ios-18-4-and-ipados-18-4/


tvOS 18.4

date: 2025-03-31, from: Michael Tsai

Juli Clover (release notes, security, no developer): Apple shares full release notes for tvOS in its tvOS support document, which is updated after each new version of tvOS comes out. But all it says is “performance and stability improvements.” Previously: tvOS 18.3.1 Update (2025-04-02): Ryan Christoffel: At the top of the TV app’s interface, the […]


https://mjtsai.com/blog/2025/03/31/tvos-18-4/


watchOS 11.4

date: 2025-03-31, from: Michael Tsai

Ryan Christoffel (release notes, security, developer): After initially listing watchOS 11.4 on its website as released, the site has since been updated to remove the update. It’s unknown when it will return. Previously: watchOS 11.3.1 Update (2025-04-01): Juli Clover: Apple today released watchOS 11.4[…] With watchOS 11.4, Apple has added an option for a Sleep […]


https://mjtsai.com/blog/2025/03/31/watchos-11-4/


visionOS 2.4

date: 2025-03-31, from: Michael Tsai

Juli Clover (no release notes, security, developer, enterprise): The visionOS 2.4 update brings Apple Intelligence to the Vision Pro for the first time, putting it on par with the iPhone, iPad, and Mac. […] Along with Apple Intelligence, Apple added a Spatial Gallery app for the Vision Pro. The Spatial Gallery app offers a curated […]


https://mjtsai.com/blog/2025/03/31/visionos-2-4/


audioOS 18.4

date: 2025-03-31, from: Michael Tsai

Apple: This update includes performance and stability improvements. Previously: audioOS 18.3


https://mjtsai.com/blog/2025/03/31/audioos-18-4/


This DIY NAS has four M.2 slots for storage, two 2.5 GbE LAN ports, and an Alder Lake-N processors

date: 2025-03-31, from: Liliputing

The Maiyunda M1S is a small, low-power computer with an Intel Alder Lake-N processor, an aluminum body, and support for plenty of storage thanks to four M.2 2280 slots that can theoretically hold up to 32TB of storage (if you’re willing to spend the money on four 8TB SSDs). Positioned for use as a server or […]

The post This DIY NAS has four M.2 slots for storage, two 2.5 GbE LAN ports, and an Alder Lake-N processors appeared first on Liliputing.


https://liliputing.com/this-diy-nas-has-four-m-2-slots-for-storage-two-2-5-gbe-lan-ports-and-an-alder-lake-n-processors/


Part 2 – Babylon.js 8.0: Audio, Gaussian Splat and physics updates

date: 2025-03-31, from: Windows Developer Blog

Our mission is to create one of the most powerful, beautiful and simple web rendering engines in the world. The latest Babylon.js 8.0 engine packs a ton of new improvements to help you create stunning experiences.

Overhauled Audio Engine<

The post Part 2 – Babylon.js 8.0: Audio, Gaussian Splat and physics updates appeared first on Windows Developer Blog.


https://blogs.windows.com/windowsdeveloper/2025/03/31/part-2-babylon-js-8-0-audio-gaussian-splat-and-physics-updates/


Ann and Pete Talk AI

date: 2025-03-31, from: Peter Warden

I’ve never been much of a podcast or video creator but recently I’ve started posting a series of short chats with my friend Ann Spencer on YouTube and it’s been a lot of fun. I realized I hadn’t mentioned it here, so as they say, please like and subscribe. I’ve also embedded one of my […]


https://petewarden.com/2025/03/31/ann-and-pete-talk-ai/


Veterans Bear Brunt Of Cuts

date: 2025-03-31, from: Guy Kawasaki blog

Jamie Rowen, Associate Professor of Legal Studies and Political Science, UMass Amherst


https://guykawasaki.substack.com/p/veterans-bear-brunt-of-cuts


@Robert’s feed at BlueSky (date: 2025-03-31, from: Robert’s feed at BlueSky)

Chrome, the Internet Explorer of the 21st century. It works and tastes great. Complete with just the right amount of extra surveillance without any of those pesky vitamins a body needs.


https://bsky.app/profile/rsdoiel.bsky.social/post/3lloqyj45es2w


Open Source Genetic Database Shuts Down to Protect Users From ‘Authoritarian Governments’

date: 2025-03-31, from: 404 Media Group

“The risk/benefit calculus of providing free & open access to individual genetic data in 2025 is very different compared to 14 years ago.”


https://www.404media.co/open-source-genetic-database-opensnp-shuts-down-to-protect-users-from-authoritarian-governments/


Fire Toolbox v39.1 lets you replace the Fire OS launcher on recent Amazon Fire tablets

date: 2025-03-31, from: Liliputing

Amazon’s Fire tablets offer pretty good bang for the buck if you’re just looking at the hardware-to-price ratio. They tend to have decent screens, reasonably good processors, and niche features like… microSD card readers. But they also run a fork of Android called Fire OS that may not be everybody’s cup of tea. Fire Toolbox […]

The post Fire Toolbox v39.1 lets you replace the Fire OS launcher on recent Amazon Fire tablets appeared first on Liliputing.


https://liliputing.com/fire-toolbox-v39-1-lets-you-replace-the-fire-os-launcher-on-recent-amazon-fire-tablets/


The Elephant in the Closet

date: 2025-03-31, updated: 2025-03-31, from: One Foot Tsunami


https://onefoottsunami.com/2025/03/31/the-elephant-in-the-closet/


Name that Ware, March 2025

date: 2025-03-31, from: Bunnie’s Studio Blog

The Ware for March 2025 is shown below. I was just taking this thing apart to see what went wrong, and thought it had some merit as a name that ware. But perhaps more interestingly, I was also experimenting with my cross-polarized imaging setup. This is a technique a friend of mine told me about […]


https://www.bunniestudios.com/blog/2025/name-that-ware-march-2025/


Winner, Name that Ware February 2025

date: 2025-03-31, from: Bunnie’s Studio Blog

The Ware from last month is the main board from a Lego Duplo Steam Train. As predicted, this was a much easier one to guess. Congrats to MJS for naming it (with a margin of just half an hour ahead of Will), email me for your prize! And again, thanks to spida for contributing yet […]


https://www.bunniestudios.com/blog/2025/winner-name-that-ware-february-2025/


Nvidia CEO Jensen Huang’s Iconic Look Used to Promote Knockoff Leather Jackets

date: 2025-03-31, from: 404 Media Group

Everyone wants to look cool in a leather jacket and lead one of the most valuable companies in the world, but not everyone can pull it off.


https://www.404media.co/nvidia-ceo-jensen-huangs-iconic-look-used-to-promote-knockoff-leather-jackets/


@Tomosino’s Mastodon feed (date: 2025-03-31, from: Tomosino’s Mastodon feed)

My dad used to work with a guy who only ate French fries


https://tilde.zone/@tomasino/114257318490544735


Raspberry Pi’s prestigious Green Economy Mark for sustainable practices

date: 2025-03-31, from: Raspberry Pi News (.com)

We’re proud to hold the London Stock Exchange’s Green Economy Mark, highlighting our dedication to sustainable technology.

The post Raspberry Pi’s prestigious Green Economy Mark for sustainable practices appeared first on Raspberry Pi.


https://www.raspberrypi.com/news/raspberry-pis-prestigious-green-economy-mark-for-sustainable-practices/


@Dave Winer’s linkblog (date: 2025-03-31, from: Dave Winer’s linkblog)

I agree with DHH. As a user who is in awe of the power of ChatGPT et al, I agree, and add “Only steal from the best.” Great artists must decide which art to be inspired by. And great artists before they die, should share all their secrets, so the next generation can be even greater.


https://world.hey.com/dhh/great-ai-steals-280615be


MAGA is Bad for Business

date: 2025-03-31, from: Paul Krugman

And business owners were deluded to believe otherwise


https://paulkrugman.substack.com/p/autocracy-is-bad-for-business


@Dave Winer’s linkblog (date: 2025-03-31, from: Dave Winer’s linkblog)

FBI raids home of prominent computer scientist who has gone incommunicado.


https://arstechnica.com/security/2025/03/computer-scientist-goes-silent-after-fbi-raid-and-purging-from-university-website/


Summary of changes for March 2025

date: 2025-03-31, from: Hundred Rabbits blog

Hey everyone!

This is the list of all the changes we’ve done to our projects during the month of March.

little ninj, a plus ninja, is examining at the contents of a first-aid kit

Summary Of Changes

In the above illustration, little Ninj is going through a first-aid kit, looking through our supplies to see what needs to be topped off and what is out-of-date. Rek drew a list of suggestions on what to include in both a first-aid and a medical kit for the Rabbit Waves project, we plan to add more items soon(thanks to everyone on Mastodon who suggested additions! It’ll be in the April update).

We will spend the first few days of April participating in Flickjam, making small games in the style of Flickgame, a tool originally made by Increpare, in which the world is navigated by clicking on pixels of different colors to head in different directions. Devine ported Flickgame to Varvara, and wrote a compiler for flick games to uxn roms.

This past month, Rek finished transcribing the entire 15 weeks of the Victoria to Sitka logbook! We have plans to turn it into a book, in the style of Busy Doing Nothing, with tons of extra content and illustrations.

March was a very good month for silly calendar doodles. Our paper calendar is always in view, it documents important events like releases, appointments, as well as food, memes, and other noteworthy things that happened on each day.

Book Club: This month we are still reading The Goldfinch by Donna Tartt(it’s a long book).

Continue Reading


https://100r.co/site/log.html#mar2025


Understanding Memory Management, Part 4: Rust Ownership and Borrowing

date: 2025-03-31, updated: 2025-03-31, from: Educated Guesswork blog


https://educatedguesswork.org/posts/memory-management-4/


Episode 154 - ACTing Up

date: 2025-03-30, from: Advent of Computing

The LGP-30 is one of my favorite computers. It’s small, scrappy, strange, and wonderous. Among its many wonders are two obscure languages: ACT-I and ACT-III. In this episode we are exploring the ACTS, how the LGP-30 was programmed in practice, and why I’ve been losing sleep for the last few weeks.

download audio/mpeg

https://adventofcomputing.libsyn.com/episode-154-acting-up


@Robert’s feed at BlueSky (date: 2025-03-30, from: Robert’s feed at BlueSky)

Beautifully spoken, by John Lithgow #OnTyranny 👇

[contains quote post or other embedded content]


https://bsky.app/profile/rsdoiel.bsky.social/post/3llmxyla64223


552. The Last Viking: The Saga of Harald Hardrada (Part 1)

date: 2025-03-30, from: This is history podcast

“I swear I will not flee from this fight. I will triumph, or I will die!” In the 1066 game of thrones for the crown of England, the most extraordinary of the three contenders is arguably Harald Hardrada: viking warrior, daring explorer, emperor’s bodyguard, serpent slayer, alleged lover to an empress, King of Norway, and […]

The post 552. The Last Viking: The Saga of Harald Hardrada (Part 1) appeared first on The Rest is History.


https://therestishistory.com/552-the-last-viking-the-saga-of-harald-hardrada-part-1/


@Robert’s feed at BlueSky (date: 2025-03-30, from: Robert’s feed at BlueSky)

So true.

[contains quote post or other embedded content]


https://bsky.app/profile/rsdoiel.bsky.social/post/3llmxa4jiws23


Quoting Ned Batchelder

date: 2025-03-30, updated: 2025-03-30, from: Simon Willison’s Weblog

My advice about using AI is simple: use AI as an assistant, not an expert, and use it judiciously. Some people will object, “but AI can be wrong!” Yes, and so can the internet in general, but no one now recommends avoiding online resources because they can be wrong. They recommend taking it all with a grain of salt and being careful. That’s what you should do with AI help as well.

Ned Batchelder, Horseless intelligence

<p>Tags: <a href="https://simonwillison.net/tags/ai">ai</a>, <a href="https://simonwillison.net/tags/ned-batchelder">ned-batchelder</a></p> 


https://simonwillison.net/2025/Mar/30/ned-batchelder/#atom-everything


@Dave Winer’s linkblog (date: 2025-03-30, from: Dave Winer’s linkblog)

Trump Boasts About Getting Back at Opponents.


https://politicalwire.com/2025/03/30/trump-boasts-about-getting-back-at-opponents/


@Robert’s feed at BlueSky (date: 2025-03-30, from: Robert’s feed at BlueSky)

Wrote up my first impressions of spending a few weeks working with LLM for code generation.

https://rsdoiel.github.io/blog/2025/03/30/LLM_first_impressions_a_few_weeks_in.html


https://bsky.app/profile/rsdoiel.bsky.social/post/3llmsjaiybc2y


@Dave Winer’s linkblog (date: 2025-03-30, from: Dave Winer’s linkblog)

Burgum says Mount Rushmore has room for Trump.


https://thehill.com/homenews/administration/5222612-doug-burgum-mount-rushmore-trump/


@Dave Winer’s linkblog (date: 2025-03-30, from: Dave Winer’s linkblog)

Trump Again Floats Running for Anti-Constitutional Third Term.


https://www.motherjones.com/politics/2025/03/trump-third-term-constitution-2028/


@Dave Winer’s linkblog (date: 2025-03-30, from: Dave Winer’s linkblog)

Time to get out the popcorn. This should be interesting.


https://www.nytimes.com/2025/03/30/us/politics/trump-putin-russia-iran-tariffs.html


@Dave Winer’s linkblog (date: 2025-03-30, from: Dave Winer’s linkblog)

For God’s Sake, Fellow Lawyers, Stand Up to Trump.


https://www.nytimes.com/2025/03/30/opinion/perkins-coie-trump.html?unlocked_article_code=1.704.Mant.Rz8WAj5NiSCE&smid=url-share


@Dave Winer’s linkblog (date: 2025-03-30, from: Dave Winer’s linkblog)

Coming from Evan Osnos: Field guide to the ultra-rich.


https://www.axios.com/2025/02/28/coming-from-evan-osnos-field-guide-to-the-ultra-rich


Donald Trump Wants a New Portrait of Himself

date: 2025-03-30, from: Michael Moore’s blog

A Call to Artists and Non-Artists Everywhere!


https://www.michaelmoore.com/p/donald-trump-wants-a-new-portrait


GMK EVO-X2 mini PC with Ryzen AI Max+ 395 Strix Halo launches April 7

date: 2025-03-30, from: Liliputing

Chinese mini PC maker GMK was one of the first companies to introduce a compact desktop computer powered by an AMD Strix Point processor that combines a Zen 5 CPU with RNA 3.5 graphics. Now, as expected, the company is one of the first to unveil a mini PC with a Strix Halo processor that […]

The post GMK EVO-X2 mini PC with Ryzen AI Max+ 395 Strix Halo launches April 7 appeared first on Liliputing.


https://liliputing.com/gmk-introduces-evo-x2-mini-pc-with-ryzen-ai-max-395-strix-halo/


OpenWrt Two will be a higher-performance router with 10 Gigabit LAN and WiFi 7 support

date: 2025-03-30, from: Liliputing

OpenWrt is an open source, Linux-based operating system designed for routers and other wireless devices. It’s been around for more than two decades and for most of that time it’s been offered primarily as an operating system that you could install as a replacement for the firmware that ships with existing devices. But last year […]

The post OpenWrt Two will be a higher-performance router with 10 Gigabit LAN and WiFi 7 support appeared first on Liliputing.


https://liliputing.com/openwrt-two-will-be-a-higher-performance-router-with-10-gigabit-lan-and-wifi-7-support/


Deno v Oracle Update 3: Fighting the JavaScript Trademark

date: 2025-03-30, updated: 2025-03-30, from: Deno blog

Oracle has filed a partial motion to dismiss our fraud claim. We’re now waiting on the USPTO to weigh in.


https://deno.com/blog/deno-v-oracle3


item-flow

date: 2025-03-30, updated: 2025-03-30, from: Robin Rendle Essays


https://robinrendle.com/notes/item-flow/


@Dave Winer’s linkblog (date: 2025-03-30, from: Dave Winer’s linkblog)

April 5: 50 protests, 50 states, 1 movement.


https://www.fiftyfifty.one/


@Dave Winer’s linkblog (date: 2025-03-30, from: Dave Winer’s linkblog)

Twenty Lessons, read by John Lithgow.


https://snyder.substack.com/p/twenty-lessons-read-by-john-lithgow?publication_id=310897&post_id=160132992&r=w33x&triedRedirect=true


            I/O wait and io_uring
        

date: 2025-03-30, updated: 2025-03-30, from: Uninformative blog


https://www.uninformativ.de/blog/postings/2025-03-30/0/POSTING-en.html


No elephants: Breakthroughs in image generation

date: 2025-03-30, from: One Useful Thing

When Language Models Learn to See and Create


https://www.oneusefulthing.org/p/no-elephants-breakthroughs-in-image


@Dave Winer’s linkblog (date: 2025-03-30, from: Dave Winer’s linkblog)

NASA’s Curiosity rover has found the longest chain carbon molecules yet on Mars.


https://arstechnica.com/science/2025/03/nasas-curiosity-rover-has-found-the-longest-chain-carbon-molecules-yet-on-mars/


A Balance of Payments Primer, Part II: The Dollar and All That

date: 2025-03-30, from: Paul Krugman

And what is the “Mar-a-Lago Accord”?


https://paulkrugman.substack.com/p/a-balance-of-payments-primer-part-b66


@Dave Winer’s linkblog (date: 2025-03-30, from: Dave Winer’s linkblog)

Prompt in alt, great graphic prompts that work in the new chatgpt.


https://www.promptinalt.com/gallery/#search


IFSC Competition Regulations Para Climbing Events

date: 2025-03-30, from: Stubbornella Blog

The international federation of sport climbing released its 2025 paraclimbing regulations. The document was a PDF that was in accessible to screen readers so I converted it to HTML. It is far from perfect, but should be a lot better than the PDF. For some odd reason every bit of text on the PDF was […]


https://www.stubbornella.org/2025/03/30/ifsc-competition-regulations-para-climbing-events/


@Dave Winer’s linkblog (date: 2025-03-30, from: Dave Winer’s linkblog)

And The NY Times sold us out to Trump, never to be trusted again.


https://www.nytimes.com/2025/03/29/opinion/democrats-strategy-2024.html


@Robert’s feed at BlueSky (date: 2025-03-30, from: Robert’s feed at BlueSky)

Something to consider.👇

[contains quote post or other embedded content]


https://bsky.app/profile/rsdoiel.bsky.social/post/3llklxoqiv22i


Minimal CSS-only blurry image placeholders

date: 2025-03-30, from: Lean Rada’s blog

Here’s a CSS technique that produces blurry image placeholders (LQIPs) without cluttering up your markup — Only a single custom property needed!

<img src="…" style="--lqip:192900">

The custom property above gives you this image:

Granted, it’s a very blurry placeholder especially in contrast to other leading solutions. But the point is that it’s minimal and non-invasive! No need for wrapper elements or attributes with long strings of data, or JavaScript at all.

Note for RSS readers / ‘Reader’ mode clients: This post makes heavy use of CSS-based images. Your client may not support it.

Example images

Toggle images Check out the LQIP gallery for examples!

Survey of LQIP approaches

There have been many different techniques to implement LQIPs (low quality image placeholders), such as a very low resolution WebP or JPEG (beheaded JPEGs even), optimised SVG shape placements (SQIP), and directly applying a discrete cosine transform (BlurHash). Don’t forget good old progressive JPEGs and interlaced PNGs!

image gallery with solid colour placeholders
Canva and Pinterest use solid colour placeholders.

At the other end of the spectrum, we have low tech solutions such as a simple solid fill of the image’s average colour.

Pure inline CSS solutions have the advantage rendering immediately — even a background-image: url(…a data URL) would be fine!

image gallery with gradient placeholders
Gradify generates linear-gradients that very roughly approximate the full image.

The big disadvantage of pure CSS approaches is that you typically litter your markup with lengthy inline styles or obnoxious data URLs. My handcoded site with no build step would be extra incompatible with this approach!

<!-- typical gradify css -->
<img width="200" height="150" style="
  background: linear-gradient(45deg, #f4a261, transparent),
    linear-gradient(-45deg, #e76f51, transparent),
    linear-gradient(90deg, #8ab17d, transparent),
    linear-gradient(0deg, #d62828, #023047);
">

BlurHash is a solution that minimises markup by compressing image data into a short base-83 string, but decoding and rendering that data requires additional JS…

<!-- a blurhash markup -->
<img width="200" height="150" src="…"
  data-blurhash="LEHV6nWB2yk8pyo0adR*.7kCMdnj">
BlurHash example

Is it possible to decode a blur hash in CSS instead?

Decoding in pure CSS

Unlike BlurHash, we can’t use a string encoding because there are very few if any string manipulation functions in CSS (2025), so strings are out.

In the end, I came up with my own hash / encoding, and the integer type was the best vessel for it.

The usual way to encode stuff in a single integer is by bit packing, where you pack multiple numbers in an integer as bits. Amazingly, we can unpack them in pure CSS!

To unpack bits, all you need is bit shifting and bit masking. Bit shifting can be done by division and floor operations — calc(x / y) and round(down,n) — and bit masking via the modulo function mod(a,b).

* {
/* Example packed int: */
/* 0b11_00_001_101 */
--packed-int: 781;
--bits-9-10: mod(round(down, calc(var(--packed-int) / 256)), 4); /* 3 */
--bits-7-8: mod(round(down, calc(var(--packed-int) / 64)), 4); /* 0 */
--bits-4-6: mod(round(down, calc(var(--packed-int) / 8)), 8); /* 1 */
--bits-0-3: mod(var(--packed-int), 8); /* 5 */
}

Of course, we could also use pow(2,n) instead of hardcoded powers of two.

So, a single CSS integer value was going to be the encoding of the “hash” of my CSS-only blobhash (that’s what I’m calling it now). But how much information can we pack in a single CSS int?

Side quest: Limits of CSS values

The spec doesn’t say anything about the allowed range for int values, leaving the fate of my shenanigans to browser vendors.

From my experiments, apparently you can only use integers from -999,999 up to 999,999 in custom properties before you lose precision. Just beyond that limit, we start getting values rounded to tens — 1,234,567 becomes 1,234,560. Which is weird (precision is counted in decimal places!?), but I bet it’s due to historical, Internet Explorer-esque reasons.

Anyway, within the range of [-999999, 999999] there are 1,999,999 values. This meant that with a single integer hash, almost two million LQIP configurations could be described. To make calculation easier, I reduced it to the nearest power of two down which is 220.

220 = 1,048,576 < 1,999,999 < 2,097,152 = 221

In short, I had 20 bits of information to encode the CSS-based LQIP hash.

Why is it called a “hash”? Because it’s a mapping from an any-size data to a fixed-size value. In this case, there are an infinite number of images of arbitrary sizes, but only 1,999,999 possible hash values.

The Scheme

With only 20 bits, the LQIP image must be a very simplified version of the full image. I ended up with this scheme: a single base colour + 6 brightness components, to be overlaid on top of the base colour in a 3×2 grid. A rather extreme version of chroma subsampling.

illustration of encoded components

This totals 9 numbers to pack into the 20-bit integer:

The base colour is encoded in the lower 8 bits in the Oklab colour space. 2 bits for luminance, and 3 bits for each of the a and b coordinates. I’ve found Oklab to give subjectively balanced results, but RGB should work just as well.

The 6 greyscale components are encoded in the higher 12 bits — 2 bits each.

An offline script was created to compress any given image into this integer format. The script was quite simple: Get the average or dominant colour — there are a lot of libraries that can do that — then resize the image down to 3×2 pixels and get the greyscale values. Here’s my script.

I even tried a genetic algorithm to optimise the LQIP bits, but the fitness function was hard to establish. Ultimately, I would’ve needed an offline CSS renderer for this to work accurately. Maybe a future iteration could use some headless Chrome solution to automatically compare real renderings of the LQIP against the source image.

Once encoded, it’s set as the value of –lqip via the style attribute in the target element. It could then be decoded in CSS. Here’s the actual code I used for decoding:

[style*="--lqip:"] {
--lqip-ca: mod(round(down, calc((var(--lqip) + pow(2, 19)) / pow(2, 18))), 4);
--lqip-cb: mod(round(down, calc((var(--lqip) + pow(2, 19)) / pow(2, 16))), 4);
--lqip-cc: mod(round(down, calc((var(--lqip) + pow(2, 19)) / pow(2, 14))), 4);
--lqip-cd: mod(round(down, calc((var(--lqip) + pow(2, 19)) / pow(2, 12))), 4);
--lqip-ce: mod(round(down, calc((var(--lqip) + pow(2, 19)) / pow(2, 10))), 4);
--lqip-cf: mod(round(down, calc((var(--lqip) + pow(2, 19)) / pow(2, 8))), 4);
--lqip-ll: mod(round(down, calc((var(--lqip) + pow(2, 19)) / pow(2, 6))), 4);
--lqip-aaa: mod(round(down, calc((var(--lqip) + pow(2, 19)) / pow(2, 3))), 8);
--lqip-bbb: mod(calc(var(--lqip) + pow(2, 19)), 8);

Before rendering the decoded values, the raw number data values need to be converted to CSS colours. It’s fairly straightforward, just a bunch linear interpolations into colour constructor functions.

/* continued */
--lqip-ca-clr: hsl(0 0% calc(var(--lqip-ca) / 3 * 100%));
--lqip-cb-clr: hsl(0 0% calc(var(--lqip-cb) / 3 * 100%));
--lqip-cc-clr: hsl(0 0% calc(var(--lqip-cc) / 3 * 100%));
--lqip-cd-clr: hsl(0 0% calc(var(--lqip-cd) / 3 * 100%));
--lqip-ce-clr: hsl(0 0% calc(var(--lqip-ce) / 3 * 100%));
--lqip-cf-clr: hsl(0 0% calc(var(--lqip-cf) / 3 * 100%));
--lqip-base-clr: oklab(
  calc(var(--lqip-ll) / 3 * 0.6 + 0.2)
  calc(var(--lqip-aaa) / 8 * 0.7 - 0.35)
  calc((var(--lqip-bbb) + 1) / 8 * 0.7 - 0.35)
);
}
Time for another demo!

You can see here how each component variable maps to the LQIP image. E.g. the cb value corresponds to the relative brightness of the top middle area. Fun fact: The above preview content is implemented in pure CSS!

Rendering it all

Finally, rendering the LQIP. I used multiple radial gradients to render the greyscale components, and a flat base colour at the bottom.

[style*="--lqip:"] {
background-image:
  radial-gradient(50% 75% at 16.67% 25%, var(--lqip-ca-clr), transparent),
  radial-gradient(50% 75% at 50% 25%, var(--lqip-cb-clr), transparent),
  radial-gradient(50% 75% at 83.33% 25%, var(--lqip-cc-clr), transparent),
  radial-gradient(50% 75% at 16.67% 75%, var(--lqip-cd-clr), transparent),
  radial-gradient(50% 75% at 50% 75%, var(--lqip-ce-clr), transparent),
  radial-gradient(50% 75% at 83.33% 75%, var(--lqip-cf-clr), transparent),
  linear-gradient(0deg, var(--lqip-base-clr), var(--lqip-base-clr));
}

The above is a simplified version of the full renderer for illustrative purposes. The real one has doubled layers, smooth gradient falloffs, and blend modes.

As you might expect, the radial gradients are arranged in a 3×2 grid. You can see it in this interactive deconstructor view!

LQIP deconstructor!

These radial gradients are the core of the CSS-based LQIP. The position and radius of the gradients are an important detail that would determine how well these can approximate real images. Besides that, another requirement is that these individual radial gradients must be seamless when combined together.

I implemented smooth gradient falloffs to make the final result look seamless. It took special care to make the gradients extra smooth, so let’s dive into it…

Bilinear interpolation approximation with radial gradients

Radial gradients use linear interpolation by default. Interpolation refers to how it maps the in-between colours from the start colour to the end colour. And linear interpolation, the most basic interpolation, well…

CSS radial-gradients with linear interpolation

It doesn’t look good. It gives us these hard edges (highlighted above). You could almost see the elliptical edges of each radial gradient and their centers.

In real raster images, we’d use bilinear interpolation at the very least when scaling up low resolution images. Bicubic interpolation is even better.

One way to simulate the smoothness of bilinear interpolation in an array of CSS radial-gradients is to use ‘quadratic easing’ to control the gradation of opacity.

This means the opacity falloff of the gradient would be smoother around the center and the edges. Each gradient would get feathered edges, smoothening the overall composite image.

CSS radial-gradients: Quadratic interpolation (touch to see edges)
<figure>
  <interpolation-example></interpolation-example>
  <figcaption>
    <strong>CSS radial-gradients:</strong>
    Linear interpolation <em>(touch to see edges)</em>
  </figcaption>
</figure>
<figure>
  <img src="https://leanrada.com/notes/css-only-lqip/interpolation-bilinear.png?ref=rss" width="900" height="600">
  <figcaption>Image: Bilinear interpolation</figcaption>
</figure>
<figure>
  <img src="https://leanrada.com/notes/css-only-lqip/interpolation-bicubic.png?ref=rss" width="900" height="600">
  <figcaption>Image: Bicubic interpolation</figcaption>
</figure>
<figure>
  <img src="https://leanrada.com/notes/css-only-lqip/interpolation-pixels.png?ref=rss" width="3" height="2">
  <figcaption>Image: Your browser’s native interpolation</figcaption>
</figure>
<figure>
  <img src="https://leanrada.com/notes/css-only-lqip/interpolation-pixels.png?ref=rss" width="3" height="2">
  <figcaption>Image: No interpolation</figcaption>
</figure>

However, CSS gradients don’t support nonlinear interpolation of opacity yet as of writing (not to be confused with colour space interpolation, which browsers do support!). The solution for now is to add more points in the gradient to get a smooth opacity curve based on the quadratic formula.

radial-gradient(
  <position>,
  rgb(82 190 240 / 100%) 0%,
  rgb(82 190 204 / 98%) 10%,
  rgb(82 190 204 / 92%) 20%,
  rgb(82 190 204 / 82%) 30%,
  rgb(82 190 204 / 68%) 40%,
  rgb(82 190 204 / 32%) 60%,
  rgb(82 190 204 / 18%) 70%,
  rgb(82 190 204 / 8%) 80%,
  rgb(82 190 204 / 2%) 90%,
  transparent 100%
)
The quadratic interpolation is based on two quadratic curves (parabolas), one for each half of the gradient — one upward and another downward.

The quadratic easing blends adjacent radial gradients together, mimicking the smooth bilinear (or even bicubic) interpolation. It’s almost like a fake blur filter, thus achieving the ‘blur’ part of this BlurHash alternative.

Check out the gallery for a direct comparison to BlurHash. Toggle images

Appendix: Alternatives considered

Four colours instead of monochromatic preview

Four 5-bit colours, where each R is 2 bits, G is 2 bits, and B is just a zero or one.

The four colours would map to the four corners of the image box, rendered as radial gradients

This was my first attempt, and I fiddled with this for a while, but mixing four colours properly require proper bilinear interpolation and probably a shader. Just layering gradients resulted in muddiness (just like mixing too many watercolour pigments), and there was no CSS blend mode that could fix it. So I abandoned it, and moved on to a monochromatic approach.

Single solid colour

This was what I used on this website before. It’s simple and effective. A clean-markup approach could still use the custom –lqip variable:

<img src="…" style="--lqip:#9bc28e">

<style>
/* we save some bytes by ‘aliasing’ this property */
* { background-color: var(--lqip) }
</style>

HTML attribute instead of CSS custom property

We can use HTML attributes to control CSS soon! Here’s what the LQIP markup would look like in the future:

<img src="…" lqip="192900">

Waiting for attr() Level 5 for this one. It’s nicer and shorter, fewer weird punctuations in markup (who came up with the double dash for CSS vars anyway?). The value can then be referenced in CSS with attr(lqip type(<number>)) instead of var(–lqip).

For extra safety, a data- prefix could be added to the attribute name.

Can’t wait for this to get widespread adoption. I also want it for my TAC components.


https://leanrada.com/notes/css-only-lqip/?ref=rss


LLM first impressions a few weeks in

date: 2025-03-30, from: Robert’s Ramblings

A first take of LLM use for coding projects.


https://rsdoiel.github.io/blog/2025/03/30/LLM_first_impressions_a_few_weeks_in.html