MurphyA/hacker-news huggingface dataset:
by lostdog | 2025-04-10 16:13:17+00:00
Great article, that gets the critique exactly right. The most frustrating part of Bazel is how shoddy the workmanship is. For example, Bazel throws away your analysis cache when you change flags that have nothing to do with what's being built or how, like flags that change what tests are run.

If course the biggest issue is that tiny operations take more time than necessary. For example, at $PreviousJob we wrote custom CLI tools and put them in our monorepo, but since you need Bazel to run them, running a basic tool took 9-12 seconds. So this revelation from the article was totally unsurprising:

> This rewrite was carefully crafted to optimize memory layouts, avoiding unnecessary pointer chasing (which was impossible to avoid in Java). The results of this experiment proved that Blaze could be made to analyze large portions of Google’s build graph in just a fraction of the time, without any sort of analysis caching or significant startup penalties.

Yeah, with attentive engineering it's not surprising that you can get massive speedups.

Finally, Bazel is ok at building multiple languages, but awful at getting them to depend on each other. I don't know what's going on here, but whatever magic makes it possible for any language to depend on C and C++ was not extended to other possible dependencies. So now you get to fight or rewrite all the rules, which is another bag of worms.
by numbsafari | 2025-04-10 16:13:41+00:00
This is what I've done for years: doing app development using the .test TLD, and .internal for, well, internal services that are more like "production IT".

I've had nothing but trouble with .local and .localhost. Specifically, .local is intended for other purposes (multicast DNS) and .localhost has a nasty habit of turning into just "localhost" and in some cases, resolvers don't like to allow that to point to anything other than 127.0.0.1.

More recently, I've stuck to following the advice of RFC 6762 and use an actual registered TLD for internal use, and then sub-domain from there. I don't use my "production" TLD, but some other, unrelated TLD. For example, if my company is named FOO and our corporate homepage is at foo.com, I'll have a separate TLD like bar.com that I'll use for app development (and sub-domain as dev.bar.com, qa.bar.com, and maybe otherqa.bar.com as needed for different environments). That helps avoid any weirdness around .localhost, works well in larger dev/qa environments that aren't running on 127.0.0.1, and allows me to do things like have an internal CA for TLS instead of using self-signed certs with all of their UX warts.

For "local network" stuff, I stick to ".internal" because that's now what IANA recommends. But I would distinguish between how I use ".internal" to mean "things on my local network" from "this is where my team deploys our QA environment", because we likely aren't on the same network as where that QA environment is located and my ".internal" might overlap with your ".internal", but the QA environment is shared.
by dekhn | 2025-04-10 16:13:47+00:00
yes, that was one of the externally shared narratives. The other part is that google didn't want to be beholden to nvidia GPUs, since they have an associated profit margin that is higher than TPUs, as well as resource constraints (total amount of GPUs shipping at any given time).

Another part that was left out was that Google did not make truly high speed (low-latency) networking and so many of their CPU jobs had to be engineered around slow networks to maintain high utilization and training speed. Google basically ended up internally relearning the lessons that HPC and supercomputing communities had already established over decades.
by nodesocket | 2025-04-10 16:13:47+00:00
I wrote a super basic DNS server in go (mostly fun and go practice) which allows you to specify hosts and ips in a json config file. This eliminates the need for editing your /etc/hosts file. If it matches a host in the json config file it returns that ip, else uses Cloudflare public DNS resolver as a fallback. Please; easy on my go code :-). I am a total beginner with go.

https://github.com/nodesocket/godns
by mike_hearn | 2025-04-10 16:14:02+00:00
That rule misses important cases:

• Adding a file. It hasn't been read before, so no tasks in your graph know about it. If you can intercept and record what file patterns a build tool is looking for it helps, but you can't easily know that because programs often do matching against directory contents themselves, not in a way you can intercept.

• File changes that yield no-op changes, e.g. editing a comment in a core utility shouldn't recompile the entire project. More subtly, editing method bodies in a Java program doesn't require the users to be recompiled, but editing class definitions or exposed method prototypes does.

• "Building" test cases.

