MurphyA/hacker-news huggingface dataset:
by spwa4 | 2025-06-15 12:50:27+00:00
Isn't 12.5% lower than the global minimum tax treaty that Ireland signed, which is 15%?

https://en.wikipedia.org/wiki/Global_minimum_corporate_tax_r...

Plus one might complain that this is Ireland cheating in another way. Any revenue Ireland gains:

1) reduces another EU state's income by more than Ireland gains

(in other words, it's like Ireland stealing a car: a stolen car is worth fundamentally less than a non-stolen car, both to the thief and to the original owner if it is recovered. It is strictly a negative for the system as a whole. This is why prisons must work the way they do: to make sure the damage for the criminal is greater than the damage for the system as a whole. Otherwise nothing will stop crime increasing. As to how this applies to a country, I don't know, but obviously something must be done)

2) most of the money the companies "save" is immediately shipped to the US, and doesn't benefit Ireland's economy. This probably includes "real" Irish companies' profits.

3) invites retaliation by other governments, which Ireland stops by hiding behind the EU. While I hate Trump's trade balance bullshit, if it is meant to stop this, I can almost understand it (this "steals" taxes from the US, "destroying" 40% of the government income they steal). Trumps tarrifs were based on "trade deficit", and this reduces company taxes at the cost of a HUGE and artificial increase of the trade deficit of the US.

This also points to another BIG disadvantage of these actions by the Irish government: a LOT of foreign governments are trying harder and harder to stop this, and the foreign firms will disappear as quickly as they appeared. So, very suddenly and probably soon, ~40% of Ireland's corporate tax receipts and ~15% of Ireland's income tax receipts will disappear. At least. The way down will be both a lot more sudden and a lot faster than the way up.

Don't buy a house there.

So this practice of the Irish government did not just directly damage other EU countries (jobs, taxes, companies, ...) it, in a very real sense, even took money out of primary schools in South Dakota.
by aleph_minus_one | 2025-06-15 12:50:49+00:00
> If a guy is in, say, the auto business, and needs a lawyer, the guy might want the best lawyer but will not fear that the lawyer will enter the auto business as a powerful competitor. Similarly for a good medical doctor.

> For an optimization guy saving, say, 5% of the operating costs of a big business, say, $billion in revenue a year, all the management suite will be afraid of the guy getting too much power and work to get him out -- *Goal Subordination 101 or just fighting to retain position in the tribe.

The optimization guy will also not have the infrastructure to compete with the big business. Additionally, the optimization guy will likely not fight for the management position (not every great applied mathematician is a great manager (in my opinion in particular because leadership of employees and office politics are very different skills)).

So, there is no competition: simply pay the optimization guy a great salary and somewhat isolate him from the gory office politics - problem solved, everybody will live in peace.

But this is not what happens in your example; so the only reason that I can imagine is the usual, irrational bullying of nerds that many nerds know from the schoolyard.
by cedws | 2025-06-15 12:51:48+00:00
At this point it looks to me like something is seriously broken internally at AMD resulting in their software stack being lacklustre. They’ve had a lot of time to talk to customers about their problems and spin up new teams, but as far as I’ve heard there’s been very little progress, despite the enormous incentives. I think Lisa Su is a great CEO but perhaps not shaking things up enough in the software department. She is from a hardware background after all.
by physicles | 2025-06-15 12:52:39+00:00
I recently took a couple 100 line stored procedures that I wrote years ago, and replaced them with equivalent go code and a few inline SQL calls. We had extensive tests on those stored procedures too, or rather, tests on the go methods that called them. The tests all ran in a few seconds. The go code feels so much nicer to deal with, and I thought about why:

- Stored procedures are deployed separately from the code that calls them: one is a db migration, one is a k8s container deploy. And that binding isn’t strongly-typed, so there’s more thinking and double checking involved during deployment (and, heaven forbid, rollback).

- The SQL procedures duplicated some business logic and constants that are defined in some of our go core libraries. It felt good to remove that duplication.

