MurphyA/hacker-news huggingface dataset:
by ACCount37 | 2025-11-01 12:11:32+00:00
The "inherent reason" is that user freedom isn't allowed in SIM land, basically.

eSIMs are designed around "the user is the attacker". So you can't do things like transfer profiles from one eSIM to another offline, by design. What the "transfer" really does is kill the old profile and issue a new one for a new eSIM.

It still could be designed for less user friction. But the whole ordeal could be avoided if eSIM wasn't designed to be user hostile in the first place.
by mlrtime | 2025-11-01 12:11:45+00:00
Ok great, now do other continents? I'm not sure what the obsession I often read is comparing politics with other Continents, not countries.

There are some EU laws that are more conservative and some that are less, proponents of policies often cherry-pick the ones that match their ideology leaving out others. Even worse is they ignore the problems that the policies they agree with are causing those countries, but ends-justify-means.
by fodmap | 2025-11-01 12:12:31+00:00
Press release https://www.prnewswire.com/news-releases/international-lawye...

'The white paper reveals a classic bait-and-switch operation in which Spain lures foreign talent by offering official certificates guaranteeing favorable tax treatment, then retroactively denies the legitimacy of those same certificates to impose tax bills up to ten times higher than originally expected. The Spanish Tax Authority, which goes by the acronym AEAT and is commonly referred to as "Hacienda," entices American businesses to set up shop in the country through desirable tax credits and incentives, then unfairly taxes the workers of those companies in perpetuity, long after their tenure in Spain has concluded.'
by gus_massa | 2025-11-01 12:13:30+00:00
[Rehashing an old comment]

In the math department, we had a Moodle the students in the first year of my university in Argentina.

When we started like 15 years ago, the emails of the students and TA were evenly split in 30% Gmail, 30% Yahoo!, 30% Hotmail and 10% others (very aproxímate numbers).

Now the students have like 80% Gmail, 10% Live/Outlook/Hotmail and 10% others/Yahoo. Some of the TA are much older, so perhaps "only" 50% use Gmail.

The difference is huge. I blame the mandatory gmail account for the cell phone.

So, checking only @gmail.com is too strict, but a first fast check for @gmail.com and later the complete regex may improve the speed a lot in the real word.
by mikelevins | 2025-11-01 12:13:31+00:00
I think the decline in UI quality is real, but I don't think the web takes all of the blame. The blame that it does take is due to a sort of mixed bag of advantages and disadvantages: web technologies make it quicker and easier to get something interactive on the screen, which is helpful in many ways. On the other hand, because it lowers the effort needed to build a UI, it encourages the building of low-effort UIs.

Other forces are to blame as well, though. In the 80s and 90s there were UI research labs in indistry that did structured testing of user interactions, measuring how well untutored users could accomplish assigned tasks with one UI design versus another, and there were UI-design teams that used the quantitative results of such tests to deign UIs that were demonstrably easier to learn and use.

I don't know whether anyone is doing this anymore, for reasons I'll metion below.

Designing for use is one thing. Designing for sales is another. For sales you want a UI to be visually appealing and approachable. You probably also want it to make the brand memorable.

For actual use you want to hit a different set of marks: you want it to be easy to learn. You want it to be easy to gradually discover and adopt more advanced features, and easy to adapt it to your preferred and developing workflow.

None of these qualities is something that you can notice in the first couple of minutes of interacting with a UI. They require extended use and familiarization before you even know whether they exist, much less how well designed they are.

I think that there has been a general movement away from design for use and toward a design for sales. I think that's perfectly understandable, but tragic. Understandable because if something doesn't sell then it doesn't matter what its features are. Tragic because optimizing for sales doesn't necessarily make a product better for use.
by hollerith | 2025-11-01 12:13:53+00:00
>running untrusted code as another user gets you 80% of the security you need if you don't trust something, and running it in a mostly empty container gets you another 19%.

