MurphyA/hacker-news huggingface dataset:
by liamwire | 2025-06-01 12:02:47+00:00
I’ve found this problem to be compounded by the use of stimulant medications — no matter how aware of the phenomenon one is going into a task, it can feel nigh impossible sometimes to avoid locking into whatever path I’m on as the drugs kick in. This seems true not only of the task itself but also of the individual decisions that can constitute it. I don’t think this is surprising or novel, to be sure, but frustratingly predictable.
by bobajeff | 2025-06-01 12:02:59+00:00
It would be great if any place in the world could solve the problem of land speculation and unaffordable housing. So far every country/province around the world even countries without real private land ownership (China) are dealing with the same problems in more of less the same ways.

Maybe Land Value Taxes can solve the problem but I'm beginning to think that these problems are part of our characteristics as a species in ways that might be nearly impossible to successfully solve.
by pas | 2025-06-01 12:03:38+00:00
It's convenient for integrating with backends. You can use async/await on the server, no need for hooks (callbacks) for data loading.

It allows for dynamism (user only sees the menus that they have permissions for), you can already show those parts that are already loaded while other parts are still loading.

(And while I prefer the elegance and clean separation of concerns that come with a good REST API, it's definitely more work to maintain both the frontend and the backend for it. Especially in caes where the backend-for-frontend integrates with more backends.)

So it's the new PHP (with ob_flush), good for dashboards and big complex high-traffic webshop-like sites, where you want to spare no effort to be able to present the best options to the dear customer as soon as possible. (And also it should be crawlable, and it should work on even the lowest powered devices.)
by lillecarl | 2025-06-01 12:03:48+00:00
Honestly just start "vibe coding".

After some discussion and iteration with Copilot I had a derivation that pulls the CSI protobuf spec and dumps python code and types into something LARPing as a real python library.

A few hours later I implemented my own CSI driver using these things.

Github crawls nixpkgs and everyone and their aunt have public nixos configs, the LLM is good at Nix.

That all nix build instructions are bash isn't the worst, and I hate bash. You can always create a python script to call in a derivation if you need.
by bodeadly | 2025-06-01 12:04:15+00:00
I use the bemis bidet adapter. It's $50 US on amzn and requires no power (splices into the feed). Only wish the knob would spring back to the off position. Was going to give it to my parent with dementia but because it does not auto-off, I ended up using it myself. Great item. There are many other similar ones but I can only speak to the bemis one.
by MrJohz | 2025-06-01 12:05:27+00:00
I find the Krausest benchmarks[0] to be useful for these sorts of comparisons. There are always flaws in benchmarks, and this one particularly is limited to the performance for DOM manipulation of a relatively simple web application (the minimal VanillaJS implementation is about 50 lines of code). That said, Krausest and the others who work on it do a good job of ensuring the different apps are well-optimised but still idiomatic, and it works well as a test of what the smallest meaningful app might look like for a given framework.

I typically compare Vanilla, Angular, SolidJS, Svelte, Vue Vapor, Vue, and React Hooks, to get a good spread of the major JS frameworks right now. Performance-wise, there are definitely differences, but tbh they're all much of a muchness. React famously does poorly on "swap rows", but also there's plenty of debate about how useful "swap rows" actually is as a benchmark.

But if you scroll further down, you get to the memory allocation and size/FCP sections, and those demonstrate what a behemoth React is in practice. 5-10× larger than SolidJS or Svelte (compressed), and approximately 5× longer FCP scores, alongside a significantly larger runtime memory than any other option.

React is consistently more similar to a full Angular application in most of the benchmarks there than to one of the more lightweight (but equally capable) frameworks in that list. And I'm not even doing a comparison with microframeworks like Mithril or just writing the whole thing in plain JS. And given the point of this article is about shaving off moments from your FCP by delaying rendering, surely it makes sense to look at one of the most significant causes to FCP, namely bundle size?

[0]: https://krausest.github.io/js-framework-benchmark/2025/table...
by incomingpain | 2025-06-01 12:07:34+00:00
>he phenomenon of misandry remains a relatively underexplored and insufficiently acknowledged facet of the researched digital landscape.

This is intentional. It's more than 'enabling' or 'normalization' it's attempting to switch the narrative or move the window.

The prevailing belief is that only possible for men to discriminate against women. Systemic sexism etc. 75% of psychologists are women or public administration is 80% women. You'll never in a million years hear about any program to get more men into women dominated industries.

The rules, especially on reddit, are thus enforced as unequally. Misandry is more than enabled, it's boosted.
by adverbly | 2025-06-01 12:08:55+00:00
> Tragically this would cause most land in the US to have zero or negative market value, leading to massive distortions and trillions of dollars of wealth destruction

Would it though? Nothing is actually destroyed. The land is still there so it's basically just a redistribution. Why not issue some bonds to existing land owners or something as compensation? That's what Britain did when they made slavery illegal? It might delay the benefits to the state by a few decades, but well worth it to fix incentives I would think...
by danpalmer | 2025-06-01 12:10:54+00:00
> individuals who lived in the UK

I received a blood transfusion in the UK during this time.

I saw this announcement a while back and checked, and I am still covered by this and unlikely to ever be able to donate blood. Most people don't receive transfusions, and it's much higher risk, so pretty much no reason to get rid of that limitation.
by ChrisMarshallNY | 2025-06-01 12:11:44+00:00
I use slides, but heavy on the notes.

The notes in each slide, go into detail. I also like to use transitions and animations (not too obnoxious, though). Many of the slides in the shows referenced below, need to be played, as they may have a number of "steps."

Makes it worthwhile to ask for my slides, and helps me to stay on track. I generally don't read the notes verbatim, but stay on the topics they describe.

Examples: [0], [1], [2], [3], [4]

[0] https://github.com/ChrisMarshallNY/ITCB-master/tree/master/P... (A couple of Keynote presentations that are part of a teaching module on Core Bluetooth)

[1] https://docs.google.com/presentation/d/1qQDAuhGvBvBlZVH2zn_V... (Google Slides -Discusses effective communication)

[2] https://docs.google.com/presentation/d/11ZvUjZogJ86-AIsAv1Q3... (Google Slides -A basic -and dated- intro to the Swift Programming Language)

[3] https://littlegreenviper.com/cruft/CommunicationBasics.pptx (Downloads a PowerPoint for [1])

[4] https://littlegreenviper.com/a-quick-introduction-to-the-swi... (Blog entry for [2])
by guidopallemans | 2025-06-01 12:12:19+00:00
One thing I like to do is interleave these two kinds of slides one by one. Put your visual on one slide, and longer-text bullet points on the next.

Then while presenting the visual you have the bullets of the next slide in your presenter's view, and you can just skip that slide during the presentation. Then, when people ask for the slides they will indeed get all they want.
by mike-cardwell | 2025-06-01 12:12:57+00:00
Hmm. I assumed this worked like torsocks in that it would direct traffic through the locally running tor daemon. However, I've noticed that if I stop the locally running tor daemon, oniux still works whilst torify and torsocks do not. [edit] The documentation does actually say this. Pretty neat.

It works inside docker as well, but I needed to use --privileged. Just copied the binary into a debian:12 container and it works there:

docker run -it --rm --privileged -v "$PWD/oniux:/usr/bin/oniux" debian:12
by vidarh | 2025-06-01 12:13:16+00:00
It doesn't stop them from making stupid mistakes. It does reduce the amount of time I have to deal with the stupid mistakes that they know how to fix if the problem is pointed out to them, so that I can focus on more focused diffs of cleaner code.

E.g. a real example: The tooling I mentioned at one point early on made the correct functional change, but it's written in Ruby and Ruby allows defining methods multiple times in the same class - the later version just overrides the former. This would of course be a compilation error in most other languages. It's a weakness of using Ruby with a careless (or mindless) developer...

But Rubocop - a linter - will catch it. So forcing all changes through Rubocop and just returning the errors to LLM made it recognise the mistake and delete the old method.

It lowers the cognitive load of the review. Instead of having to wade through and resolve a lot of cruft and make sense of unusually structured code, you can focus on the actual specific changes and subject those to more scrutiny.

And then my plan is to experiment with more semantic checks of the same style as what Rubocop uses, but less prescriptive, of the type "maybe you should pay extra attention here, and explain why this is correct/safe" etc. An example might be to trigger this for any change that involves reading a key or password field or card number whether or not there is a problem with it, and both trigger the LLM to "look twice" and indicate it as an area to pay extra attention to in a human review.

It doesn't need to be perfect, it just need to provide enough of a harness to make it easier for humans in the loop to spot the remaining issues.
by chuckadams | 2025-06-01 12:13:56+00:00
While the Nix package manager still has a vertical learning curve, I found NixOS itself to be pretty idiotproof to install, with pretty much the same clicky installer experience as Ubuntu. I do remember a couple of things like `nix search` were broken out of the box -- in fact I don't think I ever got it working, I still just use the website to search for packages.
by nixpulvis | 2025-06-01 12:14:37+00:00
It did help that Steve was alive during the personal computing revolution. He was a big part in shaping it but it was also just a good time to be in his position.

There's not been the same kind of thing for a while. His death came as personal computers had managed their way fully into our pockets.

Now there are new technologies, but nothing I think we all agree is as ubiquitous as the PC. Even AI is hard to sell because unlike the word processor or the portable music device, AI isn't always functional, and so it doesn't feel as much like a complete solution.

Technology is suffering more and more from itself lately, and I really hope a leader will emerge and help us take an honest look at ourselves and what we accept in terms of usability. No more cookie warnings pretending they solve privacy issues, but complete overhauling of contracts and agreements between technology companies and users, just as an example.
by atombender | 2025-06-01 12:15:42+00:00
In practice, I have found the benefit of explicit typing to outweigh the downsides of needing to declare the types.

As a concrete example, it means you can target types with precision in the API layer:

switch e := err.(type) { case UserNotFound: writeJSONResponse(w, 404, "User not found") case interface { Timeout() bool }: if e.Timeout() { writeJSONResponse(w, 503, "Timeout") } }

I skimmed the article and didn't see the author proposing a way to do that with their arbitrary key/value map.

Of course, you could use something else like error codes to translate groups of errors. But then why not just use types?

But as I suggested in my other comment, you could also generalize it. For example:

return meta.Wrap(err, "storing user", "userID", userID)

Here, Wrap() is something like:

func Wrap(err error, msg string, kvs ...any) { return &KV{ KV: kvs, cause: err, msg: msg, } }

This is the inverse of the context solution. The point is to provide data at the point of error, not at every call site.

You can always merge these later into a single map and pay the allocation cost there:

var fields map[string]any for err != nil { if e, ok := err.(*KV); ok { for i := 0; i < len(KV.KV); i += 2 { fields[e.KV[i].(string)] = e.KV[i+1] } } err = errors.Unwrap(err) }
by punty | 2025-06-01 12:15:54+00:00
I don't want to ruin the game for the community so will hold off on saying too much. I will say this- this game is very well designed so it's pretty straightforward to understand how it works without using anything more than the network tab of chrome :). No js, frontend puppeteering, etc. are needed. I might write it up when the game is close to completion!
by ungreased0675 | 2025-06-01 12:16:19+00:00
I was rolling my eyes when the paper started with the Webster’s dictionary definitions, but there were some new ideas in there. For example, men are more likely to be victims of online harassment. I’d have bet my house it was the opposite.

