HNHacker News
TopNewBestAskShowJobs

boomlinde

3,758 karma · joined January 6, 2013

submissionscomments
boomlinde··on Markdown in /src
Humans aren't being committed to the src directory, so this is completely irrelevant to the point being made.
boomlinde··on AI Has No Wisdom and Neither Will You
> I don't think my comment implied that any testing and validation process will be fool proof.

It does by, attributing a change in quality to a "testing and validation problem".

If there is a change in programming methodology, as far as we know no change in testing and validation methodology and at the same time an increase in the production of bugs, it's not reasonable to attribute that increased error rate to testing and validation getting worse.

It's like adding spinning saw blades to the fronts of cars and then attributing the increased fatality rates to pedestrians not wearing safety reflectors.

boomlinde··on AI Has No Wisdom and Neither Will You
I think that we should realistically expect that even a very rigorous testing and validation process is not fool proof, just as we anticipated that the code isn't.

With that in mind, writing bad code is bad.

boomlinde··on What Zig felt like, coming from Rust
> You said

Yes, which you didn't respond to until now.

> And that’s far too broad in my opinion.

Similarly, it's far too broad to say that it's "much less error prone" to use a more general allocation strategy. Clearly we both make unspoken assumptions, but in the context of this discussion on Zig, where you initially responded to an example written in Zig, I think you actually understood what I meant.

boomlinde··on What Zig felt like, coming from Rust
You didn't answer nor apparently read my question. You can just answer it in whatever terms you consider some piece of software to be an application when you say "systems programming languages shouldn't be used to create applications in the first place."
boomlinde··on What Zig felt like, coming from Rust
How many seems like an irrelevant question to me. If there are such software domains at all, Zig may be a compelling alternative to languages that don't have a standard library that lets you choose an allocation strategy freely.

I also disagree that this is "the focus" of Zig. Technically speaking it seems like a rather minor design choice for the standard library.

boomlinde··on What Zig felt like, coming from Rust
You disagree with a point I never made. My point is that they enable easier memory management, regardless of whether they're more performant. I really don't understand how that point didn't get across. You must simply not have read what you responded to.
boomlinde··on What Zig felt like, coming from Rust
I don't know about more error prone. Benchmarks completely aside, freeing a batch of stuff you've allocated in a single place makes it easier to manage memory. I think it should be preferred wherever it's an option for that reason most of all. The "killer app" is something like an arena allocator that lives for the duration of an HTTP request.
boomlinde··on What Zig felt like, coming from Rust
What are the requirements and design constraints of an application? Please give a general answer that applies to all applications.
boomlinde··on What Zig felt like, coming from Rust
> But a lot of real world software just isn't that simple.

Zig doesn't force or even tends to prefer one way or another. If I want unassuming heap allocations that can be reclaimed in any order, there's an allocator for that. If I want an arena to discard at the end of something like a request or a video frame, there's an allocator for that. If I want to use a fixed backing buffer for the allocations, there's an allocator for that.

The point is that the standard library doesn't assume one or the other, which seems good if the problem is that "real world software just isn't that simple" in the more general sense that there's no one-size-fits-all allocation strategy.

boomlinde··on Linux from Scratch
Took me half a second to realize I would probably start with "LFS :: Linux From Scratch is the main book, the base from which all other projects are derived."
boomlinde··on What do Visa and Mastercard do? An intro to card networks
Here, this is standardized, and if a local subscription service provider wants to pull money from my account I explicitly grant them permission to do that, which I can revoke at a later point.
boomlinde··on Simple Is Not Small
> What might not be clear about this is that a struct loses runtime information. If you want to iterate a map, that's easy: call for (key, val) in map { .... If you want to iterate a struct ... get fucked? write a proc-macro?