Like I said, the Android team does not think so. Nor does the ChromeOS team, which uses selinux to sandbox the browser, something no other non-Android Linux distro does (except possibly secureblue, which sadly almost no one uses).
by kibwen | 2025-11-01 12:15:08+00:00
Rust is absolutely built for concurrency, even moreso than for memory safety--it just so happens that memory safety is a prerequisite for thread safety. You're going to have a hard time finding any other industrial-strength language that statically prevents data races. If you can use Erlang, then sure, use Erlang. But if you can't use Erlang, and you need concurrency, you're not going to find a better candidate than Rust.
by ACCount37 | 2025-11-01 12:15:17+00:00
"Make it legal but very annoying" is an underrated policy option. And banning advertisement is the first resort in this line of regulation.

If there are no ads to tell you, you have to, first, be informed that sports gambling is a thing people do, then decide that it's a thing you want participate in, and then obtain information on how it's done. This adds friction. Friction reduces participation. But if you really want to gamble? You still can.
by Marshferm | 2025-11-01 12:16:28+00:00
I’m not sure how these work, but AI accelerates the refinement of realistic textures. As an example, we just switched to Metahuman for human rig building.

https://www.metahuman.com/en-US

The devs building the rigs use real people, and Metahuman uses AI to actually increase their imperfections.

We then shift into Blender where we construct hair and clothing. The hair uses internal AI that accelerates the process of individuating hair behavior we then export into unreal where the hair responds to physics.
by gcanyon | 2025-11-01 12:16:52+00:00
I think Nisus was the app that had a fun About... window easter egg: if you did it with the option key down, little stick figures would assemble (or disassemble?) the dialog letter by letter, running back and forth frantically to do so.

Nisus also might be the Mac app that had the unusual scrollbars and basically no minimum size on the edit window.

You could make the window maybe 10 characters by 5 lines, and the arrows in the scrollbar would change to a smaller size.

Then smaller still and the scrollbar itself would get narrower.

Then smaller still and the arrows would change again, to simple triangles.

Then smaller again and the arrows would overlap and change to point right and left instead of up and down.

You could make the window so small only a single letter would display, then even a fraction of that letter.

Good times.
by 0x000xca0xfe | 2025-11-01 12:18:51+00:00
What a horrible mindset. I'll never understand this "security" argument.

It is our responsibility to our users to provide them the most secure option possible as the default.

Removing features is not the most secure option possible. Go all the way then and remove everything. Only when your computer cannot do anything it will be 100% secure.
by liampulles | 2025-11-01 12:20:16+00:00
I'm a little surprised that it got to the point where pods which should consume a couple MB of RAM were consuming 4GB before action was taken. But I can also kind of understand it, because the way k8s operators (apps running in k8s that manipulate k8s resource) are meant to run is essentially a loop of listing resources, comparing to spec, and making moves to try and bring the state of the cluster closer to spec. This reconciliation loop is simple to understand (and I think this benefit has led to the creation of a wide array of excellent open source and proprietary operators that can be added to clusters). But its also a recipe for cascading explosions in resource usage.

These kind of resource explosions are something I see all the time in k8s clusters. The general advice is to always try and keep pressure off the k8s API, and the consequence is that one must be very minimal and tactical with the operators one installs, and then engage in many hours of work trying to fine tune each operator to run efficiently (e.g. Grafana, whose default helm settings do not use the recommended log indexing algorithm, and which needs to be tweaked to get an appropriate set of read vs. write pods for your situation).

Again, I recognize there is a tradeoff here - the simplicity and openness of the k8s API is what has led to a flourish of new operators, which really has allowed one to run "their own cloud". But there is definitely a cost. I don't know what the solution is, and I'm curious to hear from people who have other views of it, or use other solutions to k8s which offer a different set of tradeoffs.
by tialaramex | 2025-11-01 12:20:42+00:00
> I think the spin that Rust is necessarily the way forward is what is wrong.

I haven't seen this from Rust. Obviously lots of us think that Rust is the way forward for us but I think the problem you're talking about is that nobody offered any alternatives you liked better and that's not on Rust.

