MurphyA/hacker-news huggingface dataset:
by brushfoot | 2025-10-08 22:08:05+00:00
Yes, and in fact, Lena's response is part of the dialog. And its dismissiveness is telling. Not only does it reflect her attitude toward her constituents, it also exposes her tacit premise that digital communications are somehow unreal.

It's as if, for her, only phone calls, speeches, or handwritten letters would be enough to start a dialog. She seems to be under the misapprehension that digital communication is something to which norms and laws and, fundamentally, rights don't apply. Which is a misguided and dangerous belief.
by jeroenhd | 2025-10-08 22:08:34+00:00
In the situation you're describing, Happy Eyeballs would've kept spamming unnecessary packets across the internet from any framework/language. Python's (technically correct) usage of IPv6 forced someone to actually fix the problem (the misconfigured firewall or DNS).

The more of these half-solutions you make default, the more fragile and confusing networks become. Things like these are what I find so infuriating about "opinionated" frameworks like Go's standard library, because they'll happily apply patch jobs that'll probably mostly work most of the time as a default and leave you to reverse engineer the problem when the workaround eventually collapses.
by ncruces | 2025-10-08 22:08:36+00:00
I merged a few PRs to SIMD optimize Wasm WASI libc, but it all got stalled in str(c)spn (which is slightly more sophisticated than the rest).

There wasn't much appetite for any of it on Emscripten.

https://github.com/WebAssembly/wasi-libc/pulls?q=is%3Apr+opt...
by verdverm | 2025-10-08 22:08:56+00:00
I'd add my general impression is that all the good designers that were at Google are gone, looking across their portfolio

Take even the Gemini Web App... what set Google apart in the early days? Search was just an input box, no clutter or calls to action. They have recently decided to break from this (they did have it clean beforehand) and try to get me to use image generation and other calls to action. Please get rid of the slop before I can even make my own slop!

and don't egg me on about Google Cloud... it's speed now feels like Jira, which to many people's surprise has changed course and is quite fast now
by maples37 | 2025-10-08 22:09:52+00:00
Apparently they have a "unexplained crashes must have an explanation determined" policy ever since there was a trend of uninvestigated unexplained crashes that were canaries in the mine for a security issue.

https://blog.cloudflare.com/however-improbable-the-story-of-...

> But [the Cloudbleed sensitive information disclosure security incident] wasn’t the only consequence of the bug. Sometimes it could lead to an invalid memory read, causing the NGINX process to crash, and we had metrics showing these crashes in the weeks leading up to the discovery of Cloudbleed. So one of the measures we took to prevent such a problem happening again was to require that every crash be investigated in detail.

Since then, they have a "no crashes go uninvestigated" policy, which for the scale Cloudflare operates at, seems pretty impressive.
by renehsz | 2025-10-08 22:09:58+00:00
> Such laws cannot be enforced.

Tech companies can certainly be forced to build surveillance into their chat applications and operating systems. This doesn't have to be about backdooring crypto.

> Enforcement can only be arbitrary.

Sure, but it would be forced upon the vast majority of the population. Tech-savvy people will find ways to circumvent it, so will criminals, but that doesn't make mass surveillance of all others any less scary.
by tsimionescu | 2025-10-08 22:10:03+00:00
You can model things as having M be a constant - and that's what people typically do. The point is that this is a bad model, that breaks down when your data becomes huge. If you're tying to see how an algorithm will scale from a thousand items to a billion items, then sure - you don't really need to model memory access speeds (though even this is very debatable, as it leads to very wrong conclusions, such as thinking that adding items to the middle of a linked list is faster than adding them to the middle of an array, for large enough arrays - which is simply wrong on modern hardware).

However, if you want to model how your algorithm scales to petabytes of data, then the model you were using breaks down, as the cost of memory access for an array that fits in RAM is much smaller than the cost of memory access for the kind of network storage that you'll need for this level of data. So, for this problem, modeling memory access as a function of N may give you a better fit for all three cases (1K items, 1G items, and 1P items).

> That's not even true: there are plenty of "memory-aware" algorithms that are designed to maximize the usage of caching.