• You don't want to repeat work that has been done before, so you want to cache it (e.g. switching branches back and forth shouldn't rebuild everything).
by MadVikingGod | 2025-04-10 16:14:12+00:00
This behavior can be replicated with any class that has two special methods: __neg__ that returns -1 and __sub__ that accepts ints and returns 1-other.

For example if you make this class:

class _: def __neg__(self): return -1 def __sub__(self, other): return 1-other

You get similar behavior:

>>> --_() 1 >>> _()--_() 2

Fun python for everyone.
by akomtu | 2025-04-10 16:14:20+00:00
Photon-based chips vs electron-based chips? It's interesting that photons and electrons are closely related: two neutral photons can become an electron-positron pair and vice versa.

The paper mentions that their photonic chip is less precise than an electronic one, but this looks like an advantage for AI. In fact, the stubborn precision of electron-based processors that erase the quantum nature of electrons is what I think is preventing the creation of real AI. In other words, if a microprocessor is effectively a deterministic complex mechanism, it won't become AI no matter what, but if the quantum nature is let loose, at least slightly, interesting things will start to happen.
by Gracana | 2025-04-10 16:14:42+00:00
I don't know what your question means.

OP said "why should I be bothered to read what nobody could be bothered to write," which I think is silly, because I enjoy all kinds of things that nobody bothered to create. Things that exist naturally, randomly, or arise through rules or physical laws. Waves on the beach, a fractal, a game of sudoku, a campfire at night.

Until recently, humans were the only source of writing. If you wanted to read something, it had to be something written by a human. Now you can read things that weren't written by a human, just like you can watch or smell or feel things not created by humans. I think that's neat. I don't think it devalues writing, at least not inherently.
by 9rx | 2025-04-10 16:14:52+00:00
> Only time will tell if this tech is deflationary or inflationary though.

Or both. That would be my bet. The industry in general will see a decline. The massive growth in developer numbers will place enormous supply-side pressure. But certain experts who remain supply constrained along with increasing demand for those special services amid the explosion of new software being written will make a killing.
by viccis | 2025-04-10 16:14:55+00:00
>Care to explain how Kristallnacht is in any way different from an intifada

Calls for a "global intifada" are simply calls to oppose the existence of the state of Israel as a settler colony in the land formerly known as Palestine. That's it. It is an immoral country, built by settlers as an ethnostate, and its existence is a moral stain on the world. Has literally nothing to do with "Jews" (I feel the same way about the Muslims in Nagorno-Karabakh right now) and everything to do with a bunch of jack boot fascists who ethnically cleansed an area and continue to oppress the remainder of the people there at gunpoint in massive concentration camps.

Calling for an intifada (which just means "resistance") against that is no difference than calling for the end of Rhodesia. This is a nation that made a man into a celebrity for raping prisoners.
by Natsu | 2025-04-10 16:15:02+00:00
From what I've found, being overweight negatively affects sleep. As far as I can tell, the extra weight simply makes it hard to breathe at night, leading to apnea. This can then cause depression and anxiety, depression because you wake up tired and feeling awful every single day and anxiety because you may wake up with night terrors after suffocating in your sleep.

At least it's easy to get a home sleep apnea test and an APAP/CPAP these days.
by kridsdale1 | 2025-04-10 16:15:22+00:00
In the 2020s I have used BUCK, BUCK2, and Blaze every working day. I don’t feel like getting in to details but I’ll just say that BUCK2 is the best of the 3 and I’m delighted it’s open source.

I don’t have experience with Bazel as it exists externally but I expect the internal Blaze has advanced far beyond it by now as the entire Google engineering world depends on it.
by gnav772 | 2025-04-10 16:15:30+00:00
Hey HN,

We’re building Leadbeam- an AI-powered field sales platform that helps reps generate leads, plan efficient days, log CRM data and complete next steps in seconds.

The Problem:

Field reps still rely on Google Maps, notes apps, and CRMs built for inside sales.

As a result:

- Hours are wasted on admin tasks and driving from location to location. On average, reps spend less than 28% of their time actually selling.

- Over 90% of field activity goes unlogged, leading to low conversion rates, and making it impossible to accurately transfer pipelines when a rep leaves the company or transfers territories.