If Bob is ordering pizza for everybody who wants one, it is not the case that "Pizza is necessarily the way forward", and it's not Bob's fault that you can't have sliders, I think if you want sliders you're going to need to order them yourself and "Pizza is the way forward" is merely the default when you don't and people are hungry.

Dave Abraham's Hylo is an example of somebody offering to order sushi in this analogy. It's not yet clear whether Dave knows a Sushi place that delivers here, or how much Sushi would be but that's what having another way forward could look like.

In C++ they've got profiles, which is, generously, "Concepts of a plan" for a way forward and in C... I mean, it's not your focus, but nobody is looking at this right? Maybe Fil-C is your future? I note that Fil-C doesn't work on these obsolete targets either.
by zkmon | 2025-11-01 12:21:17+00:00
Users in India wouldn't care that much about privacy of their data as much as the Western folks do. This reduces the importance of this whole episode and I don't think this news flashed across TV screens or caused a debate anywhere.

India is a karma society. Karma doesn't mean upvotes. It means, you get what you destined for, or what you deserve. People take things in their stride and keep moving, while keeping their eyes wide open. When you are moving through a jungle, there is no point in blaming thorns or getting angry on wild animals.
by lalitmaganti | 2025-11-01 12:21:18+00:00
> I don't suppose there is some supported way to inject macros or "ui automation" [1] into the iframe?

This is exactly what https://github.com/google/perfetto/issues/1342 is about :) It's not the highest priority issue but it is something I want to implement sooner than later.

Oh and separately you're right we should add support for also passing macros over the postMessage API. Will file a bug for this.
by kibwen | 2025-11-01 12:21:26+00:00
> All the Tokio primitives involved were working precisely as they were supposed to. The only thing that would have prevented this without completely re-designing Rust's async from the ground up would be to ban the use of `&mut future`s in `select!`...but that eliminates a lot of correct code, too.

But it still suggests that `tokio::select` is too powerful. You don't need to get rid of `tokio::select`, you just need to consider creating a less powerful mechanism that doesn't risk exhibiting this problem. Then you could use that less powerful mechanism in the places where you don't need the full power of `tokio::select`, thereby reducing the possible places where this bug could arise. You don't need to get rid of the fully powerful mechanism, you just need to make it optional.
by koolba | 2025-11-01 12:21:42+00:00
No level of planning can match the raw joy of spontaneously enjoying something with like minded friends.

> Some people want the best possible experience and can’t be confident they aren’t missing out unless they have done the research.

The majority of such people perform what I call “checkbox vacationing”. It’s not about actually enjoying any particular thing, it’s just about checking the boxes of whatever some online list says is the current “best XYZ”.
by dns_snek | 2025-11-01 12:22:00+00:00
> Honestly seems like if you just stay on the latest-and-greatest you'll stay ahead of Cellebrite long enough.

I don't know, even the latest and greatest is eventually cracked, or they can just hold your device in evidence until the capability is there a few weeks (or months) later.

Furthermore by using an official OS from a vendor like Apple (or Google, Samsung) there's always the possibility that they could target your device with a specially crafted update, especially if you're in really big trouble.
by lalitmaganti | 2025-11-01 12:22:39+00:00
> How much overhead does the recording have?

Very much a symptom of what you are trying to record! See below

> I have tried ftrace before but it's making everything 100x slower...

If ftrace is making things 100x slower, I'm not sure that Perfetto is going to help you very much: fundamentally, for kernel stuff, it uses ftrace under the hood!
by kiwih | 2025-11-01 12:23:20+00:00
Hi HN,

I wanted to share a side project from my work at UNSW that has recently become all-consuming!

Essentially, we built a new kind of CTF where players competed to dominate an in-house social media platform, set in a fictional country, with the goal of swinging a simulated election.

This was done to both raise awareness that such kinds of AI-powered campaigns are possible, as well as build a rich environment and dataset for red-team blue-team R&D in future.