I know they exist, but I have yet to see any kind of popular resource use them. What are the complexities of Quicksort and Mergesort in a memory aware model? How often are they mentioned compared to how often you see O(N log N) / O(N²)?
by x0x0 | 2025-10-08 22:10:46+00:00
... could we get webauthn / yubikeys prioritized for fly? afaik (don't want to disable 2fa to find out), it only supports totp.

For everyone reading though, you should try fly. Unaffiliated except for being a happy customer. 50 lines of toml is so so much better than 1k+ lines of cloudformation.
by pydry | 2025-10-08 22:10:54+00:00
>The amount of total financial support provided to Ukraine is lower than that which Russia has earned from the same bloc.

The amount of aid sent during the war totaled up to about $300 billion, which is roughly equal to the Russian military budget for the same period.

Thats not counting all of the "soon to be expired" stuff they handed over in 2022/2023, declaring it was worth $0 because it would have been disposed of.

>Saying that, Russia is making at best incremental gains for huge casualties.

For every body bag they get back theyve recently been handing over 44.

Territorial gains are only relevant for them right now insofar as it serves their overriding goal of attrition.

>They certainly aren't going to conquer the rest of Donbass by this year or even by the 4th anniversary.

If it serves the overall goal of attrition im sure theyd be happy to drag it out beyond February. Theyre not on a deadline.

The problem is that the more the Ukrainian army gets hollowed out by attrition now, the faster and more complete the eventual collapse will be.
by boothby | 2025-10-08 22:10:58+00:00
It says that for a sufficiently large storage system, the information within will ultimately be limited by the surface area and not the volume. That you can indeed judge a book by its cover. For the sake of asymptotic analysis of galactic algorithms, one need only consider schemes for reading and writing information on the surface of a sphere. Where it comes to "real hardware," this sort of analysis is inapplicable.
by tgsovlerkhgsel | 2025-10-08 22:11:37+00:00
This is why properly working password managers are important, and why as a web site operator you should make sure to not break them. My password not auto-filling on a web site is a sufficient red flag to immediately become very watchful.

Code-based 2FA, on the other hand, is completely useless against phishing. If I'm logging in, I'm logging in, and you're getting my 2FA code (regardless of whether it's coming from an SMS or an app).
by Sammi | 2025-10-08 22:11:50+00:00
Svelte version 3 used to statically analyze at compile time which things could change which things and it would build a "direct" reactivity system from that. So kinda both compile time and runtime.

But Svelte 5 changed to use a signals based approach just like Vue and Solidjs, which is runtime based and more flexible. Svelte chose to add some compile time syntax sprinkles on top that they call "runes", because they like a simpler syntax. But signals are fundamentally a runtime concept.
by moefh | 2025-10-08 22:12:07+00:00
Would that be wise? The implemented solution uses a temporary register to hold the full value being added to rsp.

I don't know enough about how people use the go assembler, but I imagine it would be very surprising if `add $imm, rsp, rsp` clobbered an unrelated register when `$imm` is large enough. Especially since what's clobbered is the designated "temporary register", which I imagine is used all the time in handwritten go assembly.
by simonw | 2025-10-08 22:12:15+00:00
I don't think you should call yourself a "vibe engineer" because you use AI tooling, just like I don't think you should call yourself a "continuous integration engineer" if part of your job role occasionally involves configuring GitHub Actions.

But the act of working on GitHub Actions could be referred to as "continuous integration engineering", just like the act of figuring out how best to build software engineering processes around LLM tools could be called "vibe engineering".
by alsetmusic | 2025-10-08 22:12:32+00:00
I started with FreeNAS or whatever flavor of it existed well over a decade ago. It was enough hassle that I went Synology because the stuff I like tinkering with isn't the storage of my most important data. Everything I do with NUCs, Pis, VMs, etc is somewhat ephemeral in that it's all backed up multiple times and locations.

I spent five hours debugging a strange behavior in my shell with some custom software this morning and submitted a bug report to a software vendor that was not the expected cause of the issue. I feel great about it. I used to feel great about my Synology NAS, too.

Qnap, Ugreen, whatever else, we'll see when my current model is due for replacement. Synology will have to perform pretty much miracles before then for me to consider them again after three generations of their hardware that were all very satisfactory. What a major mistake.

