MurphyA/hacker-news huggingface dataset:
by mrspuratic | 2025-06-13 08:25:12+00:00
Yes, via PAM, and this works fine with OpenSSH. But the couple of OTP implementations I've used are the same, you can either provide password and PIN or passwordPIN. In the end they get concatenated, passed to the next layer, and taken apart for checks. This lets it work with brain-dead http basic auth too, if you're unlucky enough to have to use that...
by xlii | 2025-06-13 08:26:56+00:00
When it comes to Go editors (IMO Go is perfect language for such editors) I also need to mention https://anvil-editor.net

It's ACME inspired, open source (although I don't think it's published on GitHub, one needs to download), and it's actually quite nice to work with due to its composability).

Takes some time to use, but it's really fun to use for stuff like ad-hoc documentation, completion etc. Oh, and it also has REST API for interaction with external tools so you can Go (pun intended) crazy on it.
by 3cats-in-a-coat | 2025-06-13 08:26:58+00:00
Thing is you can't refract and diffract light in actual AR glasses, as light passes through, all you have to play with is opacity.

This means you need something like Vision Pro which fakes transparency via cameras, which are then blended into the final image (which then you can process with "Liquid Glass" etc.)

So given this, what do we mean by "upcoming AR glasses". How are they upcoming? Vision Pro came out and it failed. You can be certain Apple started work on Liquid Glass before they could process their failure, they were anticipating Vision Pro to be their Next Big Thing, and aligned everything to it.

Now it just looks tone deaf. They forced their most successful platforms to look like their least successful platform. Awkward.
by benchly | 2025-06-13 08:27:17+00:00
These replies are fantastic, thanks all.

I recently (last few years) discovered that not only do I like DnB, but there is something about it that keeps the anxiety goblin in my brain occupied the same way one might distract an unruly child with a video game or something equally engaging. Contrast to what the poo-poo'ers say, the organized chaos that it brings to my table actually _helps_ me regain a bit of my higher-order thinking, especially when troubleshooting.

Calibre is a fav, but already mentioned so I offer up another favorite of mine for those looking for something a bit more fluid with a nostalgia kick.

Level Select by Pizza Hotline: https://pizzahotline.bandcamp.com/album/level-select
by antoniofoti | 2025-06-13 08:27:28+00:00
eKilo is a lightweight terminal text editor based on the original kilo editor with enhanced functions. Its peculiarity is that it can run on any hardware, maintaining a high-performance and useful style. It installs in a minute, if you want to take a look I would be happy, having found a utility myself, having completely replaced vim. Any advice is highly appreciated.
by namaria | 2025-06-13 08:27:49+00:00
I really don't get it. I've tested some agents and they can generate boilerplate. It looks quite impressive if you look at the logs, actually seems like an autonomous intelligent agent.

But I can run commands on my local linux box that generate boilerplate in seconds. Why do I need to subscribe to access gpu farms for that? Then the agent gets stuck at some simple bug and goes back and forth saying "yes, I figured out and solved it now" and it keeps changing between two broken states.

The rabid prose, the Fly.io post deriding detractors... To me it seems same hype as usual. Lots of words about it, the first few steps look super impressive, then it gets stuck banging against a wall. If almost all that is said is prognostication and preaching, and we haven't seen teams and organizations racing ahead on top of this new engine of growth... maybe it can't actually carry loads outside of the demo track?

It can be useful. Does it merit 100 billion dollar outlays and datacenter-cum-nuclear-powerplant projects? I hardly think so.
by adwn | 2025-06-13 08:28:52+00:00
When `free()` is called, the allocator internally marks that specific memory area as unused, but it doesn't necessarily return that area back to the OS, for two main reasons:

1. `malloc()` is usually called with sizes smaller than the sizes by which the allocator requests memory from the OS, which are at least page-sized (4096 bytes on x86/x86-64) and often much larger. After a `free()`, the freed memory can't be returned to the OS because it's only a small chunk in a larger OS allocation. Only after all memory within a page has been `free()`d, the allocator may, but doesn't have to, return that page back to the OS.