So that we could tune every part of our system, we built everything from the ground up - including our own social network (based on early twitter), our own news websites (built with Jekyll), and our own multi-agent framework for simulating NPCs (built with too much spaghetti Python).

The whole game is multiplayer, so every player and team was competing against every other player and team interactively to try and sway the NPCs in their direction.

We had 277 students from 18 Universities across Australia sign up to play, and ended up with 42 teams on the scoreboard. Our final prizegiving event was yesterday, and the team from QUT - all freshmen/first years - took the win (of AU$5,000)!

Overall we had such a blast running the event, and I'd love to hear your thoughts and comments.

Already we are helping Day of AI Australia produce their own open-source version of the game for high schools in Australia, and for future CTNs starting next year, possible collaborators from two overseas universities have reached out to discuss running a joint international event (really hoping we'd be able to do that).
by a4isms | 2025-11-01 12:23:49+00:00
There is no exception for ANY data structure that includes references to other data structures or primitives. Not only can you add or remove elements from an array, you can change them in place.

A const variable that refers to an array is a const variable. The array is still mutable. That's not an exception, its also how a plain-old JavaScript object works: You can add and remove properties at will. You can change its prototype to point to something else and completely change its inheritance chain. And it could be a const variable to an unfrozen POJO all along.

That is not an exception to how things work, its how every reference works.
by ninetyninenine | 2025-11-01 12:24:24+00:00
Nah no one can say this. Especially given the fact this very article has stated we don’t know or understand what’s going on but we see glimmers of introspection.

Anyone who says or pretends to know it is or isn’t a dead end doesn’t know what they are talking about and are acting on a belief akin to religion. No rationality involved.

It’s clearly not a stochastic parrot now that we know it introspects. That is now for sure. So the naysayers are wrong on that front. Utterly. Are they a dead end? That’s the last life line they’ll cling to for years as LLMs increase in capabilities everywhere. Whether it’s right or wrong they don’t actually know nor can they prove. I’m just curious why they even bother to state it or are so adamant about their beliefs.
by imtringued | 2025-11-01 12:24:31+00:00
Based on the description:

>This RFD describes futurelock: a type of deadlock where a resource owned by Future A is required for another Future B to proceed, while the Task responsible for both Futures is no longer polling A. Futurelock is a particularly subtle risk in writing asynchronous Rust.

I was honestly wondering how you could possibly cause this in any sane code base. How can an async task hold a lock and keep it open? It sounds illogical, because critical sections are meant to be short and never interrupted by anything. You're also never allowed to panic, which means you have to write no panic Rust code inside a critical section. Critical sections are very similar to unsafe blocks, but with the caveat that they cannot cause complete take over of your application.

So how exactly did they bring about the impossible? They put an await call inside the critical section. The part of the code base that is not allowed to be subject to arbitrary delays. Massive facepalm.

When you invoke await inside a critical section, you're essentially saying "I hereby accept that this critical section will last an indeterminate amount of time, I am fully aware of what the code I'm calling is doing and I am willing to accept the possibility that the release of the lock may never come, even if my own code is one hundred percent correct, since the await call may contain an explicit or implicit deadlock"
by solatic | 2025-11-01 12:24:55+00:00
> Why would the public sector feel bound to support it

The underlying axiom is the Pareto principle - that you get 80% of the benefit from the first 20% of the work, and getting the last 20% of the benefit takes up 80% of the work. The private sector will stop funding after the first 80% of benefit (it's not profitable to chase the last 20%) but the public sector is usually mandated to support everybody so it is indeed required to put in that extra effort.
by viraptor | 2025-11-01 12:25:38+00:00
Owasp deals with web security only. That whole area is biased towards php/ruby/js/python/beam where those issues don't exist outside of native modules.

https://www.cvedetails.com/vulnerabilities-by-types.php is a bit more clear. It's xss, SQL, then memory. The first two are not possible to enforce a fix on - you can always make a decision to do something bad with no visible annotation. Even then, rich types like in rust make safe interfaces easier to produce. But rust tackles the next class of issues - one that you can verify to be safe or require an explicit "unsafe" around it.
by daemontus | 2025-11-01 12:26:17+00:00
I may be completely out of line here, but isn't the story on ARM very very different? I vaguely recall the whole point of having stuff like weak atomics being that on x86, those don't do anything, but on ARM they are essential for cache coherency and memory ordering? But then again, I may just be conflating memory ordering and coherency.
by jsnell | 2025-11-01 12:26:31+00:00
> To me it looks like zero effort has been made to engage with Mozilla, Apple, etc., on the right way forward here - just Google high-handedly making moves and abusing their position as per usual.

What would make you think that? The submission links prominently to the whatwg proposal github issue, which is the forum where that engagement would happen. It explicitly deep-links to Mozilla's and Apple's posts in that thread. It has the usage stats that you just presume exist.

It's like you just made up a scenario and posted it as facts with zero effort to verify any of it.
by wqaatwt | 2025-11-01 12:26:50+00:00
> The EU is a parliamentary democracy

Except the are a couple degrees of separation between the democracy part and in the running the EU institutions.

The EU parliament is also a very superficial imitation of a real parliament in a democratic state. It has very limited say in forming the “government” or decision making.

> result of the EU being a club of sovereign democracies

So either revert to it just being a trade union or implement fully democratic federal institutions. The in between isn’t really working that well.
by paulwilsonn | 2025-11-01 12:27:16+00:00
That’s a really good observation- I’ve noticed the same. I think it’s because game dev and startup culture overlap less than we expect.

Game dev usually leans more art and creativity than problem-solving or scalable business models.

Different mindset, funding path, and timelines. Though lately, game dev tools and AI pipelines are starting to bridge that gap.
by ninetyninenine | 2025-11-01 12:29:05+00:00
Give it a couple of years and no one will be able to fully answer the question. I’m quite sure humanity as a whole will in the near future uncover several articles that are like this in quality and citations but find out they are entirely generated and from then on out we won’t know.

We only know now because generated things still have artifacts. That is slowly changing. If the article was written by an AI right now absolutely cannot be fully known.
by cpgxiii | 2025-11-01 12:29:36+00:00
There are some knobs that newer processors give for cache control, mostly to partition or reserve cache space to improve security or reduce cache contention between processes.

Actual manual cache management is way too much of an implementation detail for a general-purpose CPU to expose; doing so would deeply tie code to a specific set of processor behavior. Cache sizes and even hierarchies change often between processor generations, and some internal cache behavior has changed within a generation as a result of microcode and/or hardware steppings. Actual cache control would be like MIPS exposing delay slots but so much worse (at least older delay slots really only turn into performance issues, older cache control would easily turn into correctness issues).

Really the only way to make this work is for the final compilation/"specialization" step to occur on the specific device in question, like with a processor using binary translation (e.g. Transmeta, Nvidia Denver) or specialization (e.g. Mill) or a system that effectively enforces runtime compilation (e.g. runtime shader/program compilation in OpenGL and OpenCL).
by spwa4 | 2025-11-01 12:29:56+00:00
How is that going to work when

1) any time a model is improved, the improvements are not spectacular (anymore), and it takes less than 9 months for the performance to be reproduced by a <1% sized model. Those 9 months are down from 2 years btw.

2) the big target for ads is becoming phones, and specifically tiktok advertisements, to the point that lots of people don't even use computers anymore for online purchases?
by thrance | 2025-11-01 12:30:19+00:00
I fail to imagine how putting Wikipedia in the hands of an ideologically captured mega-billionaire will help the fight against bias. The owner of Grokipedia has shown times and times again that he has no regards for truth, and likes to advertise the many false things he believes in.

The technology behind it doesn't matter. Show me the incentives and I'll tell you the results: Wikipedia is decentralized, Grokipedia has a single owner.