They weren't perfect, but they were perfect for my needs. Not anymore.
by lazide | 2025-10-08 22:13:08+00:00
If you check out the thread, I think you’ll see it wasn’t me making it into a flamewar, but rather a bunch of folks with apparently no idea what Islam even is (like literally core tenets). And somehow thinking that me stating them is harshing on Islam, which seems really funny actually? Isn’t that the anti-Islamic sentiment in reality?

It’s like if people accused me of being antisemitic because I was just saying that Jews believe they have a special deal with god. Or that I hate Christians because I said they believe Jesus was the son of god. When that’s literally one of the core tenets of Judaism/Christianity.

I’m not hating on any religion here, just pointing out core tenets that are at the root of ideological conflicts!

Personally, I think this is a great example for surfacing the actual underlying problems here.

Which is that trying to apply your own core values to something/someone with wildly different core values from a position of ignorance produces bad outcomes for everyone.

And any sort of ‘high ground’ definition is just internal propaganda - which everyone does need - but has little to no connection to actual reality.
by nadis | 2025-10-08 22:13:11+00:00
Thanks for the citation.

From the report you shared:

> "On the other hand, the Men segment, while smaller in comparison, is steadily gaining momentum. The growth in this segment is fueled by a rising awareness among men about skincare, supported by increasing marketing campaigns and product innovations tailored to men’s skin types. This segment is expected to expand as societal attitudes shift, and men increasingly prioritize grooming and skincare routines aimed at maintaining a youthful appearance."

I think is a more data-driven explanation of what I've observed, although you're right that women are the majority of anti-aging product consumers as defined by this report (seems like mostly skincare and cosmetics, makes sense).
by ggm | 2025-10-08 22:13:12+00:00
The antipsychotic drugs cause weight gain either by a biochemical pathway change or because of behavioural changes but no matter which, patients on these drugs get weight related problems.

I don't think semaglutide directly affects their mental states (although it may since there's suggestions it helps with other problems OCD perhaps) but reducing their weight related health issues would be massive.

The report said to me "with care, it's safe and beneficial" and that's great to know. Hopefully the research community is going down a list of different classes of people on (complex) drug regimen who might have drug interaction risks, doing a risk assessment, starting with the ones who get weight gain as a problem in their treatment.

(Not a doctor or epidemiologist, just fascinated by it)
by quickthrowman | 2025-10-08 22:13:13+00:00
Russia is essentially a mafia with a gas station.

The problem is, this mafia has a shitload of nuclear weapons. Without those, their vast land holdings east of the Urals would’ve already been taken by China.

Both China and Russia have concentrated vast amounts of power into a single person, it gets bloody and chaotic when the ‘one powerful man’ dies and there’s a power struggle.
by kstrauser | 2025-10-08 22:13:59+00:00
No, it was a pretty complete ban. From a reputable reviewer[0]:

> New Installations Blocked for Non-Verified Drives

> As discussed in our NASCompares coverage and testing videos, attempting to initialise the DS925+ with hard drives that are not on the 2025 series compatibility list will block you from even starting DSM installation.

and

> Expanding Existing Storage Pools with Unverified Drives is Blocked

> Another key limitation to note is that you cannot expand an existing storage pool using unverified drives — even if your system was initialized using fully supported drives.

and

> To test RAID recovery, one of the three IronWolf drives in the migrated SHR array was removed, placing the system into a degraded state. We then inserted a fresh 4TB Seagate IronWolf drive.

> Result: DSM detected the new drive but refused to initiate RAID rebuild, citing unsupported media.

You could pull all of your drives from an older Synology and put them in the new device, but you couldn't add drives to the volume or replace crashed drives. And if you were starting with a brand new NAS, you couldn't even initialize it when using 3rd party drives.

I'm OK with a warning notice. I'm not even remotely OK with this.

By the way, their official drive compatibility list for the DS923+[1] shows dozens of supported 3rd-party drives. The same guide for the DS925+[2], an incremental hardware update, shows 0. So if you bought a bunch of drives off their official support list, they're useless in newer models. Apparently a Seagate IronWolf was perfectly fine in 2023 and a complete dud in 2025.