2. After a `free()`, the allocator wants to hang on to that memory area because the next `malloc()` is sure to follow soon.

This is a very simplified overview, and different allocators have different strategies for gathering new `malloc()`s in various areas and for returning areas back to the OS (or not).
by pjmlp | 2025-06-13 08:29:40+00:00
Not only language.

Many of complaints towards Rust, or C++, are in reality tooling complaints.

As shown on other ecosystems, the availability of interpreters or image based tooling are great ways to overcome slow optimizating compilers.

C++ already had a go at this back in the early 90's with Energize C++ and Visual Age for C++ v4, both based on Common Lisp and Smalltalk from their respective owners.

They failed on the market due to the hardware requirements for 90's budgets.

Now slowly coming back with tooling like Visual C++ hot reload improvements, debugging optimised builds, Live++, Jupiter notebooks.

Rational Software started their business selling Ada Machines, the same development experience as Lisp Machines, but with Ada, lovely inspired on Xerox PARC experience with Mesa and Mesa/Cedar.

Haskell and OCaml, besides the slow compilers, have bytecode interpreters and REPLs.

D has the super fast dms, with ldc and gdc, for the optimised builds suffering from longer compile times.

So while Rust cannot be archited in a different way, there is certainly plenty of room for interpreters, REPLs, not compiling always from source and many other tooling improvements, within the same language.
Media Cheat Sheet – Up-to-date social media image and video sizes
by ronaldsvilcins | 2025-06-13 08:30:56+00:00
Hi HN!

I’ve built MediaCheatSheet.com – a simple, no-nonsense reference tool that collects the latest social media image and video dimensions in one place.

It’s designed for designers, content creators, and marketers who are tired of constantly Googling “Instagram reel size” or “Twitter post image ratio.”

There are no ads, trackers, or logins – just the specs you need, organized by platform. It’s free to use, and I plan to keep it regularly updated.

Would love your feedback, suggestions, or ideas for what to add next!

Thanks! Ronalds
by muzani | 2025-06-13 08:32:37+00:00
Bolt has been amazing at design, but it's a token hog - one instruction can drain a million tokens on a fairly small codebase. But if I were prototyping a loose idea with no idea where to start on UI/UX, the most efficient way would be via Bolt.

Bolt will do app-wide changes. Like recently I'm working on a character generator. I want it to include personality traits after gender but before clothing. It adds the screen, increments the steps, and changes the final screen to reflect this new data type.

Cursor does the engineering very well. I think it's become common recently to have a shared markdown file that different agents can access.

Gemini Pro has the huge context window but tends to make edits you didn't ask for, like simplifying your instructions and removing some of the important ones. Claude sonnet 4 is just nice for most tasks. o3 is the most precise by far, but low creativity. Visually GPT-4.1 seems to be the best. So if you have a Figma design, you can just screenshot and paste it.

Do have a cheat sheet ready for the AI. Tell it how to open modals, where to get the fonts, colors, icons.

I know some people are able to make it fully automated, but that is something I don't trust it to do. It would be an interesting exercise to see how well we can write a PRD then, and it becomes an exercise in commanding genies.
by adrian_b | 2025-06-13 08:33:11+00:00
The problem is that those APIs are not well documented, so reading the convolute source code may be the only documentation in some cases.

Perhaps there is some documentation, but it is well hidden.

Just these days, after being hit by the fact that the Xorg server has become dependent on systemd, I have begun to search for what elogind is really doing to simulate the login services of systemd. I have not found any easy way to discover that, except by reading the source code, which is not simple at all.

I would not care if GNOME or any other package would add systemd dependencies, but these were accompanied by a document describing precisely the protocols or APIs they use for accessing systemd services, so that it would be easy to write alternative implementations.

