HNHacker News
TopNewBestAskShowJobs

dcsommer

759 karma · joined July 5, 2013

[ my public key: https://keybase.io/dcsommer; my proof: https://keybase.io/dcsommer/sigs/WrpLJLeW4-5GKHB2gaxmZ10bdgdMoE57HegeZXkC8S8 ]
submissionscomments
dcsommer··on We must pace the frontier
That's reductive. Without coordinated cooperation, enough actors will defect so game theory plus market forces will force acceleration on the frontier overall.
dcsommer··on YuE2 · Frontier Music with Symbolic Planning
For an informed take (from a professional musician, composer, and arranger) on where this is going for musicians and the music industry, I really recommend Adam Neely's video essay "Suno, AI Music, and the Bad Future": https://www.youtube.com/watch?v=U8dcFhF0Dlk
dcsommer··on The Maxwell Conjecture Is False (GPT 5.6 Sol)
Sure they care about elegance, or at least brevity. Minimizing tokens out, or generally "token efficiency," is part of the objective function for these systems. It doesn't mean they are perfect at it though.
dcsommer··on Show HN: Nectar, a Rust-like React that compiles to WebAssembly
What is the binary size comparison including wasm + js?
dcsommer··on C++: The Documentary
https://www.memorysafety.org/docs/memory-safety/
dcsommer··on Dav2d
Codecs are difficult and expensive to develop. Therefore they get reused in many contexts, including security critical ones. Sandboxing is shown over and over to not be a great security solution, so what this means in practice is that security-critical software that needs software decoding get pwned because software engineers don't care to prioritize it in the first place.

Why shouldn't safety be the default? If you really want to, it wouldn't be too hard to maintain a patch on top of rustc to drop the bounds checks if you want to compile object files without them.

Software decoding has a safety culture problem, and we need to talk about it.

dcsommer··on Dav2d
Performance should not be priority #1. Security should be. Why do we slow down all CPUs to prevent SPECTRE attacks yet continue to write in C? As rav1d shows, the perf loss is far less to migrate from C to Rust than it is to apply SPECTRE mitigations, and adding a sandbox around a memory-unsafe codec is going to be way more expensive again than using Rust code to start.
dcsommer··on Dav2d
How is this POV compatible with the exploitable vulnerabilities, caused by memory safety, found in openh264, x264, dav1d, and practically every video decoder out there?
dcsommer··on Dav2d
We must not continue to develop media codecs in memory unsafe languages. Small, auditable sections can opt-out perhaps, but choosing default-unsafe for this type of software is close to professional negligence.
dcsommer··on Art of Roads in Games
I think GP is simply identifying a potential popular niche that could be satisfied in a future city builder game, which seems quite on topic.
dcsommer··on Rust at Scale: An Added Layer of Security for WhatsApp
Just for reference, Wamedia ships on the major Meta apps and on iOS, Android, Desktop, and Web platforms.
dcsommer··on Rust at Scale: An Added Layer of Security for WhatsApp
We invested a lot into build system optimizations to bring this number down over time, although we did accept on the order of 200 KiB size overhead initially for the stdlib. We initially launched using a Gradle + CMake + Cargo with static linking of the stdlib and some basic linker optimizations. Transitioning WhatsApp Android to Buck2 has helped tremendously to bring the size down, for instance by improving LTO and getting the latest clang toolchain optimizations. Buck2 also hugely improved build times.
dcsommer··on Slouching Towards Bethlehem – Joan Didion (1967)
Great reading to see beyond the clichéd, sanitized retellings of that era. It really makes you consider the prices paid for what some call progress.
dcsommer··on Denial of Fuzzing: Rust in the Windows Kernel
Great work by the MS team. It is great progress to shift OOB access into a controlled crash. These kinds of panic bugs are then easy to remediate, with clear stack traces, as we see in the turn around time from the report.
dcsommer··on Hard Rust requirements from May onward
> basically fine

How many type confusion 0 days and memory safety issues have we had in dynamic language engines again? I've really lost count.

dcsommer··on Zig builds are getting faster
Is there a straightforward path to building Zig with polyglot build systems like Bazel and Buck2? I'm worried Zig's reliance on Turing complete build scripts will make building (and caching) such code difficult in those deterministic systems. In Rust, libraries that eschew build.rs are far preferable for this reason. Do Zig libraries typically have a lot of custom build setup?
dcsommer··on The challenge of maintaining curl
It would be cool to build a "library clout" measure for all open source software. First collect for all deployed software systems measures of usage per platform and along other interesting dimensions like how that system relates to others (is it a common dependency or platform for other deployed software). Use this to generate "clout" at a deployed software unit level. Then detect all open source libraries compiled in it by binary signature matching or through the software's own build system if it is open. Then a library's "clout" is built from the clout of the projects that use it.

This clout score might be used to guide investments in a non-profit for funding critical OSS. Data collection would be challenging though, as would callibrating need.

Basically make a rigorous score to track some of the intuition from https://xkcd.com/2347/

dcsommer··on Why Romania excels in international Olympiads
This is interesting if true, but without data I can't take this claim at face value.
dcsommer··on It’s not wrong that (for HN) “[facepalm emoji]”.length == 36
Neither are high and low surrogates - those are big ranges of code points that are illegal except for one specific (and not recommended) encoding (utf-16). Yet, there they will remain in Unicode.

Digits definitely are a form of text though. Unicode is for writing systems, which definitely includes writing numbers

dcsommer··on Uncertain<T>
Seems more proper to call it a `ProbabilityDistribution` type. It's a more general and intuitive way to handle the concept.
dcsommer··on '70 MPH e-bikes' prompt one US state to change its laws
Enforcement needs to be on the sales side, as enforcement at the consumer level is obviously impossible to scale. Also, class 2 (and 3) should not be allowed in bike lanes. If you have a throttle, you're not a bike; you're a motorcycle or moped. I see a clear difference in awareness and safety between pedal and throttle usage.
dcsommer··on There is no memory safety without thread safety
Unsafety in a language is fine as long as it is clearly demarcated. The problem with Go's approach is there no clear demarcation of the unsafety, making reasoning about it much more difficult.
dcsommer··on The Beam
"Strongly typed" is stretching it. Type checking is bolted on and not part of `erlc`. Typing is quite unergonomic in Erlang/Elixir (similar to Typescript bolted onto JS).

The type system is one of the weakest parts of the beam ecosystem.

dcsommer··on The Llama 4 herd
> 40% of Americans believe that God created the earth in the last 10,000 years.

Citation needed. That claim is not compatible with Pew research findings which put only 18% of Americans as not believing in any form of human evolution.

https://www.pewresearch.org/religion/2019/02/06/the-evolutio...

dcsommer··on A small violin part highlights bigger problems for the global economy
Have there been any studies or economists predicting macro-level benefits to the US economy with the tariffs? I'm not aware of any (much the opposite), but I'm interested if they exist.
dcsommer··on Computers and Mice – Mister Rogers Neighborhood
Yet I feel that AI gives such instant gratification that the boredom and struggle required for imagination is short-circuited and atrophies.
dcsommer··on Improving on std:count_if()'s auto-vectorization
For what languages would removing 'std::' realistically cause ambiguity for practicioners?
dcsommer··on Improving on std:count_if()'s auto-vectorization
If the goal is brevity, the rules could first replace 'std::' with nothing.
dcsommer··on Zig's dot star syntax (value.*)
It preserves a left to right reading of the code. You don't have to jump visually elsewhere.
dcsommer··on Zig's dot star syntax (value.*)
I think Rust could use some syntax improvements for pointer manipulation. It has suffix .await, so maybe the community is ready for suffix .* for dereference now too. Visually scanning left and right, along with the extra parentheses, makes pointer-based code in Rust worse than C++ almost. A fully left-to-right syntax would be amazing. EDIT: found https://github.com/rust-lang/rust/issues/10011 and https://github.com/rust-lang/rfcs/pull/3577
Page 1 of 9Next →