Oh, and Synology only sells HDDs up to 16TB in size[3], and they only have up to 12TB drives (for $270) in stock today. That price will get you a 16TB IronWolf Pro off Amazon. If you have cash to spend, you can buy a 28TB IronWolf Pro there, which is 2.3x bigger than the largest Synology you can order from the first-party store today.

[0] https://nascompares.com/guide/synology-2025-nas-series-3rd-p...

[1] https://www.synology.com/en-us/compatibility?search_by=drive...

[2] https://www.synology.com/en-us/compatibility?search_by=drive...

[3] https://www.synology.com/en-us/products/store#product-storag...
by blindriver | 2025-10-08 22:14:08+00:00
Their biggest sin in my opinion as a multi-Synology-NAS-owner is their 2025 generation of NASes didn't have a CPU upgrade. I was ready and waiting to get the ds1825+ and when I saw that it had the same CPU as the ds1821+, the same as 4 years back, I gave up on them.
by ChrisMarshallNY | 2025-10-08 22:14:29+00:00
I enjoyed the self-deprecating humor behind it.

I have been almost got, a couple of times. I'm not sure, but I may have realized that I got got, about 0.5 seconds after clicking[0], and was able to lock down, before they were able to grab it.

[0] https://imgur.com/EfQrdWY
by crazygringo | 2025-10-08 22:14:33+00:00
How was it soft bricked? Is that a known thing, that everyone with that model, it stopped working? So you have good reason to believe that?

And if it wouldn't even turn on, what kind of support were you expecting to receive?

If a device that is out of warranty fails to turn on, there aren't many companies that are going to give it any support except to tell you to buy a new one.
by Dylan16807 | 2025-10-08 22:15:00+00:00
> The operation GP is thinking of is a full scan, and that will always take n(n^(1/3)) lower bound time.

It doesn't. Full scans are faster than accessing each memory address in an unordered way.

Let's look at a Ryzen 2600X. You can sustain 32 bytes per second from L1, 32 bytes per second from L2, and 20 bytes per cycle from L3. That's 64KB, 512KB, and 16MB caches all having almost the same bandwidth despite very different latencies.

You can also imagine an infiniband network that fills 2 racks, and another one that fills 50000 racks. The bandwidth of a single node is the same in both situations, so even though latency gets worse as you add more nodes and hops, it's going to take exactly O(n) time for a single thread to scan the entire memory.

You can find correlations between memory size and bandwidth, but they're significantly weaker and less consistent than the correlations between memory size and latency.
by bradgessler | 2025-10-08 22:15:04+00:00
When we did annual pen testing audits for my last company, the security audit company always offered to do phishing or social engineering attacks, but advised against it because they said it worked every single time.

One of the most memorable things they shared is they'd throw USB sticks in the parking lot of the company they were pentesting and somebody would always put the thing into a workstation to see what as on it and get p0wned.

Phishing isn't really that different.

Great reminder to setup Passkeys: https://help.x.com/en/managing-your-account/how-to-use-passk...
by blindseer | 2025-10-08 22:15:19+00:00
I'm excited to see `--trim` finally make it, but it only works when all code from entrypoints are statically inferrable. In any non-toy Julia program that's not going to be the case. Julia sorely needs a static mode and a static analyzer that can check for correctness. It also needs better sum type support and better error messages (static and runtime).

In 2020, I thought Julia would be _the_ language to use in 2025. Today I think that won't happen until 2030, if even then. The community is growing too slowly, core packages have extremely few maintainers, and Python and Rust are sucking the air out of the room. This talk at JuliaCon was a good summary of how developers using Rust are so much more productive in Rust than in Julia that they switched away from Julia:

https://www.youtube.com/watch?v=gspuMS1hSQo

Which is pretty telling. It takes a overcoming a certain inertia to move from any language.

Given all that, outside of depending heavily on DifferentialEquations.jl, I don't know why someone would pick Julia over Python + Rust.
by sauercrowd | 2025-10-08 22:15:29+00:00
I've interned at Cloudflare back in 2020 and had a great time- would highly recommend!

