frontpage.
newsnewestaskshowjobs

Made with ♥ by @iamnishanth

Open Source @Github

fp.

Fei Fei Li: Spatial Intelligence is AI’s Next Frontier

https://drfeifei.substack.com/p/from-words-to-worlds-spatial-intelligence
59•mkirchner•1h ago•33 comments

Unexpected things that are people

https://bengoldhaber.substack.com/p/unexpected-things-that-are-people
367•lindowe•6h ago•187 comments

Writing your own BEAM

https://martin.janiczek.cz/2025/11/09/writing-your-own-beam.html
81•cbzbc•1d ago•12 comments

The lazy Git UI you didn't know you need

https://www.bwplotka.dev/2025/lazygit/
159•linhns•4h ago•56 comments

TTS Still Sucks

https://duarteocarmo.com/blog/tts-still-sucks
22•speckx•1h ago•29 comments

High-performance 2D graphics rendering on the CPU using sparse strips [pdf]

https://github.com/LaurenzV/master-thesis/blob/main/main.pdf
10•PaulHoule•41m ago•0 comments

Zeroing in on Zero-Point Motion Inside a Crystal

https://physics.aps.org/articles/v18/178
15•lc0_stein•1h ago•0 comments

Using Generative AI in Content Production

https://partnerhelp.netflixstudios.com/hc/en-us/articles/43393929218323-Using-Generative-AI-in-Co...
48•CaRDiaK•3h ago•21 comments

Error ABI

https://matklad.github.io/2025/11/09/error-ABI.html
48•todsacerdoti•20h ago•9 comments

Memory Safety for Skeptics

https://queue.acm.org/detail.cfm?id=3773095
43•steveklabnik•4h ago•28 comments

Registered OAuth Parameters

https://www.iana.org/assignments/oauth-parameters/oauth-parameters.xhtml#parameters
22•mooreds•6d ago•3 comments

Linux in a Pixel Shader – A RISC-V Emulator for VRChat

https://blog.pimaker.at/texts/rvc1/
12•rbanffy•57m ago•3 comments

Omnilingual ASR: Advancing automatic speech recognition for 1600 languages

https://ai.meta.com/blog/omnilingual-asr-advancing-automatic-speech-recognition/?_fb_noscript=1
49•jean-•4h ago•11 comments

Unix v4 Tape Found

https://discuss.systems/@ricci/115504720054699983
57•greatquux•4d ago•4 comments

Head in the Zed Cloud

https://maxdeviant.com/posts/2025/head-in-the-zed-cloud/
43•todsacerdoti•8h ago•8 comments

Benchmarking leading AI agents against Google reCAPTCHA v2

https://research.roundtable.ai/captcha-benchmarking/
80•mdahardy•6h ago•60 comments

Building a high-performance ticketing system with TigerBeetle

https://renerocks.ai/blog/2025-11-02--tigerfans/
56•jorangreef•2d ago•8 comments

Launch HN: Hypercubic (YC F25) – AI for COBOL and Mainframes

64•sai18•6h ago•42 comments

Dependent Types and How to Get Rid of Them

https://chadnauseam.com/coding/pltd/are-dependent-types-actually-erased
8•pie_flavor•1w ago•0 comments

Synesthesia helps me find four-leaf clovers (2023)

https://matthewjamestaylor.com/synesthesia-four-leaf-clovers
53•iansteyn•1w ago•36 comments

3D Heterogeneous Integration Powers New DARPA Fab

https://spectrum.ieee.org/3d-heterogeneous-integration
3•rbanffy•42m ago•0 comments

Canadian military will rely on public servants to boost its ranks by 300k

https://ottawacitizen.com/public-service/defence-watch/canadian-military-public-servants
62•Teever•5h ago•138 comments

Redmond, WA, turns off Flock Safety cameras after ICE arrests

https://www.seattletimes.com/seattle-news/law-justice/redmond-turns-off-flock-safety-cameras-afte...
198•dredmorbius•4h ago•191 comments

Pose Animator – An open source tool to bring SVG characters to life (2020)

https://blog.tensorflow.org/2020/05/pose-animator-open-source-tool-to-bring-svg-characters-to-lif...
126•jerlendds•6d ago•13 comments