- The procedures also had a few specific return codes. We needed to define some constants (like postgres itself does) that the go code could detect and translate into go errors. That’s more complexity.

- Maybe there’s a good SQL IDE out there, but I don’t have it, so I was writing these things in vscode with syntax highlighting. Plenty of errors that would get an immediate underline in go instead required 20 seconds to compile and run the test and interpret the error message.

- This lack of tooling, and the fact that I’m not great at SQL (I’m fairly good with queries, but not with stuff like variables and IF EXISTS that you only see in stored procedures), made it hard to use all the complexity-cutting techniques I’m used to applying in go and other languages. So the 100 line stored procedure stayed 100 lines, and everyone hated working on it.

Stored procedures are basically a cross-service API call, with all the complexities that entails. I won’t reach for them again unless there’s a technical problem that can’t be solved any other way. We don’t have a dedicated DBA so Conway’s Law doesn’t factor in.
by at_a_remove | 2025-06-15 12:53:28+00:00
Odd. As an undergrad in physics, we had a project for our team which involved percolation theory and "testing" it. So, we had to make differing grids of conductive ink, with a certain number of "links" (resistors, edges in the graph) as missing. Getting even-flowing conductive ink was hard. I wrote all of the software for the XY plotter, pushing out instructions to make rectangular and triangular grids. Then we would measure the resistance from one side to another.
by kaashif | 2025-06-15 12:55:40+00:00
In REPO it can be 10 minutes until you see an enemy, then if you kill it, the respawn timer is like 10 minutes. Towards the end of levels things get much more frantic, but if you're fast you genuinely can do multiple levels without even seeing enemies.

Anyway I agree horror can't be replicated, it's not like I'm scared after I know all of the enemies, what they do, and what affects respawn times.
by conartist6 | 2025-06-15 12:57:53+00:00
I don't think you get to decide as much as you think you do, and I don't think the examples you provide are accurate enough analogies to offer the moral clarity you think they do.

Fortunately this isn't a moral issue though, just like thinking a piece of art is garbage is not a moral issue. I have the freedom to judge you, and in this case I'm judging because I think the primary legacy of slop machines is are sucking life out of people who put in blood and sweat -- who put their soul and themselves into their art because it is how they define themselves.

So many artists meet that basic bar of struggling with self expression that I see little point in engaging with anyone who can't or won't start with the premise that they have something unique to say
by Zigurd | 2025-06-15 13:00:23+00:00
It seems like Google will tolerate small money pits, but not ones that are scaling up. I'd bet Waymo is at or approaching breakeven. If they stop expanding coverage, then I'd worry about the lines diverging.

Google also still has the scars from buying Motorola and acquiring a huge number of employees. They aren't going to bloat their headcount expanding Waymo.
by im3w1l | 2025-06-15 13:01:19+00:00
It's interesting to consider the possibilities that you have if the recursion axiom is removed. Call those numbers the super-natural numbers. Let's state the recursion axiom A, and remove it.

A: If K is a set such that: 0 is in K, and for every supernatural number n, n being in K implies that S(n) is in K, then K contains every super-natural number.