The reality is that no such documentation is provided, so the only way to avoid systemd is to become an expert in its internals. This is why I hate when such new dependencies are added.
by jeroenhd | 2025-06-13 08:33:38+00:00
Needless to say, this is an ad for Tailscale. I hate these short-lived sessions myself, but there are oftenreasons why they're there.

The alternatives proposed are "just always check right before a sensitive action" and "use continuous verification". Both of which are much harder to pull off correctly than short-lived authentication sessions (unless you buy their product, of course, supposedly), especially on third-party services you don't control the source or manage the deployment for.

Oh, and of course, "just make everyone lock their screens". If only it was that easy. If basic rules like that worked, we could ditch half the security measures we have for websites. What's next, "just use unique passwords of 20+ characters for each website"?

Also, this is putting a lot of trust in solutions like Windows Hello. I can't speak for the security of Apple's implementation, but thanks to bad vendor implementations (including Microsoft's own!), Windows Hello hardware is full of security holes. At some point one company decided to take a look at a few of those devices [and found security problems in all of them](https://blackwinghq.com/blog/posts/a-touch-of-pwn-part-i/).

Short token longevity also protects against one use risk Tailscale have a solution for: users logging in to their personal accounts on public computers. That's still an essential use case for people without internet access or computer access at home. Often these people are more vulnerable (homeless, very poor) so relying on them clicking the "log out" button on every website they're forced to interact with is not going to work.

Kerberos (or buying what Tailscale sells) does offer a somewhat nicer authentication flow, but that still doesn't work reliably on every browser on every OS on every device and it requires people to follow basic rules like "lock your screen", which is a massive risk. Passwords will always work anywhere and their security can be somewhat enforced.
by zargon | 2025-06-13 08:33:44+00:00
In my way of thinking, determinism is a prerequisite for "free will". People usually speak of free will as a the idea of making their own choices. Suppose you hypothetically take a snapshot of my exact physical/mental state at the instant of decision and replay it multiple times. If I always make the same choice, that's determinism. If the outcome of the decision is sometimes different, I can't call that a "choice" or free will. It was something random that I had no control over.
by dismalaf | 2025-06-13 08:34:25+00:00
As long as I've followed the software industry there's always been people saying "blah blah craftsmanship blah". The fact is, people don't care about craftsmanship. You can't see the code of most of the software you use and even when you can (FOSS), who's actually looking?

Also, the few times I've use "handcrafted" software it's underwhelming in terms of functionality, apart from a few FOSS programs that have thousands of contributors.

Life is short and hardware is relatively cheap.
by wobfan | 2025-06-13 08:36:56+00:00
To be honest, it's not like Google doesn't know this. And it's not like it should be surprising to us that Google just ignores it.

They know they'll lose some sales, but the few percent of people who'll buy a Pixel anyways but keep the stock OS on it lead to a net plus for them.

They don't care about you liking their hardware and using it like you own it (oh the good old days). They care about you using their software so they can track you better and put ads in your phone experience, because long-term, this is where their money is.
by friendzis | 2025-06-13 08:36:59+00:00
That's a very bold statement.

Huge part of the reason why negative prices exist in the first place is separation of generation and transmission. With pay-as-clear model negligible-variable-costs generators (i.e. renewables) can bid at zero and pump more into the grid than the local segment can drain, requiring artificial balancing sinks. However, the cost of artificial sinks fall on the grid as transmission costs and are not reflected in the wholesale market.
by earnestinger | 2025-06-13 08:37:17+00:00
My view of Uncle Bob is that his advise is attempt improve the average situation, even if taken literally as a gospell.

It’s better that everybody do route tdd, than no tests at all. It’s better to have all methods exactly 3 lines of code, than all methods being 3 pages long.

Uncle bob preaches better baseline, experience will teach all the nuance.

Disclaimer: I dont do tdd. But it’s nice method of work to know.
by htahir111 | 2025-06-13 08:37:28+00:00
I recently gave a talk arguing that most companies don't actually need AI "agents" - they need workflows. The agent/workflow distinction has become one of the most confusing topics in AI engineering, since the "Building Effective Agents" blog from Anthropic: https://www.anthropic.com/engineering/building-effective-age....

My definition: An agent is a system where the LLM controls its own execution flow based on environmental feedback. Everything else (prompt chaining, routing, parallelization, orchestrator-worker) is a workflow, even if it uses LLMs.

The problem is the line is incredibly blurry. To illustrate this, I built an interactive quiz with 7 code examples that test your intuition on what's an agent vs workflow.

The community voting results are fascinating - even technical folks disagree on edge cases like "research agents" with only 3 predefined action types, or orchestrator-worker patterns where the LLM dynamically determines task structure.

The quiz shows live voting results, so you can see how your intuitions compare to others. Would love to hear HN's take - where do you draw the line?
by _Algernon_ | 2025-06-13 08:38:46+00:00
One of the first settings I change in any new browser is to forbid notification requests from all pages, and disable dom.beforeUnload (stops websites being able to prompt to confirm if I want to close the tab). Those functionalities are probably the most abused browser functionalities and definitely shouldn't be enabled by default (or if so only for a whitelist of sites).
by benchly | 2025-06-13 08:39:05+00:00
Thanks for sharing, I've not seen that site before and this is very much in-line with my own discovery about using music to help with my anxiety. The About blurb really sums it up. Wild, because had anyone presented such claims to me 20 years ago, I would have waved them away as bullpucky peddlers. Now, DnB + other electronic genres are dosed daily while at work through my headphones and I'm better for it.

Interesting that dubstep makes you feel free! I would not describe my experience like that, but it does tend to raise my aggression a bit, so I usually avoid it unless its crunch time. Your comment has me wondering about different experiences than mine. My DnB picks are more soothing to me, but sound too chaotic and "all over the place" for my wife's ADHD.
by KaiserPro | 2025-06-13 08:39:42+00:00
So the initial premise is the bit that gets me.

For the glass to be the insulator we need, I'm assuming the author envisions a solid tube, with no airgaps (can't do fibre braid as that would allow gaps which means loss of insulation, or you'd need oil to fill the gaps.)

This means huge bend radius in the order of hundreds of meters. Not only that but laying it on the ocean bed would require trenching and full support to stop localised bending.

Now to the manufacture:

> The cable is then quenched in water to surface harden it, before it moves out of the back of the ship and falls to the ocean floor over a length of many kilometers (due to very low curve radius).

So that'll cause the tube to break. Glass builds up hige amounts of stresses when it cools down quickly (see prince ruperts drop) so needs an annealing step. ( https://en.wikipedia.org/wiki/Annealing_(glass) )

Moreover changes in temperature mean that using aluminum is probably going to cause the glass to shatter when the temperature changes. which means that you either need https://en.wikipedia.org/wiki/Kovar or somehow make expansion joints every n meters.

Finally that cable is going to be heavy, so unless you make it around the same densisty as salt water, it'll have so much weight it'll snap as soon as you try and dump it into the sea.

apart from that, looks good. well apart from the units are wrong to start with.

TLDR:

you'd need 5x the width of Polyethylene to achieve the same level of insulation at high voltages. but as silica tube doesn't bend and shatters really easily, cant be transported and has a slow extrusion rate, it seems logical to just use PE.
by throwaway2037 | 2025-06-13 08:40:13+00:00
> cried of happiness when we moved to git from SVN

You bring back some real memories with this phrase.

I recall moving from RCS and CVS and thinking: "Oh, this is a real improvement." (Forgive me; I was young.)

Then, I moved from CVS to SVN and thought: "This is revolutionary. I can rename and merge." (Again, please withhold throwing your tomatoes until the end of the story!)

Later, projects grew large enough, that SVN became horrible because of how I/O worked on my PCs/networks (file by file, long before 1G network to developer PCs and horribly slow spinning disks).

The upgrade to Git was epic. Sure, the commands are weird and complex. More than 10 years later, I still need to lookup a command once a month, but it beats the pants off anything before. Hat tip to all the people (Hamano-san, et al) who have contributed to Git in the last 20 years. My life as a developer is so much better for it.
by lionkor | 2025-06-13 08:41:55+00:00
Hi, good to see you respond to criticism here, too. Personally, I can't try it locally right now, and the web demo refused to load on Firefox. On Chrome, it loaded, but it's... very slow to load files when I click on them, and there is a visible delay between taking an action and seeing that action reflected in the demo.

I bet this is a WASM limitation, I work with WASM and with Rust every day (though sadly not related lol), so I know the pain to some extent. Just please but a banner at the top saying "This preview has limited performance and responsiveness. The native app doesn't have these limitations and can be downloaded here: <link>", or similar (assuming you are aware of serious performance limitations in the browser. If not, and if your native app performs the same, please use profilers to figure out whats wrong).
by tomthe | 2025-06-13 08:42:10+00:00
If I (and only I) owned such a cable from Europe to the US, how much money could I make by buying cheap solar energy from the bright side and selling it to the dark side of the Atlantic?

First thought: 10 GW * $0.03/kWh 4 hours/day = $1.2Mio per day [0]

I am not sure about my assumptions...

[0]: https://www.wolframalpha.com/input?i=10+GW+*+%24+0.03%2FkWh+...
by tom1337 | 2025-06-13 08:42:23+00:00
Cloudflare doesn't say this directly but in their blog they've written

> The cause of this outage was due to a failure in the underlying storage infrastructure used by our Workers KV service, which is a critical dependency for many Cloudflare products and relied upon for configuration, authentication and asset delivery across the affected services. Part of this infrastructure is backed by a third-party cloud provider, which experienced an outage today and directly impacted availability of our KV service.
by ACCount36 | 2025-06-13 08:42:29+00:00
Using LLMs for evaluating LLMs is incredibly common.

The point isn't in having a "perfect" evaluator, but in having a cheap and somewhat consistent evaluator.

This approach holds up well enough... as long as you don't try to use it for RL. If you do, chances are, you'll end up with an adversarial LLM that aims solely for breaking and saturating the evaluator.
by ahartmetz | 2025-06-13 08:44:25+00:00
I think your rant isn't long enough to include everything relevant ;) The Blink web engine (which I sometimes compile for qtwebengine) takes a really long time to compile, several times longer than Gecko according to some info I found online. Google has a policy of not using forward declarations, including everything instead. That's a pretty big WTF for anyone who has ever optimized build time. Google probably just throws hardware and (distributed) caching at the problem, not giving a shit about anyone else building it. Oh, it also needs about 2 GB of RAM per build thread - basically nothing else does.
by rfoo | 2025-06-13 08:44:33+00:00
> they make no effort what so ever to distinguish between public header files and their source code

They did, in a different way. The world is used to distinguish by convention, putting them in different directory hierarchy (src/, include/). google3 depends on the build system to do so, "which header file is public" is documented in BUILD files. You are then required to use their build system to grasp the difference :(

> And their public headers tend to do idiotic stuff like `#include "base/pc.h"`, where that `"base/pc.h"` path is not relative to the file doing the include.

I have to disagree on this one. Relying on relative include paths suck. Just having one `-I/project/root` is the way to go.
by n4r9 | 2025-06-13 08:45:09+00:00
Although I agree that "scam" is extreme, the commercial side was sullied in the early 2010s by D-Wave selling what they described as "quantum computers" for $10m and spinning up a bunch of misleading PR. Of course you expect a certain deree of "fake it til you make it" in such companies, but they'd been going for over a decade at that point. This was all kicking off as I was doing my PhD in the field. It was eye-opening to see how little attention was paid to serious academics vs hucksters, and how companies like Google could be duped into spending millions on basically nothing.