Next I’d like to see a study on why there’s so little research on misandry. That would be a brave paper to publish.
by adverbly | 2025-06-01 12:16:26+00:00
> There's not much wrong with moving for retirement. We don't like to do it, and residential property owners should to some extent (for a number of years) be exempt from land value tax, but the alternative (hoarding valuable land) is much worse.

Totally agree. People need to live where jobs are! That's the main determinant of where you live!

When you're retired, you don't need to commute any more so forcing others to have to live further away and commute past you is a large burden being placed on productivity. We want to tax unproductive behavior so this is an entirely reasonable thing to me. All things being equal, retired people should be incentivized to move when they retire!
by bobxmax | 2025-06-01 12:16:31+00:00
No, it's not. Arrogant developers on HN like to parrot this, but it isn't true.

The power of LLMs are the emergent properties that have emerged which weren't specifically taught to the model. That is not a property that exists in statistical, largely more deterministic models.

If you think it's just a giant token prediction machine you've just ignored the last 5 years.
by artman | 2025-06-01 12:16:54+00:00
For inspiration, you might want to look at what we open sourced at Uber, https://github.com/uber-archive/jetstream-ios and https://github.com/uber-archive/jetstream/wiki/Protocol. While pretty immature and quite outdated nowadays, it did power one prototype in production and has a lot of the same concepts that we later used in Linear's sync engine.
by vidarh | 2025-06-01 12:17:26+00:00
For some types of comment, it really would be tempting to automate the answers, because especially the "stochastic parrot" type comments are getting really tedious and inane, and ironically comes across as people parroting the same thing over and over instead of thinking.