- Sales leaders lack visibility into what’s actually happening in the field, making it hard to coach, forecast, or plan territory coverage effectively

What Leadbeam Does:

- Update CRM data in seconds using voice, image, and location intelligence.

- Help prioritize prospects given the reps location and likelihood to close.

- Generate intelligent follow-ups based on past interactions so no follow up falls through the cracks.

- Sales leaders get visibility into real-time rep activity, performance, and territory coverage. LeadMaps:

Our LeadMaps feature is currently in beta. It helps reps:

- Find the hottest leads in their given territory.

- Optimize routes to maximize daily visits, save time and fuel

- Company enrichment to improve conversion rates.

Results:

- CRM data increased by 6x (some teams 10x)

- Reps saved 5+ hours/week

- Conversion rates increased by 33%

We’re looking for feedback from field sales teams and Sales/RevOps leaders.

If you’re interested in a demo, you can request one through our website:

https://www.leadbeam.ai

Happy to answer any questions below.
by ano-ther | 2025-04-10 16:16:04+00:00
Ultrasound seems to be viable

> A study on structural quality control of Swiss‐type cheese with ultrasound is presented. We used a longitudinal mode pulse‐echo setup using 1–2MHz ultrasonic frequencies to detect cheese‐eyes and ripening induced cracks. Results show that the ultrasonic method posses good potential to monitor the cheese structure during the ripening process. Preliminary results indicate that maturation stage could be monitored with ultrasonic velocity measurements.

https://pubs.aip.org/aip/acp/article-abstract/894/1/1328/953...
Show HN: Pw-punch – sub-2KB JWT/password crypto – Edge-native, 0 deps
by idtpanic | 2025-04-10 16:16:55+00:00
I needed a lightweight crypto lib for JWTs and password hashing that works without Node. So I built `pw-punch`, a 4KB WebCrypto-only toolkit — no deps, no config.

It works great on Cloudflare / Deno / Bun. Would love to hear what you think.

I've been working on a tiny crypto utility that requires *no dependencies*, *no Node.js*, and works purely on the WebCrypto API — ideal for edge runtimes like *Cloudflare Workers*, *Deno*, *Vercel*, or *Bun*.

Features: - Password hashing using PBKDF2 + random salt - JWT-style token signing (HMAC-SHA256 / SHA512) - Token verification with claim checks (exp, iat, nbf, iss, sub, aud) - `kid` support (key rotation) - ~4KB gzipped, 0 config, 0 install

I built it because I needed something that just works on the edge with *zero install bloat*. Would love to hear your thoughts or feedback.
by cantrecallmypwd | 2025-04-10 16:18:25+00:00
Unsurprising from a qualitative, anecdotal perspective: heavy delta 9 THC users seem to develop "tweaker" psychological and personality changes. Just a little seems to result in chiller people. Moderation in all things except moderation. is often a fail-safe strategy.

A related issue is pervasive discounting of personal safety with a pattern of unsafe strategies like taking drugs of unknown quality and unknown strength, and smoking burning substances without filtration under the "it's natural" fallacy.
by waterhouse | 2025-04-10 16:19:04+00:00
If you look carefully, what happens there is prions screwing up your brain, and insomnia seems like more of a consequence than a cause.

> The cause of death for people diagnosed with fatal familial insomnia is damage to the brain and nervous system. This damage, caused by prion proteins accumulating in the thalamus, creates symptoms of insomnia and mental deterioration.
by BobaFloutist | 2025-04-10 16:19:47+00:00
Sorry, you think there's no longer appropriate and legitimate situations in which to call someone antisemitic? What does Israel's relative position of power have to do with how Jews are treated in other countries?

For that mater, I wouldn't necessarily use the word Sinophobic, but you don't think Asian-Americans being assaulted and harassed over the "Kung-flu" have a reasonable complaint or claim that their abuser was motivated by anti-Chinese sentiment?
by csense | 2025-04-10 16:20:05+00:00
This is fascinating. Email from Marc Horowitz, dated 12/1/1992:

"Does anybody have any contact information for David Chaum or DigiCash?