Can't speak to the locations but the stuff you're interested/experienced in seems extremely likely to overlap with what they do. They do a lot of very deep technical things in all kinds of areas.

my recommendation if you want to talk to someone about it: search github/twitter/linkedin for ppl who work there on stuff you like, and just send them a message and ask for a 20 minute call!

have done it plenty of times, has always been extremely positive
by arjie | 2025-10-08 22:16:22+00:00
I could have written this for my Ducati, but they nonetheless stole it, put it on a flatbed, tried to drill the ignition and fuel cap to start it and failed because Ducatis have had immobilizers for decades now. One dreams of a better class of thief but if they had the IQ would they be thieves of a multi-decade-old motorcycle? The tax that morons levy on the rest of us cannot be understated.

Look at what these lead-lickers did https://www.youtube.com/shorts/CBgoi28hXoI

Obviously, I recovered the bike and repaired it only to nearly be killed by an Uber driver at which point I called it a day.
by tptacek | 2025-10-08 22:16:27+00:00
We don't like TOTP, at all, for reasons even more obvious now, but our standard answer for advanced MFA has been OIDC, which is what most people should do rather than setting up bespoke U2F/FIDO2/Passkeys.

We will get to this though.

https://fly.io/blog/tokenized-tokens/
by ggm | 2025-10-08 22:16:32+00:00
There's going to be a surge in numbers while the backlog of CFS sufferers get some clarity, I will be interested in the post surge rates, and how this relates to long covid.

They may be much the same with a viral root or it may be the aetiology is similar, but radically different root causes.

Understanding a persisting background rate would help with health economics aside from just helping the cohort, because the upside of getting young people back into the workforce pays back several fold on the economy.
by feoren | 2025-10-08 22:16:41+00:00
Let's be careful about exactly what we mean by this. When we say an algorithm is O(f(N)), we need to be very clear about what N we're talking about. The whole point is to focus on a few variables of interest (often "number of elements" or "total input size") while recognizing that we are leaving out many constants: CPU speed, average CPU utilization, the speed of light, and (usually) the size of memory. If I run a task against some data and say "good job guys, this only took 1 second on 1000 data points! Looks like our work here is done", it would be quite unnerving to learn that the algorithm is actually O(3^N). 1000 data points better be pretty close to the max I'll ever run it on; 2000 data points and I might be waiting until the heat death of the universe.

I'm seeing some commenters happily adding 1/3 to the exponent of other algorithms. This insight does not make an O(N^2) algorithm O(N^7/3) or O(N^8/3) or anything else; those are different Ns. It might be O(N^2 + (N*M)^1/3) or O((N * M^(1/3))^2) or almost any other combination, depending on the details of the algorithm.

Early algorithm design was happy to treat "speed of memory access" as one of these constants that you don't worry about until you have a speed benchmark. If my algorithm takes 1 second on 1000 data points, I don't care if that's because of memory access speed, CPU speed, or the speed of light -- unless I have some control over those variables. The whole reason we like O(N) algorithms more than O(N^2) ones is because we can (usually) push them farther without having to buy better hardware.

More modern algorithm design does take memory access into account, often by trying to maximize usage of caches. The abstract model is a series of progressively larger and slower caches, and there are ways of designing algorithms that have provable bounds on their usage of these various caches. It might be useful for these algorithms to assume that the speed of a cache access is O(M^1/3), where M is the size of memory, but that actually lowers their generality: the same idea holds between L2 -> L3 cache as L3 -> RAM and even RAM -> Disk, and certainly RAM -> Disk does not follow the O(M^1/3) law. See https://en.wikipedia.org/wiki/Cache-oblivious_algorithm

So basically this matters for people who want some idea of how much faster (or slower) algorithms might run if they change the amount of memory available to the application, but even that depends so heavily on details that it's not likely to be "8x memory = 2x slower". I'd argue it's perfectly fine to keep M^(1/3) as one of your constants that you ignore in algorithm design, even as you develop algorithms that are more cache- and memory-access-aware. This may justify why cache-aware algorithms are important, but it probably doesn't change their design or analysis at all. It seems mainly just a useful insight for people responsible for provisioning resources who think more hardware is always better.