But the other answer is that often the value in responding is to sharpen the mind and be forced to think through and formulate a response even if you've responded to some variation of the comment you reply to many times over.

A lot of comments that don't give me any value to read are comments I still get value out of through the process of replying to for that reason.
by phyalow | 2025-06-01 12:19:52+00:00
Honestly, many New Zealand’ers (especially the inner city Wellington/Auckland public service class) have a major problem with native cultural relations (bordering on obsequiousness) that is increasingly out of step with developed global practices.

It gives rise to the utter nonsense exemplified in this Article, which is pure virtue signalling.

I am a New Zealander, I have been lucky enough to spend a huge amount of time working overseas (in many different countries, settings and regions) as well as having attended foreign and (domestic NZ) universities. I have seen it all. Screeching about “booing and hissing” says more about you than the person you are replying to. Put up a coherent response rather than saying because someone isn't in a tiny community they cant have an opinion. That is just braindead behaviour.
by like_any_other | 2025-06-01 12:20:06+00:00
Age checks are only for minors. Parents have full control over their children's devices. If they wanted to, this could all be done without any new legislation - the EU makes some easy-to-use filtering software (whitelist, blacklist, time limits, etc.), parents can (if they want to) install it on their children's devices (it could even come preinstalled, with sensible defaults, since we can all agree on what is "harmful content"), and voila - the child is "protected".