I don't see how the example would benefit at all from having that information at run-time when it exists at compile-time. The problem with Rust specifically I think is that it's a relative PITA to get to the information that exists at compile-time in this case. In Zig, you'd just iterate over the fields using the same language you use for run-time code.

    const fields = std.meta.fields(@TypeOf(instance));
    inline for (fields) |field| {
        const name = field.name;
        const value = @field(instance, name);
        std.debug.print("{s}: {any}", .{name, value};
    }
The combination of high dynamicity at compile-time with low-effort switching between compile-time and run-time contexts makes this not too bad.
boomlinde··on Play GTA Vice City in the Browser
People don't generally refer to these old Windows games as "DOS games", though.
boomlinde··on Audacity 4.0
So, as I said, a matter of priorities.
boomlinde··on Audacity 4.0
> So, if you're going to have to rewrite your UI layer to disentangle it from your back-end anyway why not also bring it up to speed?

So, if you're going to have to rewrite your back-end to disentangle it from your UI layer anyway why not also bring it up to speed?

boomlinde··on Audacity 4.0
I think you may be underestimating how important playing back and recording audio is for an application built for that purpose.

This was already a widely adopted piece of software. It was my go-to for light audio work like trimming a sample, for being free and easy to use for exactly that.

boomlinde··on Ask HN: Why were OpenAI, Claude, and Grok simultaneously down?
Maybe a three-line npm package sneezed.
boomlinde··on Audacity 4.0
I saw the Tantacrul video back when it was released. I think that's when I went ahead and bought myself a personal Reaper license. My thought then was: wtf are their priorities like if they'll focus on a complete overhaul of the admittedly basic but functional interface over broken recording and playback of audio?
boomlinde··on Audacity 4.0
I've given up on Audacity because it hasn't kept up technically with how a typical home studio Linux system does audio, and looking at the change log it seems like they haven't addressed any of the problems I have with it in version 4.

You'd think, well, it supports JACK, so you're gold on both JACK and Pipewire, but they only do this in an extremely annoying way. It doesn't create a persistent JACK client. Only when you start playback or recording does it temporarily create a JACK client which disappears when playback or recording stops taking any connections you've made to it with it. The temporary JACK client then must autoconnect to a sink or source, for whatever reason that is neither a limitation of PW nor JACK.

So you'll undo this jank with an automatic connection manager, right? You'll configure it to immediately disconnect from whatever Audacity decided to connect to and automatically connect it to the source you want to record. Well, they've given the short-lived JACK client the brilliant and informative name "PortAudio", which is of course shared by other applications using portaudio. Even more brilliantly, the I/O ports are given new names on each new client!

Some while ago I started Audacity up (having forgotten that it's broken) and got invited to a user survey. There was no concern at all in the survey about the thing that Audacity fundamentally does. Do I want it to be a DAW? Do I want to be able to buy plugins within it? Do I want AI features?

Merely being asked these questions while their broken JACK implementation persists pissed me off. I want it to record and play back audio first of all. Audacity 4 looks like it's in the bizarre situation where it kind of looks like a well-designed DAW but behaves like it doesn't care about audio.

boomlinde··on Three sites made 215,128 “best software” pages for AI. Perplexity cites them
The humorous LLM-generated blurb Google frequently places before the useful search results once referred me to Grokipedia, an LLM-generated repository of vibe-facts seemingly created more to illustrate some reactionary point than to actually serve a practically useful purpose to anyone.
boomlinde··on Dwarf Fortress is getting the mother of all magic updates
Sure, maybe someone may enjoy Dwarf Fortress despite that, but as I recalled from my own experience, it wasn't despite it that I enjoyed getting into Dwarf Fortress, but in large part because of it.

So are you wrong in saying generally that it's "despite its terrible onboarding, not because of it", or am I coping by lying? Mind you, Dwarf Fortress is preceded by a whole genre of more traditional Rogue-like games that made losing hundreds or thousands of times for a lack of knowledge of the games' systems before you figured them out a fundamental part of their appeal, so I'm not exactly alone in this.

boomlinde··on I trained a small transformer in 1.5hrs and it beats many LLMs
> The "67 cents" part though is misleading imho. You can't extrapolate from there and think that investing say $100 will get you a lot better results.

Nothing about saying that it cost 67 cents implies that it will. Knowing only that it costs 67 cents you also have no reasonable basis for extrapolation. It doesn't indicate a trend whatsoever.

boomlinde··on Dwarf Fortress is getting the mother of all magic updates
I remember the "onboarding experience" essentially being losing over and over again and learning from my mistakes, getting a little further or trying a new approach altogether on each new attempt. Maybe it's an acquired taste but by the time I started playing Dwarf Fortress, I was not only already used to that, but thoroughly enjoying it as a core mechanic of games like Rogue, NetHack and Ancient Domains of Mystery.

I don't believe in the concept of "fun in general" in the sense you imply here. I've played very successful games that have evidently achieved popular appeal but that nonetheless turn me off because they're the absolute opposite of Dwarf Fortress: carefully manufactured designs of intentional experiences that you are guided through at every step. Some people really like that, some will want to be thrown in the wilderness with no clue, some want something in-between. Different strokes for different folks.

boomlinde··on “I just chose words carefully”
> but the former doesn't make sense to me; unless you're saying that there wouldn't be enough phonemes representable by the letters to define spellings for all English words?

Then you're inventing a phonetic alphabet that happens to look like the English alphabet. That's what makes discussions like this are pointless. No one has established a phonetic definition of "le" or "el", which is the only basis according to which one can decide which is phonetically more appropriate.

boomlinde··on Malleable software = solid bases and custom code
Sidenote, but what's with the ref=mdubakov.me query parameter attached to every link? Are there benefits of this over the "Referer" HTTP header other than trying to skirt around my configuration choice not to share my browsing history?
boomlinde··on “I just chose words carefully”

  Deliberate distractions
  from the functional end
  goal benefit other arts
  just as well, promoting
  lateral thinking. Brian
  Eno made a card deck of
  "oblique strategies" to
  help you out of blocks.
https://enoshop.co.uk/products/oblique-strategies
boomlinde··on “I just chose words carefully”
Conversations like this are a dead end. You can't devise a phonetic spelling convention without using a phonetic alphabet. The reason you think that "le" makes sense and the person you are responding to thinks otherwise is that in English, the pronunciation of "le" isn't phonetically consistent.

I imagine that GP's reasoning is that in writing "missile", the consonant is followed by a vowel, while phonetically the vowel is followed by a consonant.

The issue is further compounded by the fact that there's more than one common pronunciation of "missile".

boomlinde··on JIT Compiling Code in 5μs
Yes, but your claim is that applications can still have arbitrary execution vulnerabilities only on operating systems that allow dynamic executable code.

I am refuting that statement by showing that not allowing dynamic executable code is not enough. It is irrelevant to that end that you can mitigate ROP by other means.

boomlinde··on We found a division by zero bug in FFmpeg with a vibecoded fuzzer
Again, this is a crash bug, and again, whether it's a "self-dos" isn't a quality of the bug or ffmpeg.

The implications of the crash depends entirely on the implementation of the process it crashes. If I use ffmpeg as a library it'll crash my process upon processing the offending file. How is my process designed? How is every process that uses ffmpeg designed? You don't know, therefore you can't say that it's a "self-dos" in every case even if you know that it is in some cases.

Maybe I am clever enough to have read up on the history of ffmpeg vulnerabilities before deployment to an attacker-facing service and have designed a solution where a crash has minimal implications, but maybe I'm not, and haven't. It's beside the point.

← PreviousPage 2 of 34Next →