Without A, there may be a set S that contains 0 every successor of 0 (that is it contains all the natural numbers), but still does not contain every super-natural number. There are three possibilities: There may some copies of N (e.g. a 0' successors 1', 2' etc). There may be some copies of Z (there is an axiom that no number has 0 as a successor, but 0' could be preceeded by -1'). And there may be some copies of Z_k (e.g. 0' followed by 1' followed by 2' followed by 0' again). We could call every copy of N, Z or Z_k a "branch" of the supernaturals.

I say may, because the axioms leave it open, it could exist or could not exist.

Now what happens if you define addition with the supernatural numbers? Let a and b be supernatural numbers. We will use the regular definition

a+0 = a

a+S(b) = S(a+b)

What happpens when we do this?

First let n be a natural number. Due to the recursive property of natural numbers a+n=S^n(a). So we can add a supernatural number on the left side to a natural number on the right side just fine. But what if we have a proper supernatural number on the right side? The definition is completely silent on the matter. But could we find a valid extension?

Thinking about it a little bit I found that defining a+b=b (for any b that is not a natural number) will be a consistent (but perhaps not very interesting or useful) extension.

Notice that this definition will pick the branch of the result based on b, except in the case where b is natural. This is the not a coincidence, for if b is from a Z_k branch then the result must also be from a Z_k branch, as can be found by applying the successor k-times (it could I suppose in theory be from a different Z_k branch though).

E.g.

If b is from a Z_3 branch then b=S(S(S(b))) meaning a+b=a+S(S(S(b)))=S(a+S(S(b)))=S(S(a+S(b)))=S(S(S(a+b))) so a+b is also from a Z_3 branch.
by lcnPylGDnU4H9OF | 2025-06-15 13:01:43+00:00
The confusion around getting the address wrong is an interesting tell. If you think you’re not likely to make that mistake, anyway. It’s also a bit late to realize at that point since you’re already in the bad area.

But it reminds me of tech support scams which usually have an element of convincing the victim that they made a mistake.
by dapperdrake | 2025-06-15 13:03:23+00:00
Depends on your use-cases.

Perl went through a few backwards-incompatible changes and Raku (née Perl 6) and has eroded its library base and user base.

Kind if like the transition from Python 2 to Python 3 stranded part of the ecosystem.

The backwards compatible systems like Linux user space ABI, Java (ruffled feathers with Java 9), TeX/LaTeX and Win32 will stick around the longest due to accreting libraries. Golang is on its way there. Python 3 may have enough important libraries now to also stick with them. If Zig does their job right, then they also have chances.

For Java look at NTS from Java 1.2 days in 2001, where apparently even the old jar files still load on new JVMs: https://news.ycombinator.com/item?id=40753417
by junon | 2025-06-15 13:03:26+00:00
> In most situations panicking and deferencing a null pointer leads to the exact same scenario: The binary crashes.

This is a false and dangerous misconception people seem to get wrong a lot of the time. There's no guarantee that's the case, especially when working in C where pointers are often subscripted.

It's the common behavior that a trap occurs but nothing dictates that's actually what will happen.
by SonOfLilit | 2025-06-15 13:04:31+00:00
There are now 71 comments arguing semantics of the word "know" and zero comments even acknowledging the substance:

Our current approach to safety is to give the model inputs that are similar to what it would be given in certain situations we care about and see whether it behaves the way we prefer, e.g. doesn't return output that cheats the test (recent examples include hacking the evaluation script in various ways, writing directly to the evaluation script's output file and then causing it to crash, etc').

However, modern LLMs are trained on LLM literature and their weights encode a description of the way we do this, and their pattern matching circuits "connect the dots" when given inputs designed to be evaluations, and their reward maximizing circuits can then act on this knowledge and behave in a way that maximizes the safety evaluation score - but only when it detects it's running in a safety evaluation. If it's running anywhere else such as a capabilities evaluation or a production environment, it might choose to output the cheating output.

This is bad. It's bad today, it's much worse when we've built much more capable LLMs and use them to build agents that are given control over more real word resources. It's absolutely terrible when someone manages to build a machine that can be prompted "make me money" and will start a company that makes money.
by klabb3 | 2025-06-15 13:04:41+00:00
> I will likely have my own personal self-driving vehicle.

The self-driving car ”utopia” (or rather moderate improvement) very much hinges on the space savings on roadways and parking, to increase utilization, reduce congestion and allow dead space to be reclaimed. If people think like you (no value judgment, I suspect this might be the future norm), then you’ll see almost no change to the urban landscape as a whole. It’ll continue to be a one-flesh-body-per-2-tonne vehicle utilization, a ~5:1 provisioning of parking spaces, 25-50% of urban areas being roadways+parking, and a double-digit productivity loss from commuting and running simple errands.

That leaves you with an individual comfort improvement (allowing you to be on your phone while in the car) for a premium price, and increased surveillance tech on personal vehicles. (And, to be fair, it can still be huge for drunk driving deaths, access for elderly & disabled, once costs come down). Overall, very mediocre imo.

Controversial take: the US has painted itself into a corner, where by ignoring the well being of people in their own communities, they need so many workarounds to prevent space sharing between the ~2-3 social groups where intermingling means friction and fear. There are very real logistical challenges to a gated community segmentation of the physical world. This paints the resistance to public transit in a different light: it’s not so much about being public, but rather being shared with strangers, especially of different social cohorts. It also explains the sacred status of air travel which mainly has been left outside the debate: imo because of the higher socio-economic average clientele. Now that cost has come down and low-cost airlines like Spirit share the same airports, the friction has come there as well.
Show HN: First Simulink Copilot
by kaamuli | 2025-06-15 13:06:05+00:00
I built the first Matlab Simulink copilot (for non-engineers matlab/simulink is like the boogeyman)

I’m a 2nd-year aero-engineering student at Imperial College London, I enjoy problem solving (did BPhO and got gold and UKMT) I'm a full-stack dev (or atleast trying to be lol) who hacked together Bloxi, an AI copilot that sits on top of Simulink and turns plain-English prompts into working control-system models and can easily debug them in real time. I felt the pain myself this term, watching top-tier students burn hours wiring blocks instead of engineering. With today’s multimodal LLMs finally able to “see” diagrams, this is the first moment an assistant like Bloxi can exist and the fastest way to give millions of engineers the same productivity leap coders just got with this whole AI/ML Craze. Quite like gpt it’s good and quick at building boilerplate which does take up majority of the time, leaving more time to actually focus on building.

I built this mainly to get comfortable with LLMs and “prompt-engineering,” and I think I’ve hit the point where I’m done tinkering; especially now that MathWorks have announced they’re working on their own version. So I figured I’d share what I’ve got and not just leave it in my private repository innit.

How it works (Two scripts + simple backend):

1. One builds the Simulink model. 2. The other handles the chat + simple UI. 3. Backend that glues together the OpenAI API and frontend

Drop in your own OpenAI API key and you’re off. I used it to debug and build a few uni-project models, and it’s been surprisingly handy.

At first it just spat out a finished Simulink file, but I wanted that ChatGPT “walk-through” vibe make it feel 'magical'. So I added a couple of for loops: one to drop in blocks step-by-step, and another to wire them up.

Since raw code isn’t visible in Simulink (to the best of my knowledge), within one of my scripts I had it walk through the simulink file and screenshot each stage, pipe them through the LLM, and let it spot inconsistencies. Works better than I expected. Perhaps someone can do better or find a better way?

Youtube video of me using it: https://lnkd.in/ePgkBRk6

Here’s the GitHub link if you want to play with it, poke around or build on it: https://lnkd.in/dzwhZcfp

To use download & open scripts then just do openChatbox().

Lmk what you think it's quite barebones but decided to speed through it as a 'proof of concept' so to speak.
by glitchc | 2025-06-15 13:06:06+00:00
Kudos for breaking the environment in a security course.

> This entire attack was possible because I have the VM's disk image right here on my computer and I can do absolutely whatever I want to it, such as overriding its access control settings.

This is the key insight. Protecting via VMs and obfuscations does not provide security equivalent to network boundaries and hardware protections. While the encryption step may have helped, it was self-defeating as the key was stored on the VM and the VM was in your control. It would have been much harder (perhaps impossible) to crack if the unique key was ephemerally sourced from a server prior to every decryption coupled with some end state from the exercise.

> Within the aims of the module this is fine - this is an introuction to security module so if you can exploit it like this, you're not really the target audience and you've already achieved the aims of the module.

Yes, it's clear to me that the course has little left to teach you. At this point I would just submit the generated tokens for every assignment and read more complex material. I say this as an academic and a cybersecurity expert.
by ChrisMarshallNY | 2025-06-15 13:06:15+00:00
Hey, listen, we operate on the information we're given at the time we're given it. They are completely different stories, because they reflect completely different sources of information.

It doesn't seem that matters to you, anyway. I'm not into fighting, so I guess our correspondence is at an end.

I'm not at all averse to admitting when I could be wrong. Not very "American" of me, I know. We're supposed to ride Wrong like a battle tank.

Considering how common the gypsy cab gamut is, I'm surprised no one here considered it. I guess I'm not the only one who is maybe not as worldly as I might think I am, eh?
by hiAndrewQuinn | 2025-06-15 13:10:39+00:00
(I'm assuming you mean the latest Perl actually called Perl, and not its successors.)

In a vacuum I wouldn't recommend Perl over first learning the most common languages and technologies of today. I'd gain some familiarity with Python first at a minimum. But it does have some interesting niche advantages you might want to look into more down the road.

Perl 5 has been on the same major version for 30 years now [1], and hence has had a truly enormous amount of training data for LLMs to glomp onto. Since Perl is also primarily thought of as a "scripting-plus" language, something to reach for when Bash isn't cutting the mustard but a 'real program' feels too heavyweight, a lot of its use cases are very much in the LLM one-shot sweet spot. [1]

Perl 5 also has the unique advantage of being installed system-wide by default on more Unix machines than you might expect. It's sitting there quietly on Debian for you right now [2]. It's even the scripting-plus language of choice for OpenBSD!

You would think being "the same" for 30 years would also mean Perl almost accidentally performs really well on modern machines, which have a few orders of magnitude more resources to throw around. I haven't really found this to be that noticeable, though, and if I actually cared about performance in those domains I'd probably stick to the smallest tools I could work with first. Then again, a vanilla Perl 5 program might be even more cross-platform than a vanilla shell script is; shells come and go, but Perl 5 is forever, apparently.

[1]: https://hiandrewquinn.github.io/til-site/posts/llms-make-per...

[2]: https://hiandrewquinn.github.io/til-site/posts/what-programm...
by alganet | 2025-06-15 13:11:21+00:00
> we weren’t held back by hardware

Llama 3 8B took 1.3M hours to train in a H100-80GB.

Of course, it didn't took 1.3M hours (~150 years). So, many machines with 80GB were used.

Let's do some napkin math. 150 machines with a total of 12TB VRAM for a year.

So, what would be needed to train a 300K parameter model that runs on 128MB RAM? Definitely more, much more than 128MB RAM.

Llama 3 runs on 16GB VRAM. Let's imagine that's our Pentium II of today. You need at least 750 times what is needed to run it in order to train it. So, you would have needed ~100GB RAM back then, running for a full year, to get that 300K model.

How many computers with 100GB+ RAM do you think existed in 1997?

Also, I only did RAM. You also need raw processing power and massive amounts of training data.
by salawat | 2025-06-15 13:11:45+00:00
Try asking if Case IH does the same behavior as John Deere with using excessive software locks on their hardware to prevent farmer repair of their machines.

Sometimes it just takes a little leading, but you can get these things to say whatever you want without any actual regard as to veracity.

The answer may be semantically and grammatically correct, but it is nevertheless, largely bullshit.
by IshKebab | 2025-06-15 13:12:25+00:00
Looks sensible, though I imagine it is going to be a nightmare trying to prevent click jacking, e.g. people putting elements over the top with `pointer-events: none`. There are probably a load of those attacks that are possible. Probably not too bad though because the final dialog is presumably shown above all other elements unconditionally.

Also those dialog designs are pretty awful from a usability point of view. In terms of design they all look identical, but the buttons change meaning pretty drastically, so you have to actually read the text. It would be better if it had some kind of slider or something that showed you the three possible states and let you switch between them consistently.
by chongli | 2025-06-15 13:13:06+00:00
The main issue with the shortage is the lack of funding for residencies

No, that’s the proximate issue. The main issue is the requirement of residencies for all doctors in the first place. In particular, I’m referring to doctors from other countries who may have years or even decades of experience practicing medicine being required to compete for residency spots. These doctors infamously end up driving for Uber instead of practicing medicine.