That they instead chose to expand surveillance [1] tells me they have ulterior motives.

[1] They claim it'll be privacy-protecting. I'll believe it when I see it.
by dist-epoch | 2025-06-01 12:20:16+00:00
Do the individual requests in a batch influence each-other?

Not in a floating point non-deterministic kind of way, where exact ordering might introduce some non-determinism (begin position 5th versus being position 10th in the batch lets say).

I'm asking in a semantic way, can context from one request leak into another because they are in the same batch?
by kouteiheika | 2025-06-01 12:21:38+00:00
> Why would batching lead to variance?

Depending on the shape of the data a slightly different kernel implementation (for e.g. matrix multiplication, etc.) will be the most optimal, and those will give slightly different results. There could also be other sources of non-determinism depending on the implementation (e.g. some kernels are inherently not entirely deterministic as they use tricks to go faster).
by Hilift | 2025-06-01 12:22:48+00:00
Microsoft created a doozy of a bug when OpenSSL changed gmt_unix_time to a random value. They were using that for startup sync of hosts.

Strategically, I don't think WSL is a real product that would be customer facing due to "WSL has been designed and built to use with inner loop development workflows. There are design features in WSL that make it great for this purpose but may make it challenging for production-related scenarios compared to other products."

https://learn.microsoft.com/en-us/windows/wsl/faq
by okwhateverdude | 2025-06-01 12:23:03+00:00
As an immigrant from the US to NL, and having lived here over a decade and a half, the author's observation is pretty spot on. There are broad differences between the Dutch and Germans (stereotypically, they both like rules, but only the Germans are really strict about them, for example), but overall, they are similar in their mindset toward work. Of others I have met from all over the EU, they too seem to have similar cultural values.