I think it's worthwhile to find out if any of the problems we've been discussing have been previously solved. It's possible that our experiment could increase visibility of digital cash to the point that a real commercial venture could work, in which case he may even be interested in helping us.

Email me personally, I'll summarize.

Marc"

If not for that missed connection, we might be living in an alternate universe where Bitcoin was invented in 1993-1994 and became the default mechanism for Internet payments, and PayPal never existed.
by lostdog | 2025-04-10 16:20:09+00:00
This great comment is another example of what's bad about Bazel: It has the least enlightening documentation. Bazels docs are thorough and useless. Every page you read assumes you already understand the concepts described on the page.

This comment explains a query, actions, and macros pretty decently, and I doubt you could find an explanation of these things in the Bazel docs that a new user could understand.
by bitwize | 2025-04-10 16:20:50+00:00
"Well, eet's no use crying over speeled mitochondria..." --Ren Höek

I don't think every mental health issue is traceable to mitochondrial dysfunction. But I'm pretty sure it's implicated in cardiovascular disease. Malfunctioning mitochondria can make your arteries more prone to inflammation which leads to greater lipid deposits. I even read somewhere (sorry, can't cite rn) that a major component of arterial plaques is bits of dead mitochondria.
by techpineapple | 2025-04-10 16:21:39+00:00
"Unmanaged 'messaging apps,' including any app with a chat feature, regardless of the primary function, are NOT authorized to access, transmit, process non-public DoD information. This includes but is not limited to messaging, gaming, and social media apps. (i.e., iMessage, WhatsApps, Signal). An Exception to Policy (E2P) request must be submitted by the appropriate Component for use of an unmanaged messaging app that is critical to fulfilling mission operations at https://rmfks.osd.mil/dode2p. "

https://dodcio.defense.gov/Portals/0/Documents/Library/Memo-...

https://www.snopes.com/news/2025/03/27/biden-authorized-sign...
by 93po | 2025-04-10 16:21:41+00:00
We also have a political environment that tries to gloss over the ways the two parties are similarly problematic and damaging while championing the idea that "we're the party of all things good and right and the other people are responsible for all bad positions".

Dems and Republicans alike support carbon emitting methods of power generating that result in over a million deaths a year worldwide. Voting for Trmp vs Bden probably doesn't have any real appreciable effect on worldwide pollution levels.
by pavel_lishin | 2025-04-10 16:22:07+00:00
> How would you deal with that?

1. Start marking them as spam, to train my email provider that this sender is to be treated as such (correctly).

2. Set up filters to automatically archive/mark-as-read those emails.

3. If I was having a particularly slow week with nothing else to do, start finding the emails of engineers & managers at various responsible entities, and making it their problem every time an email comes in.
by fifilura | 2025-04-10 16:22:35+00:00
I think most of Europe understands that half of you did not vote for the orange man.

And in particular if you are well educated or work at a university looking for new opportunities you will be more than welcome.

If you misbehave though you will probably be frowned upon as a MAGA. But not much more than a frown. No reason to invent any risk, most of Europe is still an open society and have not changed.

If you plan to go to Hungary or places like Serbia, I am guessing that you will more greeted.

And soon enough I guess you will be able to travel to Russia and Belarus (also Europe), but I would not recommend it.
by zeitg3ist | 2025-04-10 16:22:49+00:00
If you buy it vacuum-sealed from a shop, the packaging usually has additional branding from the producer.

Not a "favorite dairy", but if it's convenient to do so, I usually look for the "vacche rosse" type, which is more expensive but also noticeably different (and better). Of course it would be a waste to grate it over pasta; better to eat it on its own.
by raverbashing | 2025-04-10 16:22:51+00:00
Just doing the same thing they do, basically. Have a tiny transducer "hit" the cheese and listen for echo back.

