HNHacker News
TopNewBestAskShowJobs

foxhill

1,288 karma · joined June 2, 2011

submissionscomments
foxhill··on Making 768 servers look like 1
i do wonder how something like this can be generally implemented. i presume this must only support a subset of SQL/plpgsql, as some things would be.. utterly insane to manage manually. e.g., if i have a table with a btree-gist overlap constraint, or some inclusion-exclusion check-constraint (or literally any constraint that requires multiple rows to be fully determined - there are quite a lot of them), how on earth does this work?

there's a reason why postgres writing is (mostly) serialised (asterisk) to a single writer (asterisk asterisk). something something ACID, but in short by having multiple writers improves availability, but weakens integrity.

foxhill··on Trust your compiler: Modern C++
that's a nice example. on my M4, i measured 3.4s vs. 0.42s. honestly surprised there's ~10x improvement to be found.

as you've pointed out, you've literally micro-optimised this - isn't this what you'd expect? :)

foxhill··on How a 20 year old bug in GTA San Andreas surfaced in Windows 11 24H2
it probably shouldn’t be a “release” thing. actually, certainly. i do wonder how many bugs would never have seen the light of day, if someone’s “set” actually turned out to be a sequence (i.e. allowed duplicate values) resulting in a debug build raising an assert.
foxhill··on C++: terser (shorter) lambda == SHORTY (ab-use?)
huh. very cute. in the past, i had an idea for terser lambda syntax, similar to C#'s expression body functions - which i did end up implementing in clang:

    auto sum = [](auto a, auto b): a+b;
but this is something else. i didn't think i'd like it at first, but actually i think i might be coming around to it. the.. dollar syntax is regrettable, although it's not a show stopper.
foxhill··on Ask HN: With trust in Firefox gone, is Chrome-ish the only option?
you can't be serious, surely?

yes, mozilla's TOS update is a bad thing, but switching to chrome (or chromium-based) for it is really cutting your nose to spite your face.

foxhill··on Nvidia announces next-gen RTX 5090 and RTX 5080 GPUs
you’re conflating reaction times and latency perception. these are not the same. humans can tell the difference down to 10ms, perhaps lower.

if you added 200ms latency to your mouse inputs, you’d throw your computer out the of the window pretty quickly.

foxhill··on Stop making me memorize the borrow checker
what a miss.

i’d consider myself a day-to-day c++ engineer. well, because i am. i like lots of things from rust. there’s a few things i don’t. c++ has a lot to learn from rust, if it is to continue to exist.

but really.. isn’t this the point of the language? you need to understand the borrow checker because.. that’s why it’s here?

maybe i’m missing something.

foxhill··on European iPhones are more fun now
friends. you understand that you can just.. take it off, right?

fully unscrew the cap then just either continue twisting the cap over the the edge - honestly effortless - or just.. pull it off? the cap still functions as a cap, afterward.

apologies, but i don’t understand the furore over this change.

foxhill··on In ‘The Book Against Death,’ Elias Canetti rants against mortality
so, when do you want to die, then?

really, i’m not trying to be mean here. you assert life must be finite, and all i’m asking is how finite it should be.

foxhill··on Does anyone need a 1k Hz gaming display?
apologies, i wasn't being specific; none of what i said necessitates a CRT display, it was only as an example of how an older technology had less latency.

if modern a modern 60Hz LCD/OLED display couldn't get beneath 16.6ms latency, then what exactly is tearing?

foxhill··on Does anyone need a 1k Hz gaming display?
you don't need to "beam race" to achieve sub-frame latency - you don't need to be accurate. switching off vsync should, principally, be enough to achieve this.

otherwise, yes, modern APIs go out of their way to avoid the possibility of this (the dreaded "tearing" artifacts you see from the frame buffer being changed during the transmission of the video signal to the monitor). i don't believe older techniques like you've mentioned are at all possible today, and only really made sense to talk about when analogue displays were the norm.

foxhill··on Does anyone need a 1k Hz gaming display?
> An application with 10 frames of latency will be faster on a 1 kHz display than a perfectly coded application on a 60 Hz display.

