The Strait of Hormuz stays closed, the oil price keeps climbing,
and the shockwaves reach everywhere — from Asian four-day work weeks to
Norwegian fuel reserves to a Ukrainian chip factory in Bryansk.
The Largest Oil
Supply Disruption in History
The Iran war has now choked off over ten million barrels per day of
Gulf production — the biggest supply interruption on record, per the
IEA. Oil crossed $100 again. The G7 released 400 million barrels from
emergency reserves; analysts warn $150–200 isn’t out of the question.
Asia is scrambling: Japan sources 90% of its oil from the Middle East,
South Korea 70%. Thailand, the Philippines, and Pakistan have moved
government offices to four-day weeks. Bangladesh closed universities
early. Trump shrugged off gas prices, claiming the US benefits from high
oil. Russia pocketed an extra €6 billion in fossil fuel revenue from the
surge.
Iran’s new supreme leader Mojtaba Khamenei issued his first public
statement: Hormuz stays closed, US bases in the region should close or
face strikes. US intelligence assesses the Iranian government is not at
risk of collapse.
Ukraine Strikes
the Brain of Russian Missiles
A Storm Shadow hit on the Kremniy El plant — Russia’s second-largest
military chip producer — drew furious milblogger backlash over failed
air defenses. Meanwhile, Ukrainian counterattacks in the south and east
are pulling Russian resources away from Pokrovsk: commanders report
measurably fewer glide bomb strikes, and the Unmanned Systems Forces
destroyed 19 Russian air defense systems in 12 days. The Kremlin
responded by discarding its own prior negotiating framework, with Peskov
declaring the 2022 Istanbul proposals no longer reflect reality.
Nine Years to Fix Time
JavaScript’s Temporal API has reached Stage 4 and ships
in ES2026. Immutable date/time types with nanosecond precision, proper
timezone handling, multi-calendar support — now live in Firefox 139+,
Chrome 144+, Node 26+. The quiet story: multiple browser engines
collaborated on temporal_rs, a shared Rust implementation
passing all 4,500 spec tests. Sometimes the machinery of standards
works.
Also today — Three brothers arrested over the US
embassy explosion in Oslo; armed police at Trondheim synagogue on the
same day as a synagogue attack in Michigan. Det Norske Jentekor drops
Crown Princess Mette-Marit’s patronage over Epstein contacts. The Met
releases 140 high-def 3D scans of famous art objects, freely
available.
World
US-Israel War on Iran &
Middle East
Rest of the World
China
approves ‘ethnic unity’ law requiring minorities to learn
Mandarin (BBC) | The
Guardian — Schools must use Mandarin by default from before
kindergarten through high school, taking priority over Tibetan, Uyghur,
and Mongolian. Passed at the close of this year’s NPC, where the
Economist notes China’s
hereditary elite is taking shape.
Unexplained
Moscow internet blackouts spark fears of web censorship
plan (The Guardian) — Muscovites turning to
walkie-talkies and pagers as the Kremlin tests new “whitelist”
restrictions and pushes people to state-owned apps.
Three
brothers arrested after explosion at US embassy in Oslo
(BBC) — Norwegian police investigating whether a foreign state
actor was involved. (Also covered in Norway)
FBI
reports ‘active shooter situation’ at Detroit-area
synagogue (Al Jazeera) — Driver crashed vehicle
into Temple Israel in West Bloomfield Township, Michigan, and shots were
fired. (On the same day, armed police responded to the Trondheim
synagogue — see Norway)
Rapper-politician
Balendra Shah’s party wins Nepal election (BBC) —
The Rastriya Swatatantra Party won a large majority in an election
dominated by anti-corruption sentiment, marking a generational shift in
Nepali politics.
‘Invasive’
AI-led mass surveillance in Africa violating freedoms, warn
experts (The Guardian) — Countries across the
continent have spent more than $2bn on Chinese tracking technology found
to be neither “necessary nor proportionate.”
El
Salvador’s mass arrest policy may have led to crimes against humanity,
study shows (The Guardian) — Legal experts
document murder, torture, and disappearances under Bukele’s policy that
locked up 1.4% of the population.
El
Niño is set to take hold this summer, driving up global
temperatures (NPR) — A potentially strong El Niño
will likely emerge this summer and persist through the year.
cd ~/repos/ratatosk && claude --resume 22f02e9e-36c8-41bb-b4b0-ad05af927d7b
Ukraine
Ukrainian counterattacks are reshaping the battlefield in several
directions. In the south, forces have nearly liberated all
Dnipropetrovsk Oblast territory seized during Russia’s Oleksandrivka
offensive — geolocated footage indicates Novohryhorivka has likely been
recaptured — and the Hulyaipole front is now one of the hottest axes,
with 18 engagements recorded since morning. Near Kupyansk, Ukrainian
forces advanced north of Kivsharivka, and Russian command is reportedly
redeploying units from Vovchansk to reinforce the sector. Critically,
these southern and eastern counterattacks are pulling Russian resources
away from Pokrovsk: Ukrainian commanders report a measurable drop in
glide bomb strikes there, and Russian elements have been redeployed from
the Pokrovsk direction.
On the strike front, the Storm Shadow hit on the Kremniy El microchip
factory in Bryansk — Russia’s second-largest military chip producer —
drew furious milblogger backlash over failed air defenses, while the
Unmanned Systems Forces report destroying 19 Russian air defense systems
in 12 days across occupied Zaporizhia, Luhansk, and Kherson oblasts.
Ukraine also struck a major oil hub at Tikhoretsk in Krasnodar Krai,
chemical plants in Samara and Perm oblasts, and an S-400 radar in
Sevastopol. Russian forces launched 99 drones overnight, 90 of which
were downed.
The Kremlin is signaling an expansion of its war aims: Peskov
declared the 2022 Istanbul proposals no longer reflect “changed
reality,” with senior officials amplifying the message — effectively
discarding even Russia’s own prior negotiating framework. Putin envoy
Ushakov met Witkoff and Kushner and claimed the US now understands the
“destructive nature” of oil sanctions on Russia, though the G7
separately ruled out easing sanctions. Former US envoy Kellogg said
Putin will not end the war until he faces failure, estimating Russian
casualties at 1.2–1.4 million. The UN concluded Russia’s deportation of
Ukrainian children amounts to a crime against humanity.
cd ~/repos/ratatosk && claude --resume 27eb626a-7438-48e9-9f35-413a35599460
Norway
The Iran crisis is reshaping Norway’s immediate economic outlook. The
Sjøfartsdirektoratet has banned Norwegian-flagged ships from entering
the Hormuz Strait after attacks on civilian vessels, and IEA calls the
Gulf disruption the largest oil supply interruption in history — Gulf
state production is down over ten million barrels per day. Oil crossed
$100 again, pushing Oslo Børs up over 1% on the back of Equinor gains,
but Wall Street fell on inflation fears. IEA released 400 million
barrels from strategic reserves; analysts warn $150–200 is not
impossible if the situation persists. Statsminister Støre says the war
is at a tipping point and is considering expanding Norway’s fuel
reserves, while Frp wants to open new areas for oil exploration — a move
Støre rejected.
On a separate front, the Trump administration opened a Section 301
trade investigation against Norway and 15 other countries, accusing
Norway of currency manipulation by channeling oil revenues into foreign
currency through the sovereign wealth fund. A 10% tariff is already in
effect through July; hearings are set for May. NHO warns of increased
uncertainty, while Trade Minister Myrseth says there is “no basis” for
the investigation.
Security tensions are elevated domestically. Armed police responded
to suspicious activity at the Trondheim synagogue — one person was
arrested — on the same day a car rammed a synagogue in Michigan. The
Jewish community in Trondheim had already raised its security level
after the US embassy bombing in Oslo on March 8. In that case, the third
of three arrested brothers (Norwegian citizens of Iraqi origin) was
interrogated Thursday; one has confessed to placing the bomb. Detention
hearings are expected Friday. Separately, the man wanted after the Skien
shootings Sunday turned himself in.
Det Norske Jentekor’s board voted to end Crown Princess Mette-Marit’s
patronage over her contact with Jeffrey Epstein — the fourth Norwegian
organization to do so. The Crown Princess, who met Epstein multiple
times between 2011–2013 and has acknowledged “dårlig dømmekraft,” has
not addressed the matter further, citing health issues ahead of a lung
transplant.
Oslo-papirene funnet
i Rød-Larsens kjeller
Classified Oslo Accords documents were found in Terje Rød-Larsen’s
basement during the Økokrim corruption probe linked to the Epstein case.
Documents marked “strictly confidential” and “secret” — missing from
Foreign Ministry archives for decades. (VG)
Rough weather is hitting much of the country. A storm brought
warnings across western and central Norway: Bergensbanen is closed after
a landslide at Trengereid, signal failures disrupted trains around Oslo,
and nearly 50,000 customers on Sunnmøre briefly lost power when both of
Statnett’s main transformers failed simultaneously — an event that
happens only once every several years.
cd ~/repos/ratatosk && claude --resume 732c2933-56a5-462f-a90f-8f69f8ab10f1
Norway — Street Level
A jittery day. The synagogue incident in Trondheim landed on top of
the US Embassy device earlier this week, and Norwegians are noticing the
pattern. The security mood is tense but measured; comments lean toward
“we have armed guards at synagogues already” rather than panic.
Beyond security, the economic squeeze dominates. Students can’t get
electricity support for their housing. Fuel prices spark a viral tip
about checking road webcams instead of using the now-paywalled fuel
price app — the thread doubles as a collective vent about
enshittification, with users proposing a “worst enshittified app of the
year” award. The bistand debate is running hot across multiple threads,
with a populist framing gaining traction: why is Norway the world’s most
generous donor when domestic services are under strain?
NTNU har ikke råd til
mer fysisk eksamen
AI is forcing universities back to in-person exams — you can’t trust
take-home work anymore — but NTNU can’t afford the physical space. A
concrete example of AI disrupting institutional capacity that doesn’t
get enough attention. (Universitetsavisa)
- The snow
crab quota investigation is getting traction on Reddit too
— quotas worth hundreds of millions handed to a scrap dealer on Gran
Canaria.
- The fuel app enshittification thread proposes checking SVV
road webcams for fuel prices — free, no login, because the
data was community-sourced to begin with.
cd ~/repos/ratatosk && claude --resume 6357e34a-e3d5-48f4-81ed-8eeabf1fde42
Tech
Temporal:
The 9-Year Journey to Fix Time in JavaScript | Lobsters
— Temporal has reached Stage 4 and is part of ES2026. Immutable
date/time types with nanosecond precision, proper timezone/DST handling,
multi-calendar support. Now shipping in Firefox 139+, Chrome 144+, Node
26+. Notable: multiple browser engines collaborated on
temporal_rs, a shared Rust implementation passing all 4,500
spec tests.
Parametricity,
or Comptime is Bonkers | Lobsters
— Argues that Zig’s comptime conflates staging and generic
programming, sacrificing parametricity. A function with
comptime T: type can silently branch on the type, so the
signature tells you nothing about behavior. Rust’s trait system achieves
specialization while preserving parametricity through explicit
constraints.
Secure
Communication, Buried In A News App | Lobsters
— The Guardian built CoverDrop: the news app constantly sends small
encrypted packets (mostly meaningless cover traffic), and real tip-offs
from sources are indistinguishable from the noise. Solves the metadata
problem — hiding whether you’re communicating at all. Open
source.
//go:fix inline and
the source-level inliner | Lobsters
— Go 1.26 introduces a source-level inliner via
//go:fix inline directives. Package authors annotate
deprecated functions; go fix rewrites all call sites.
Already used to prepare 18,000+ changelists in Google’s
monorepo.
Lf-lean: The
frontier of verified software engineering | HN
— Translated all 1,276 theorem statements from Logical
Foundations (Rocq to Lean) with ~2 person-days of effort vs. an
estimated 2.75 person-years manually — a 350x speedup. The key:
“task-level specification generators” that define correctness once per
task class, scaling human oversight from O(n) to O(1).
Codespeak: Kotlin
creator’s new language for talking to LLMs | HN
— A specification language that compiles through LLMs into Python, Go,
JS, or TypeScript — claiming 5-10x codebase reduction. HN reception is
skeptical: models aren’t deterministic, specs drift from
implementations. One interesting point: converting spec diffs to code
diffs may be more stable than full regeneration.
Understudy:
Teach a desktop agent by demonstrating a task once | HN
— Local-first desktop agent combining GUI automation, browser control,
shell access, and messaging across 8 platforms. Extracts intent rather
than recording coordinates, so skills survive UI changes. Progressive
autonomy model — five stages from basic operation to proactive
behavior.
Gabagool: A
fully snapshotable Wasm interpreter | Lobsters
— Wasm interpreter in Rust where the entire execution state can be
serialized, suspended, and resumed in a fresh process. Enables
computation migration, checkpointing, and process forking. 96% of spec
tests passing. Designed around serializability from the ground
up.
Reversing
memory loss via gut-brain communication | HN
— Stanford found that aging shifts gut bacteria composition, triggering
inflammation that inhibits vagus nerve activity and impairs hippocampus
function. Stimulating the vagus nerve in old mice restored cognitive
performance to young-mouse levels. Mouse study; HN notes contradictions
with existing literature on the same bacterium — but the mechanism is
compelling.
Faster
asin() Was Hiding In Plain Sight | Lobsters
— After building custom approximants, an LLM pointed the author to
Nvidia’s 2012 Cg Toolkit documentation — a branchless polynomial
evaluation 1.5–1.9x faster on Intel. The real lesson: research existing
solutions before inventing your own.
The Road Not
Taken: A World Where IPv4 Evolved | HN
— Thought experiment: what if IPv4 had been extended to 128-bit
addresses instead of replaced by IPv6? Uses the alternate history to
argue that while IPv6’s clean-slate approach created deployment
friction, it fixes deeper architectural problems.
Lobsters
interview with ngoldbaum | Lobsters
— Interview with the developer leading Python’s free-threading (no-GIL)
effort. Discusses moving the ecosystem to free-threaded builds, burnout
in open-source, and why he prefers PRs that delete 1,000 lines. Also
touches on Jujutsu.
“I prefer PRs that delete 1,000 lines of code.” — Nathan Goldbaum, on
maintaining CPython
- Asia
rolls out 4-day weeks, WFH to solve fuel crisis — The
Hormuz crisis reshaping work patterns across Asia. (Also covered in
World)
- My
PostgreSQL database got nuked lol — Docker PostgreSQL with
postgres:postgres and port exposed to the internet. Bots
found it, wiped it, left a bitcoin ransom note — twice. Lesson: always
bind to 127.0.0.1.
- WolfIP: TCP/IP
stack with no dynamic memory allocations — from wolfSSL,
targeting embedded environments.
- How
far can you go with IX Route Servers only? — ~57% IPv4,
~61% IPv6 outbound, but only 14% inbound. Direct peering remains
essential.
- Okmain: extract
a representative color from an image — K-means in Oklab
perceptual space, ~100ms. Rust crate + Python package.
- Dreaming
of a ten-year computer — Argument for keeping one machine a
decade, partly motivated by supply-chain concerns.
- The
Met releases 140 high-def 3D scans of famous art objects,
freely available.
- Italian
prosecutors seek trial for Amazon and four execs over
alleged $1.4B tax evasion.
- Claude now
builds interactive visualizations — charts, diagrams, data
visualizations rendered directly in conversation.
cd ~/repos/ratatosk && claude --resume 4794df94-c9b2-4873-a77c-b866953a3974
Linux & Infrastructure
NixOS
Ported
NixOS to the Radxa Rock Pi S (newest kernel) — Fully
automated flake generating a bootable SD card image, running kernel
6.18.16 instead of vendor 4.4/5.10. Built as a Wi-Fi gateway for a 3D
printer homelab, working toward upstream nixpkgs integration.
Reproducible
NixOS deployment system for a 30-PC school lab — A teacher
built a zero-internet NixOS deployment for 30 student PCs. Controller
runs Harmonia (local binary cache) and PXE boots all clients over LAN.
Student home directories reset on each boot. Uses Colmena for
orchestrated rebuilds and Veyon for classroom monitoring.
Full Time
Nix — Nix Freaks 21 — Podcast covering nixos-facter for
hardware detection, sandboxed dev shells (GSoC project), parallel
evaluation, WebAssembly in nix-lang, Flack (web router via Nix Rust
API), FPGA workflows, and the REPRO-HPC Workshop at ISC
Hamburg.
Hyprland
Sunshine
Virtual Displays on Hyprland — Detailed guide for game
streaming via Moonlight. Creates a headless virtual monitor matching
client resolution, disables the physical display during streaming,
restores on disconnect.
ANyA
— local voice launcher for Hyprland — Fully local voice
launcher using Whisper for STT and Picovoice for wake word detection.
Opens apps, runs commands, launches websites by voice. Not
compositor-specific despite the Hyprland focus.
- Monitor
config management — top picks: Kanshi (profile-based
auto-switching), Monique (Hyprland-specific GUI),
hyprdynamicmonitors.
- Wallhaven GTK4
interface — Go-based wallpaper browser with swww
integration, multi-monitor targeting, and thumbnail caching.
- tennis —
Zig CLI for CSV-to-table rendering with auto-layout and terminal
background detection.
- fastfind
— Nim reimplementation of GNU find with glob/regex/fuzzy matching, file
indexing, and natural language queries.
- fsc
and gstat — two fzf+bat bash functions: fuzzy systemd
service status and git file preview.
Home Automation
Voice
Satellite Card — Registers any browser as a proper
assist_satellite in Home Assistant. On-device wake word
detection via microWakeWord/TFLite WASM, multi-turn conversations,
visual timers, six skins. Optional LLM tools for image search, weather,
etc.
Home
Assistant Version Control v1.2 — Git-based version control
add-on with purpose-built UI. v1.2 adds custom folder tracking,
selective .storage whitelisting, SSH key persistence,
configurable commit retention, and resizable diff panels.
Avoid
Zigbee groups — they jam traffic — Experience report:
broadcast storms, coordinator crashes, devices silently dropping groups.
Binding remotes directly to devices still works well; better to control
individual devices sequentially with short delays.
- Cheap
Yellow Display + ESPHome — $15 ESP32 running LVGL as a
wall-mounted HA control panel. Tap to toggle, long press for dimming,
YAML-configurable tiles, 3D-printable mount.
- Live
notifications for HA — Android progress-bar notifications
for appliance cycles via smart plugs. Key trick:
alert_once: true.
Self-Hosted
NovaSCM
— Open-source alternative to SCCM for zero-touch Windows deployment. WPF
console, Flask API, cross-platform agents. Device discovery, deployment
workflows, PXE/USB installs, 802.1X certificate management.
Galaxy
S10 as a self-hosted server — Running Ubuntu 24.04
natively on an old Galaxy S10 — not chroot, not proot — with
kernel modifications for full namespace and cgroup support. Runs
Jellyfin, Samba, and Tailscale at system level.
cd ~/repos/ratatosk && claude --resume 678a6418-668a-41ab-998d-5fa504792a67
cd ~/repos/ratatosk && claude –resume
25d667f8-da7e-4721-81a8-c6f40e03dbb1