Now, I don't think ultrasound would work (it's a harder cheese than Swiss cheese), also the mechanical interface would be a complication (you can't gel the cheese). CT would work but be expensive

But tiny percussions and analysis of echo/transmission delays would work in principle
by DrScientist | 2025-04-10 16:23:26+00:00
On the other hand these tools do allow individuals to connect and share.

I see it like politics ( at least the way it's managed in the UK ) - democracy means everyone get's to vote, leaflet door to door, politically organise etc. However there are ( in the non-online space ) strict regulations about money not being able to buy a larger voice - political spending is(was) strictly limited. You can't use broadcast media for political ads, apart from the government allocated slots.....

The regulations haven't kept up with the digital world - but they need to. Looking at what unfettered money has done to US politics is all the incentive you need.

One of the core problems is astroturfing is so easy online - money pretending to be people - in the end, I think the only solution is the loss of anonymity online - anonymity enables sock puppetry and astroturfing.

ie if we want to keep people's freedoms online to say what they want ( but within the law ), but at the same time stop money drowning out all voices, then you have to know what's automated and what's real - and people need to be held accountable for what they say or do - that's how the real world works.

You don't need authoritarian laws regulating content - social peer pressure is quite effective - after all democracy is the tyranny of the majority.
by unscaled | 2025-04-10 16:23:39+00:00
For what it's worth, migrating from Java 8 to 11 is much smoother than .Net 4.x to .NET Core / Standard / 6+. In all honesty, in all the project we've migrated it was only ever so slightly more painful than migrating 11->17 or 17->21. You typically have to upgrade some libraries and your version of Gradle (assuming you're using it).

There is a much stronger case for enterprise apps being stuck on .NET 4.x.
by mmastrac | 2025-04-10 16:24:34+00:00
This is a great way to see why invalid UTF-8 strings and unicode chars cause undefined behaviour in Rust. `char` is a special integer type, known to have a valid range which is a sub-range of its storage type. Outside of dataless enums, this is the only datatype with this behaviour (EDIT: I neglected NonZero<...>/NonZeroXXX and some other zero-niche types).

If you manage to construct an invalid char from an invalid string or any other way, you can defeat the niche optimization code and accidentally create yourself an unsound transmute, which is game over for soundness.
by everforward | 2025-04-10 16:24:50+00:00
In the instance of cow vs dog or horse, it’s only cognitively dissonant if you try to reduce it to a context-free universal truth.

With context, it’s simply “we should not eat animals we keep as pets”, where “we” needs to be contextualized to the person and culture. I keep dogs as pets, and therefore should not eat them. Other people don’t keep dogs as pets and are free to eat them.

More generally, we shouldn’t kill things we love. Pets are loved, and shouldn’t be killed for food. Farmed animals are a means to an end, not an object of affection.

Other contexts apply too, for the pedantic. Starvation is a context that would make eating pets okay, so on and so forth.

A lot of morality is contextual. If a good friend is going through a break up, I should care and be supportive. If a stranger like Taylor Swift is going through a break up, I have no moral obligation to care or be supportive (though it would be kind to do so anyways). Morality is contextualized by my relationship to that person.
by maxbond | 2025-04-10 16:24:57+00:00
Other commenters have given what's probably the right answer, but in the spirit of exploration, I wonder about electrical impedance tomography. I'd think a salty cheese would be a pretty good medium to pass electricity through, and since the wheels are very uniform in shape, you could make a chuck that held electrodes in contact with the wheel. We don't really need precise information about the shape and location of the voids, we're not going to do surgery on the cheese, so the coarseness of EIT might not be an issue.
by latexr | 2025-04-10 16:25:02+00:00
> Past generations thought of these things and incorporated solutions into their lives that today would be called emergency preparedness.

Something which causes a whole continent to lose electricity for a year needs to be a catastrophe of epic proportions, it’s not a mere emergency.

> The silent and great generations did just dandy off-grid for years at a time very far from towns.

They didn’t live in an always connected world where everything runs on electricity and systems are explicitly designed to only work that way. There is a canyon of difference between living in a world where a technology doesn’t exist and one where most of society depends on one thing you suddenly lost access to.

> I think it's great they are at least asking questions and thinking about options.

I’m not saying they shouldn’t prepare. Being prepared is a good thing. I’m saying their scenario is unrealistic to the point there’s no proper helpful answer, like asking how to prepare for a meteor strike. If something like that happens your beans aren’t going to save you.