thats actually not true. you seem to be implying that the best a 60hz display can manage is 16.6ms of latency. indeed that is the worst case value, but you should consider that early graphics technologies involved changing display modes mid scan.

it’s actually not ridiculous to suggest that old platforms had sub-millisecond latency; they did. if the scanline was on, or just before, the line where you would interact (i.e., the prompt line), the text you enter would appear immediately.

of course, “vsync”, tear free, and such like approaches “fixed” this - necessarily by adding at least a frame’s worth of latency - but also adding perceptual latency.

it’s an oft-overlooked aspect of refresh rates. a 60hz CRT, without vsync, still has the lower bound of latency lower than a 120hz display. perhaps even 240hz.

i’ve used two 240hz displays for years now. i’ll never go slower than that.

foxhill··on Run0, a systemd based alternative to sudo, announced
fair enough :) apologies!
foxhill··on Run0, a systemd based alternative to sudo, announced
correct me if i’m wrong, but i believe the point that is trying to be made is;

a system user/admin has an intuition about files. saying that ‘journalctl -f -u’ (fu, indeed :) and whatever else is inherently undiscoverable, and is a.. basically orthogonal mechanism for handling what should be a simple task. i.e., viewing some logs. it’s far easier to compose and extend from files (what if i only care about the mtime of the log, for instance), than this.

look, i think systemd isn’t.. terrible. i also think it’s suffered a bit of complexity fetishisation, and it seems as though that this resulting complexity may have become invisible to you.

run0 doesn’t seem like a bad idea. but i am wincing a bit at the thought of unrestricted javascript determining access control.

foxhill··on An untold story of LSD psychotherapy in communist Czechoslovakia
yes, that’s what collective health care means, regardless of if it’s state-mandated, or fully private.

you, or i, don’t get to decide what’s fair to treat, or who’s deserving of treatment.

foxhill··on I am the fold (2015)
the (presumably) stateless, serverless function that appears to serve the site has.. crashed?

i dunno, i feel like the wording of this error message could be improved :)

foxhill··on UK plan to digitise wills and destroy paper originals "insane" say experts
only if you want to store them in the open air. vacuum sealing them would obviate the need for an expensive hvac bill.

and deep ground is not ridiculous. we’re expecting the storage to be in the “mostly write only” regime, after all.

foxhill··on A curiously recurring lifetime issue
i am quite familiar with compiler internals :)

of course, across the TU boundary things get difficult, but i don’t think it’s fair to dismiss LTO entirely (although.. i agree with the thesis that it’s not particularly.. good)

similarly, de-virtualisation is an optimisation technique compilers will aggressively use to improve performance, although you’re right that it can’t look through another source file, so it is not without limitations here.

but we’re not being general, we’re being specific; the safety issues that are being discussed are well within the remit of the c++ type system here, and i don’t think we’re doing any favours to anyone by letting this rvalue be accessed in this way. it is certainly not idiomatic to provide library code that can so violently implode with seemingly regular use. i find it difficult to believe that lifetime issues like this are undiagnosable.

foxhill··on A curiously recurring lifetime issue
ah, sorry, i didn’t read that correctly.

perhaps for values like this you’re fine. i think my point still stands about the reader of a built-in list/sequence type, surely?

and, not to sound facetious, that’s exactly what optimisers do :)

the c++ type system is more than capable about reasoning about lifetimes, the issue is that, with c++, it’s an optional part of the language. also, the lack of non-destructive moves. but to require both of those things in the language would require, essentially, the borrow checker in rust.

foxhill··on A curiously recurring lifetime issue
i could be wrong, but i’m reasonably confident that this is UB for even trivial types? someone more knowledgeable with the language lawyering would need to opine one way or the other.

regardless of that outcome, i think i’d prefer to require a value preserving the lifetime of the reader/view. in the cases that it may not be necessary, i'd prefer to lean on the optimiser to take care of it..!

foxhill··on A curiously recurring lifetime issue
apologies, perhaps i’m missing something here, having not used cap’n proto in any context at all before.

is it not possible to delete the rvalue reference overload of ‘getList’?

