Memory Integrity Enforcement: A complete vision for memory safety in Apple devices
https://security.apple.com/blog/memory-integrity-enforcement/ [security.apple.com]
2025-09-10 16:53
tags:
cpu
defense
iphone
malloc
security
systems
Memory Integrity Enforcement (MIE) is the culmination of an unprecedented design and engineering effort, spanning half a decade, that combines the unique strengths of Apple silicon hardware with our advanced operating system security to provide industry-first, always-on memory safety protection across our devices — without compromising our best-in-class device performance.
Video Game Blurs (and how the best one works)
https://blog.frost.kiwi/dual-kawase/ [blog.frost.kiwi]
2025-09-03 19:21
tags:
gl
graphics
interactive
Blurs are the basic building block for many video game post-processing effects and essential for sleek and modern GUIs. Video game Depth of Field and Bloom or frosted panels in modern user interfaces - used subtly or obviously - they’re everywhere.
source: L
Physically based rendering from first principles
https://imadr.me/pbr/ [imadr.me]
2025-09-03 19:20
tags:
gl
graphics
interactive
physics
In this interactive article, we will explore the physical phenomena that create light and the fundamental laws governing its interaction with matter. We will learn how our human eyes capture light and how our brains interpret it as visual information. We will then model approximations of these physical interactions and learn how to create physically realistic renderings of various materials.
source: HN
Implementing a foil sticker effect
https://www.4rknova.com/blog/2025/08/30/foil-sticker [www.4rknova.com]
2025-09-03 19:19
tags:
gl
graphics
interactive
ux
web
A breakdown of how to build a custom Three.js shader that recreates the iridescent, sparkling look of foil stickers using vertex deformation, angle-based color shifts, and procedural flakes.
source: HN
My Delco hoagie came in a godforsaken bag that said ‘Submarine’
https://www.inquirer.com/columnists/hoagie-submarine-bag-delco-sandwiches-20250806.html [www.inquirer.com]
2025-08-06 21:49
tags:
essay
food
language
philly
This bag’s laissez-faire attitude about what a hoagie is called is unacceptable in the Philadelphia region. I don’t make the rules, I’ve just been schooled in them.
Perfecting anti-aliasing on signed distance functions
https://blog.pkh.me/p/44-perfecting-anti-aliasing-on-signed-distance-functions.html [blog.pkh.me]
2025-08-04 22:26
tags:
gl
graphics
programming
Doing anti-aliasing on SDF is not as straightforward as it seems. Most of the time, we see people use a smoothstep with hardcoded constants, sometimes with screen space information, sometimes cryptic or convoluted formulas. Even if SDFs have the perfect mathematical properties needed for a clean anti-aliasing, the whole issue has a scope larger than it appears at first glance. And even when trivial solutions exist, it’s not always clear why they are a good fit. Let’s study that together.
source: HN
Map Projection Transitions
https://www.jasondavies.com/maps/transition/ [www.jasondavies.com]
2025-06-28 19:14
tags:
interactive
maps
visualization
Slightly better named character reference tokenization than Chrome, Safari, and Firefox
https://www.ryanliptak.com/blog/better-named-character-reference-tokenization/ [www.ryanliptak.com]
2025-06-27 23:28
tags:
browser
compsci
html
programmer
text
So, I thought I’d take you through what I came up with and how it compares to the implementations in the major browser engines. Mostly, though, I just think the data structure I used is neat and want to tell you about it (fair warning: it’s not novel).
This article continually and relentlessly grew in scope, and has ended up quite a bit more in-depth than I originally imagined.
source: L
Conferences, Clarity, and Smokescreens
https://infrequently.org/2025/06/conferences-clarity-and-smokescreens/ [infrequently.org]
2025-06-27 20:27
tags:
development
html
javscript
perf
ux
web
Speaker after speaker stressed development speed, including the ability to ship to mobile and desktop from the same React code. The implications for complexity-management and user-experience were somewhat less of a focus. As you might expect, putting 75% of the 3.5MB JS payload (15MB unzipped) in the critical path does unpleasant things to the user experience, but none of the dizzying array of tools involved in constructing bk.com steered this team away from user experience failure.
How fast are Linux pipes anyway?
https://mazzo.li/posts/fast-pipes.html [mazzo.li]
2025-06-22 18:06
tags:
dupe
linux
perf
programming
systems
In this post, we will explore how Unix pipes are implemented in Linux by iteratively optimizing a test program that writes and reads data through a pipe.
source: HN
The Great Egg Heist
https://www.washingtonpost.com/investigations/interactive/2025/eggs-prices-gouging-cal-maine-investigation/ [www.washingtonpost.com]
2025-06-21 03:10
tags:
article
business
food
hoipolloi
280,000 eggs disappeared from America’s top producer. Then came a ransom note.
The Missing 11th of the Month
https://drhagen.com/blog/the-missing-11th-of-the-month/ [drhagen.com]
2025-06-19 01:07
tags:
history
investigation
language
text
There are not many days that seem to be smaller than the typical size. February 29th is a tiny speck, for instance. But if you stare at the comic long enough, you may get the impression that the 11th of most months is unusually small. The title text of the comic concurs, reading “In months other than September, the 11th is mentioned substantially less often than any other date. It’s been that way since long before 9/11 and I have no idea why.” After digging into the raw data, I believe I have figured out why.
source: HN
phkmalloc
https://phk.freebsd.dk/sagas/phkmalloc/ [phk.freebsd.dk]
2025-06-17 21:08
tags:
c
development
malloc
programming
systems
Jason Evans laid jemalloc to rest yesterday, and gave a kind shoutout to my malloc, aka. “phkmalloc”, and it occured to me, that I should write that story down.
source: L
jemalloc Postmortem
https://jasone.github.io/2025/06/12/jemalloc-postmortem/ [jasone.github.io]
2025-06-17 21:07
tags:
c
development
malloc
programming
systems
The jemalloc memory allocator was first conceived in early 2004, and has been in public use for about 20 years now. Thanks to the nature of open source software licensing, jemalloc will remain publicly available indefinitely. But active upstream development has come to an end. This post briefly describes jemalloc’s development phases, each with some success/failure highlights, followed by some retrospective commentary.
source: HN
The Egg Yolk Principle: Human Sexuality Will Always Outsmart Prudish Algorithms and Hateful Politicians
https://www.404media.co/egg-yolk-popping-instagram-tiktok-ioda-anti-porn-laws/ [www.404media.co]
2025-06-05 22:04
tags:
essay
hoipolloi
policy
social
web
A metal fork drags its four prongs back and forth across the yolk of an over-easy egg. The lightly peppered fried whites that skin across the runny yolk give a little, straining under the weight of the prongs. The yolk bulges and puckers, and finally the fork flips to its sharp points, bears down on the yolk and rips it open, revealing the thick, bright cadmium-yellow liquid underneath. The fork dips into the yolk and rubs the viscous ovum all over the crispy white edges, smearing it around slowly, coating the prongs.
Everything is sexually suggestive now because on most platforms, for years, being sexually overt meant risking a ban. Not-coincidentally, being horny about everything is also one of the few ways to get engagement on those same platforms. At the same time, legislators are trying to make everything “pornographic” illegal or impossible to make or consume.
source: jwz
Cracking The Dave & Buster’s Anomaly
https://rambo.codes/posts/2025-05-12-cracking-the-dave-and-busters-anomaly [rambo.codes]
2025-06-05 21:44
tags:
investigation
iphone
turtles
At the time I’m writing this post, this bug is still happening, so you should be able to reproduce it. I reproduced it using two iPhones running iOS 18.5 RC. As long as your audio message contains the phrase “Dave and Buster’s”, the recipient will only see the “dot dot dot” animation for several seconds, and it will then eventually disappear. They will never get the audio message.
MessagesBlastDoorService uses MBDXMLParserContext (via MBDHTMLToSuperParserContext) to parse XHTML for the audio message. Ampersands have special meaning in XML/HTML and must be escaped, so the correct way to represent the transcription in HTML would have been “Dave & Buster’s”. Apple’s transcription system is not doing that, causing the parser to attempt to detect a special code after the ampersand, and since there’s no valid special code nor semicolon terminating what it thinks is an HTML entity, it detects an error and stops parsing the content.
source: simon
Pure vs. impure iterators in Go
https://jub0bs.com/posts/2025-05-29-pure-vs-impure-iterators-in-go/ [jub0bs.com]
2025-06-01 01:34
tags:
go
programming
Because iterators are so powerful, they’re likely to mushroom in libraries even beyond Go’s standard library. Therefore, to forestall any confusion in the discourse about iterators, the terminology surrounding them should be as precise as possible.
This passage of the documentation seemingly divides iterators into two categories. I’ll attempt to elucidate them through a couple of examples.
source: HN
parking_lot: ffffffffffffffff...
https://fly.io/blog/parking-lot-ffffffffffffffff/ [fly.io]
2025-05-31 02:27
tags:
bugfix
concurrency
programming
rust
You’re reading a 3,000 word blog post about a single concurrency bug, so my guess is you’re the kind of person who compulsively wants to understand how everything works. That’s fine, but a word of advice: there are things where, if you find yourself learning about them in detail, something has gone wrong.
source: L
Bootstrapping HTTP/1.1, HTTP/2, and HTTP/3
https://www.netmeister.org/blog/http-123.html [www.netmeister.org]
2025-05-31 01:09
tags:
browser
networking
standard
web
HTTP/1.1 (RFC2616 and onwards) remains the lowest common denominator that clients and servers need to support, and of course modern stacks will want to use HTTP/2 (RFC9113) and HTTP/3 (RFC9114), but just how do they determine each others’ capabilities and bootstrap their connection?
source: L
The radix 2^51 trick
https://www.chosenplaintext.ca/articles/radix-2-51-trick.html [www.chosenplaintext.ca]
2025-05-31 00:51
tags:
cpu
math
perf
programming
The obvious solution would be to break up each 256-bit number into four 64-bit pieces (commonly referred to as “limbs”).
The first reason is that adc is just slower to execute than a normal add on most popular x86 CPUs. Since adc has a third input (the carry flag), it’s a more complex instruction than add. It’s also used less often than add, so there is less incentive for CPU designers to spend chip area on optimizing adc performance.
The key insight here is that we can use this technique to delay carry propagation until the end. We can’t avoid carry propagation altogether, but we can avoid it temporarily. If we save up the carries that occur during the intermediate additions, we can propagate them all in one go at the end.
source: L