One of the things I have seen, first hand, is when American's buy EU companies and start running them. Or when they open offices over here. The culture shock and friction is immediate. Meta, for example, basically did no labor law research before announcing a layoff, and got slapped hard by the locals. Took years for that process to finally resolve which induced a ton of stress for everyone working there. You also have founders over here that salivate at the Silicon Valley culture and want to emulate it, but for whatever reason don't actually want to move there. They also induce friction in their companies. For what it is worth, I don't want to work at a company with those kinds of cultural influences. And I want to make sure if those companies operate here, we tax them appropriately and force them to behave in an acceptable way that benefits society.
by NikolaNovak | 2025-06-01 12:23:45+00:00
There are several different types of slides, and understanding it's purpose is the key success and agreement. At the very least I coach my team to think are these presentation slides (fee bullets, some visuals, focus on the speaker), vs are they or will they become reference slides, which will be read by people not at your presentation or some time later. And there's my all time (/s) favourite, project management by slides.

I found it (eventually....) futile to rage against corporate culture of misuse of slides for purposes other than presentation. That's likely where your disconnect lies though. Hope you have better luck than I did long term!
by npteljes | 2025-06-01 12:24:12+00:00
I believe this is due to local maximums, and people benefiting from the status quo not wanting to give up even a bit of status, at all.

Personal development works the same. Even going far back in history, people concluded with certainty that cultivating one's body has many benefits for oneself. Yet, even now, in the supposed information age, people reach for promises of miracles to change their life.

This all is to conclude: overall, people are not rational. And so, by extension, businesses ran by people aren't either. And even if they were, many valid rational decisions can be made, depending on the goals. Maximum value is not always the goal. There is also risk tolerance, and there can be simply a limit to realizing the effects of one's deeds, aka not giving a fuck.
by iainmerrick | 2025-06-01 12:24:21+00:00
To address this interview specifically, rather than just gushing about how great Andor is--

One point Nuyens makes in a few different ways is that they used a variety of tools and techniques at every stage. People often have simplistic, extreme viewpoints like "modern CGI can do anything" or "CGI looks fake and weightless, practical effects are better". But here's somebody with a big part in making a fantastic-looking show, who very explicitly embraces multiple approaches. Massive real sets with CGI enhancements; sometimes green screens, sometimes old-fashioned backdrop paintings, sometimes LED screens. It sounds like close collaboration between teams in different areas was key, like the VFX team working with the production designer from the start. "Some shots started VFX and then became sets."

It sounds like a big success for an artisanal approach, where every element is a bespoke construction by cross-functional experts, versus a modular approach where each team has a position in the workflow with well-defined inputs and outputs.

But maybe it's not worth the time and money, and the "worse is better" approach wins out? I hope not, or least I hope we get more shows aspiring to be as good as this.

On a smaller scale, interesting to hear how much equipment on a high-end film set is now wireless. That must be a massive change from just a few years ago, where you'd have had massive cables snaking everywhere.
by davedx | 2025-06-01 12:25:06+00:00
More information here: https://ai.google.dev/edge/mediapipe/solutions/guide

(It seems to be open source: https://github.com/google-ai-edge/mediapipe)

I think this is a unified way of deploying AI models that actually run on-device ("edge"). I guess a sort of "JavaScript of AI stacks"? I wonder who the target audience is for this technology?
by pjungwir | 2025-06-01 12:26:06+00:00
Does this scheme give a way to progressively load slices of an array? What I want is something like this:

["foo", "bar", "$1"]

And then we can consume this by resolving the Promise for $1 and splatting it into the array (sort of). The Promise might resolve to this:

["baz", "gar", "$2"]

And so on.

And then a higher level is just iterating the array, and doesn't have to think about the promise. Like a Python generator or Ruby enumerator. I see that Javascript does have async generators, so I guess you'd be using that.

The "sort of" is that you can stream the array contents without literally splatting. The caller doesn't have to reify the whole array, but they could.

EDIT: To this not-really-a-proposal I propose adding a new spread syntax, ["foo", "bar", "...$1"]. Then your progressive JSON layer can just deal with it. That would be awesome.