Interesting SPI Routing with iCE40 FPGAs

https://danielmangum.com/posts/spi-routing-ice40-fpga/
86•hasheddan•9h ago•6 comments

LLMs are steroids for your Dunning-Kruger

https://bytesauna.com/post/dunning-kruger
272•gridentio•7h ago•222 comments

Asus Ascent GX10

https://www.asus.com/networking-iot-servers/desktop-ai-supercomputer/ultra-small-ai-supercomputer...
178•jimexp69•6h ago•166 comments

Cybersecurity breach at Congressional Budget Office remains a live threat

https://www.politico.com/live-updates/2025/11/10/congress/cbo-still-under-threat-00644930
12•mooreds•44m ago•0 comments

How cops can get your private online data

https://www.eff.org/deeplinks/2025/06/how-cops-can-get-your-private-online-data
231•jamesgill•6h ago•51 comments

Sysgpu – Experimental descendant of WebGPU written in Zig

https://github.com/hexops-graveyard/mach-sysgpu
4•coffeeaddict1•1h ago•0 comments
Open in hackernews

Memory Safety for Skeptics

https://queue.acm.org/detail.cfm?id=3773095
42•steveklabnik•4h ago

Comments

whobre•1h ago
Ugh. I know all that and I am still sick of hearing about memory safety. My teammates spend way more time fixing security issues in “safe” languages than C/C++/whatever. It simply doesn’t matter…
kazinator•1h ago
It's hard to compare the two. A low-level memory safety issue can intersect with security. So can a flaw in logic that touches on security, but is reproducible and not undefined in any way.

The latter can often be more easily exploited than the former, but the former can remain undetected longer, affect more components and installations, and be harder to reproduce in order to identify and resolve.

As an exmaple of "more easily exploited". Say that you have a web application that generates session cookies that are easy to forge, leading to session hijack. Not much skill is needed to do that, compared to exploiting a memory safety problem (particuarly if the platform has some layers defenses against it: scrambled address space, non-executable stacks, and whatnot).

mrkeen•1h ago
What security issues are biting you in safe languages that wouldn't also appear in C/C++ ?
bluGill•1h ago
A large number of real world security issues are attacks on humans not software. No programming language can solve social engineering problems.
kazinator•1h ago
> If you're tired of hearing about memory safety, this article is for you.

Tell me more about memory safety, any time; just hold the Rust.

Rust skeptics are not memory safety skeptics. Hopefully, there are no memory safety skeptics, other than rhetorical strawmen.

Yoric•1h ago
I've spoken with quite a few C++ developers who swear that they don't need memory safety tooling because they're good enough to achieve it on their own. More than a few also expect that the worst that can happen from breaking memory safety is a SEGFAULT, which also suggests that they don't understand memory safety.

So, I'd say that there is still some outreach to do on the topic.

On the other hand, you're absolutely right that Rust is only one of the many ways to get there.

kazinator•21m ago
OK, so those are skeptics about tooling, not about memory safety per se.

And not even about tooling per se, since achieving safety on their own doesn't literally mean on their own; they are relying on tooling.

True Scotsman's "on your own" means working in assembly language, in which you have to carefully manage even just calling a function and returning from it: not leaving stray arguments on the stack, saving and restoring all callee-saved register that are used in the function and so on.

Someone who thinks that their job is not to have segfaults is pretty green, obviously.

Ar-Curunir•1h ago
> Hopefully, there are no memory safety skeptics, other than rhetorical strawmen.

There are plenty of such skeptics. It's why Google, Microsoft, etc all needed to publish things like "70% of our vulnerabilities are memory-safety linked".

Even today, the increasing popularity of Zig indicates that memory-safety is not taken as a baseline.

MeetingsBrowser•32m ago
Good point. There are even two posts about Zig on the front page along side this post.
AlotOfReading•1h ago
I wish memory safety skepticism was nothing more than a rhetorical strawman. It's not hard to find prominent people who think differently though. Take Herb Sutter for example, who argues that "memory safety" as defined in this article is an extreme goal and we should instead focus on a more achievable 95% safety instead to spend the remaining effort on other types of safety.