as far as i can tell, the error producing code wouldn’t have produced a diagnostic, but failed to build in the first instance, like the rust case?

foxhill··on Beeper Mini is back
the optics are already less than ideal for apple. beeper mini dismisses the any technical challenge apple may claim a hurdle to android having iMessage.

i don’t doubt this will also get shutdown in the near term, but i’m 70% confident in a surprising acquisition & continued support from apple in the longer term.

it will be hard for apple to continue to claim they are pro-user when they appear to be this hostile toward android users.

foxhill··on How I got here
presumably because OP was traumatised by this interaction with law enforcement that - had things been only subtly different - could have been a catastrophic event in their life.

there wasn’t a moral crime here - MDMA is widely regarded to be.. safe (please don’t bite on that, i mean to say that current research indicates that it’s probably less dangerous than alcohol). so why should that have been so traumatic?

foxhill··on Prediction markets can tell the future. Why is the US so afraid of them?
yes, as opposed to the stock market; if i go buy AAPL calls, i can’t expect to manipulate apple’s share price by, say, buying a bunch of iphones.

conversely, i can’t buy puts, hoping that my stock sell off will effect them being in the money at expiry.

something something market forces and what not, but the long and short of it (no pun intended) is that.. if it were profitable, people would be doing it.

insider trading is illegal for numerous reasons, “abuse of trust” isn’t wrong, it’s just wholly incomplete.

foxhill··on Canonical shows how to use Snaps without the Snap Store
oh god i just updated to ubuntu 22.04 and it’s a been a nightmare. i use firefox, and ubuntu want me to use the snap-based distribution now. it didn’t tell me that’d be a thing, so i was surprised when opening firefox that:

* it took ages to start up cold

* my window theming was ignored

* my bookmarks and extensions were just.. gone

* this was marketed as a benefit to me

infuriated, i added the mozilla PPA, and told apt to get firefox from there. that was fine, nothing was deleted, and it all worked again.

imagine my next surprise, when i go to use it the next day, and the snap variant was back! running ‘apt dist-upgrade’ fixed it again, but this happens every day. something is silently re-installing firefox every night, and i have run out of energy to find it and stop it.

when i next have the time, i’m dropping this distro and switching to arch or even perhaps gentoo again.

but hey, at least with linux i have the choice :)

oh, and whilst i’m here, wayland is still - unfortunately - not desktop ready.

foxhill··on Mistral releases ‘unmoderated’ chatbot via torrent
it's a LLM. none of them have human decency. none of them understand anything - so how could they?

> The murder bit though - people do Google “how to poison my wife” or whatever, and that turns up as evidence in trials.

"weapon, motivation, oppertunity" are - generally speaking - the threshold for a murder prosecution. no one is getting convicted of murder because they googled how to kill someone (in isolation, at least).

> A local LLM can discuss in more detail and answer the parts you need clarified. All with no trail of logs.

ah, so, perhaps the government should also be keeping an eye on our book purchases, library rentals, etc.?

apologies, but i don't buy your dismissive assertion that the harm is non-zero.

foxhill··on WiFi without internet on a Southwest flight
let me guess, you experience “random selection” events more than the expected amount?

apologies for joking. it must suck.

foxhill··on Apple's A17 Pro Within 10% of i9-13900K, 7950X in Single-Core Performance
two process nodes difference. apple have bought out all of TSMC’s “3nm” capacity. they obviously consider it an important competitive advantage.
foxhill··on Apple's A17 Pro Within 10% of i9-13900K, 7950X in Single-Core Performance
“new architecture on new process node almost as fast as competitor’s flagship from a year prior, from two process nodes ago”

power efficiency aside (which admittedly is non-trivial), this is not that big a deal or particularly interesting, imo.

foxhill··on Oregon decriminalized hard drugs – early results aren’t encouraging
i don’t think that’s a sensible reading or conclusion from OP’s comment.

indeed, your conclusion appears to desire the very thing OP was calling in to question without justification - the existence of that authority figure.

why do you think people should be told how to be? remember it’s more frequently been the law that has outlawed being gay, or say, more recently in florida, wearing the wrong thing.

Page 1 of 17Next →