I can also point to more extreme skeptics like Dan O'dowd, who argue that memory safety is just about getting gud and you don't actually need language affordances.

Discussions about this topic would be a lot less heated if everyone was on the same page to start. They're not. It's taken advocates years of effort to get to the point where we can start talking about memory safety without immediate negative reactions and that process is still ongoing.

bmurphy1976•57m ago
I prefer to treat testing like insurance. You purchase enough insurance to get the coverage you need, and not a penny more. Anything beyond that could be invested better.

Same thing with tests, get the coverage you need to build the confidence in your codebase, but don't tie yourself in knots trying to get that last 10%. It's not worth it. Create some manual and integration tests and move one.

I feel like type safety, memory safety, thread safety, etc. are are all similar. Building a physics core to simulate the stability of your nuclear stockpile? The typing should be second to none. Building yet another CSV exporter? Who gives a damn.

Context is so damn important.

Yoric•27m ago
> Building yet another CSV exporter? Who gives a damn.

The problem with memory unsafe code is that it can have unexpected and unpredictable side-effects. Such as subtly altering the critical data you're exporting, of letting an attacker take control of your CSV exporter.

In other words, you need quite a lot of context to figure out that a memory bug in your CSV exporter won't be used for escalation. Figuring out that context, documenting it and making sure that the context never changes for the lifetime of your code? That sounds like a much complex proposition that using memory-safe tools in the first place.

AlotOfReading•23m ago
This is a perfectly reasonable argument if memory safety issues are essentially similar to logic bugs, but memory unsafety isn't like a logic bug.

A logic bug in a library doesn't break unrelated code. It's meaningful to talk about the continued execution of a program in the presence of logic bugs. Logic bugs don't time travel. There are ways to exhaustively prove the absence of logic bugs, e.g. MC/DC or state space exploration, even if they're expensive.

None of these properties are necessarily true of memory safety. A single memory safety violation in a library can smash your stack, or allow your code to be exploited. You can't exhaustively defend against this with error handling either. In C and C++, it's not meaningful to even talk about continued execution in the presence of memory safety violations. In C++, memory safety violations can time travel. You typically can't prove the absence of memory safety violations, except in languages designed to allow that.

With appropriate caveats noted (Fil-C, etc), we don't have good ways to retrofit memory safety onto languages and programs built without it or good ways to exhaustively diagnose violations. All we can do is structurally eliminate the possibility of memory unsafety in any code that might ever be used in a context where it's an important property. That's most code.

samdoesnothing•29m ago
> Take Herb Sutter for example, who argues that "memory safety" as defined in this article is an extreme goal and we should instead focus on a more achievable 95% safety instead to spend the remaining effort on other types of safety.

I don't really see how that's a) a scepticism of memory safety or b) how it's not seen as a reasonable position. Just because someone doesn't think X is the most important thing ever doesn't mean they are skeptical of it, but rather that the person holding the 100% viewpoint is probably the one with the extreme position.

kazinator•3m ago
[delayed]
edmccard•1m ago
> Take Herb Sutter for example, who argues that "memory safety" as defined in this article is an extreme goal and we should instead focus on a more achievable 95% safety

I wonder how you figure out when your codebase has reached 95% safety?

vlovich123•1h ago
I’m curious, what memory safe alternative is there for a C/C++ codebase that doesn’t give up performance?

Also for what it’s worth Rust ports tend to perform faster according to Russinovich. Part of that may be second system syndrome although the more likely explanation is that the default std library is just better optimized (eg hash tables in Rust are significantly better than unordered_map)

bluGill•1h ago
Ada has been around for years. The approach to memory safety isn't as strong as Rust, but it is a lot strong than C or C++. C++ is also adding a lot of memory safety, it is a lot easier to bypass than it is in Rust (though I've seen Rust code where everything is marked unsafe), but you still get some memory safety if you try.

All benchmarks between Ada, C, C++, and Rust (and others) should come down to a wash. A skilled programmer can find a difference but it won't be significant. A skilled C++ programmer wouldn't be using unordered_map so it is unfair to point out you can use something bad.

vlovich123•43m ago
It has but you need spark too to avoid the runtime overhead. And I haven’t seen adoption of Ada in the broader industry so I wouldn’t pick it based on that. I would need to understand why it remains limited to industry’s that mandate government certification.

> A skilled C++ programmer wouldn't be using unordered_map so it is unfair to point out you can use something bad.

Pretending defaults don’t matter is naive especially in a language that is so hostile to being easy to add 3p dependencies (even without that defaults matter).

BeetleB•21m ago
> A skilled C++ programmer wouldn't be using unordered_map so it is unfair to point out you can use something bad.

C++ isn't my primary language. Pray tell - what's wrong with unordered_map, and what's the alternative?

jcranmer•11m ago
std::unordered_map basically specifies a bucket-based hashtable implementation (read: lots of extra pointer chasing). Most high-performance hashtables are based on probing.
littlestymaar•48m ago
> Rust skeptics are not memory safety skeptics

Definitely not all of them, yes.

> Hopefully, there are no memory safety skeptics, other than rhetorical strawmen.

You'll find the reality disappointing then…

eptcyka•1h ago
Rust certainly was not the first "systems programming" language that was memory safe, ADA was aiming for the same title and I think achieved it way before Rust.
Yoric•1h ago
While Ada is a great and sadly underused language, if my memory serves, it's not out-of-the-box memory-safe by today's definitions. I seem to recall that it takes Spark to make it memory-safe.
faustocarva•1h ago
> a roughly 70 percent reduction in memory-safety vulnerabilities.

Couldn't find this in the reference text. Is it my interpretation? https://www.memorysafety.org/docs/memory-safety/#how-common-...

burakemir•1h ago
This is a good article.

Small nit: As someone curious about a definition of memory safety, I had come across Michael Hicks' post. He does not use the list of errors as definition, and argues that such a definition is lacking rigor and he is right. He says;

> Ideally, the fact that these errors are ruled out by memory safety is a consequence of its definition, rather than the substance of it. What is the idea that unifies these errors?

He then offers a technical definition (model) involving pointers that come with capability of accessing memory (as if carrying the bounds), which seems like one way to be precise about it.

I have come to the conclusion that language safety is about avoiding untrapped errors, also known as "undefined behavior". This is not at all new, it just seems to have been forgotten or was never widely known somehow. If interested, find the argument here https://burakemir.ch/post/memory-safety-the-missing-def/

tptacek•53m ago
What's important is the context in which the term is used today: it's specifically about security and software vulnerabilities, not about a broader notion of correctness and program reliability. Attempts to push past that have the effect of declaring languages like Java and Python memory-unsafe, which is not a defensible claim.
pizlonator•1h ago
This article comes up with yet another definition of memory safety. Thankfully, it does not conflate thread safety with memory safety. But it does a thing that makes is both inaccurate (I think) and also not helpful for having a good discussion:

TFA hints at memory safety requiring static checking, in the sense that it's written in a way that would satisfy folks who think that way, by saying thingys like "never occur" and including null pointer safety.

Is it necessary for the checking to be static? No. I think reasonable folks would agree that Java is memory safe, yet it does so much dynamic checking (null and bounds). Even Rust does dynamic checking (for bounds).

But even setting that aside, I don't like how the way that the definition is written in TFA doesn't even make it unambiguous if the author thinks it should be static or dynamic, so it's hard to debate with what they're saying.

EDIT: The definition in TFA has another problem: it enumerates things that should not happen from a language standpoint, but I don't think that definition is adequate for avoiding weird execution. For example, it says nothing about bad casts, or misuses of esoteric language features (like misusing longjmp). We need a better definition of memory safety.

tptacek•55m ago
I want to be there with you, but the definition this piece uses is, I think, objectively the correct one --- "memory safety", at least as used in things like "The Case For Memory Safe Roadmaps" government guidance, is simply the property of not admitting to memory corruption vulnerabilities.

I don't see where you're seeing the article drawing a line between static and dynamic defenses. The article opens by noticing Rust isn't the first memory safe language. It is by implication referring to things like Java, which have dynamic, runtime-based protections against memory corruption.