Hacker Newsnew | past | comments | ask | show | jobs | submit | notpushkin's commentslogin

The claim was not that the census is instrumental to e.g. ethnic cleansing, simply that the (micro?)data can be used that way.

And it of course helps, if accurate, as it tells you exactly where to go, how many there are, etc.

It’s basically cheating.


> It’s been a year and agents and models have improved dramatically.

Then why is the PR quality still a problem?


Because having more powerful tools is a different problem from using them well.

When GUI apps first made it easy for anyone to use 100 fonts and colors in a document, it did not make the quality of design go up. The tools became more powerful but the average quality of design went down because lots of people with less skill could suddenly participate.

Same issue here, two things are true at once. Models and agents are very powerful, and it makes it possible for less skilled or less conscientious developers to increase volume of low quality PRs.

This is what needs a solution with the PRs.


Hmm, `mise use -g docker-cli` works for me. `docker compose` is a bit trickier – it gets installed as `docker-cli-plugin-docker-compose`, but docker-cli doesn’t seem to pick it up. I’ve added a symlink as `docker-compose` for the time being.

Also using brew for casks, and I think there’s a couple tools I couldn’t install with mise (e.g. pngpaste and zbar for scanning QR codes from screenshots).


FWIW you can replace pngpaste with a simple script: https://til.simonwillison.net/macos/impaste

Zbar seems to provide prebuilt binaries here https://linuxtv.org/downloads/zbar/binaries/ (haven't checked it myself)

Thanks for the docker tip!


> FWIW you can replace pngpaste with a simple script

Neat! Got curious if you can do that without a temp file, turns out you can:

  #!/usr/bin/osascript -l JavaScript
  
  ObjC.import("AppKit");
  $.NSFileHandle.fileHandleWithStandardOutput.writeData(
    $.NSPasteboard.generalPasteboard.dataForType("public.png"),
  );
---

Edit:

> `docker compose` is a bit trickier

I’ve tweaked my setup a bit. This installs it as `docker-compose` without symlinking required:

  "github:docker/compose" = { version = "latest", rename_exe = "docker-compose" }
And also you can manually symlink it to the Docker plugins dir so `docker compose` works as well:

  DOCKER_CONFIG="${DOCKER_CONFIG:-$HOME/.docker}"
  mkdir -p "${DOCKER_CONFIG}/cli-plugins"
  ln -s "$(mise which docker-compose)" "${DOCKER_CONFIG}/cli-plugins/docker-compose"

There's the rename-exe option in mise.toml to rename the docker compose binary to `docker-compose`. I've used it on some machine, I think. Look it up in the docs, it doesn't take long to wire up.

Yep, I’ve ended up doing exactly that: https://news.ycombinator.com/item?id=48501953

The default docker-compose definition comes from aqua:docker/compose though, which does not support rename_exe. You have to specify github:docker/compose instead.


doesn't aqua:docker/compose just work? it does for me

Nope :-( Just tried it again, it installs and is available in PATH as `docker-cli-plugin-docker-compose`, but `docker compose` says “unknown command”. For docker-cli to pick it up, it should be in $DOCKER_CONFIG/cli-plugins/docker-compose (~/.docker by default, though I use ~/.config/docker).

rename_exe doesn’t do anything on the aqua backend either (and isn’t a documented option). I’m on mise 2026.5.10 right now though so if you fixed something recently I might be missing out!


It does kinda make sense... until it doesn’t. It is a cool project from a tech standpoint, but it’s not practical when we have, well, email? (This is discussed elsewhere in the comments already, of course.)

That’s exactly what I thought after posting — so now it supports end‑to‑end encryption without a handshake. Still a single HTML file. Still no backend.

> Seeing a take like that still having its followers after our autocracy matured even more is disheartening and sad.

I suppose it’s more of a CYA nowadays than that. (Well, at least one can hope.)


If you need a build script, your app is probably too big to be a single .html already.

> You can still cache the HTML.

But then any time you update any part of the app, the user has to re-download the whole thing. It is also a problem with many traditional frontend builds, but if you carefully split it into chunks, you can update parts of the app while most of it stays cached.

See e.g. Linear’s approach to vendor dependencies: https://performance.dev/how-is-linear-so-fast-a-technical-br...

---

The strong point of single .html apps is, of course, that you can run them locally without setting up a web server or anything, and deploy anywhere you want by just uploading it. But it is a fairly niche thing IMO.


https://fuzzygraph.com is a 1.4Mb Single HTML file that I have a build script for (https://github.com/calebmadrigal/fuzzygraph).

Alright, this is pretty cool. I don’t see any reason for it to be a single-file web app, though!

Going through your article on the topic [0], I think the only strong point that SFWAs have which SPAs don’t is: “you can download and run them completely offline”. This highlights the best use case for SFWAs – it is something that you might want to download and run offline. Hypervault [1] is a better example here, IMO.

SFWAs do have drawbacks, mainly the inability to cache things independently (it’s all-or-nothing), or to download things in parallel. So basically it boils down to two questions:

• Is my app something users would want to run offline?

• Will I update it frequently enough for the cache problem to matter?

And it’s up to you to find the balance here.

[0]: https://gods.art/articles/single_file_web_apps.html

[1]: https://gods.art/articles/single_file_web_apps.html#hypervau...

---

Actually I’ve just thought of something.

If it still makes sense to distribute your app as an SFWA, but you have to use a bundler, you can have the best of both worlds by making two builds: one as an SFWA, and one as a “traditional”, chunked static SPA. It should be fairly easy (just make two different configs, building from the same source).


The biggest thing for me is how durable it is as an SFWA (avoiding software rot)

Pretty graph! iOS Safari, takes just under a second probably to load each time I pan across the graph. Wonder what it’d take to bring it all the way to smooth scrolling—too demanding on resources?

Looking again, figure it has to do all the math again with each pan/drag, so minor latency makes sense.


Apple does have an OCI variant of this: https://github.com/apple/container

Doesn’t seem to have Compose support though, but it’s probably not impossible to build upon.

And of course, it also uses VMs, though unlike Docker, it’s one (micro-?) VM per container: https://github.com/apple/container/blob/main/docs/technical-...


There’s a huge difference for small business owners.

Stripe has a Get started button. You click it, fill out a form, get your site approved in maybe a day, and start making money.

Adyen has a Talk to our team button. You close the tab and never think about it again until you’re making serious money.

---

Edit: that is, of course, by design. Adyen doesn’t want small businesses. From the sibling comment:

> only able to support businesses currently transacting more than €5M per year


Sadly pretty normal for European companies. The penalties they face for signing up a bad customer are so much harsher they won't risk letting just anyone sign up without actual KYC not just checkbox KYC. This is the same reason Hetzner turns away 50% of its customers.

I used to work at Stripe and they subject to the same penalties as Ayden. There is a misconception that Stripe is an American only company, they have dual HQ model in Ireland and San Francisco. Since they are an Irish founded company and they have an EU entity “Stripe Technology Europe”. They can be kicked out of entire countries and regions if they didn’t have an extensive KYC systems and be fined just the same.

Since Stripe operates by working with a BIN (banks that sponsor them within each country) generally like all payment providers. While the decline rates for new customers are not public, they are very high, especially for industries that aren’t allowed like Adult Content, Weapons, and Gambling [1]. Also revocation of existing accounts can happen often if KYC systems flag anything, like Stripe Identity, Connect, and Radar.

[1]: https://stripe.com/en-br/legal/restricted-businesses


> especially for industries that aren’t allowed like Adult Content, Weapons, and Gambling

Well, it does makes sense. I’d be more interested in the rejection rate for businesses that are allowed but are just starting up.


Mollie (also Dutch) existed even before Adyen (and way before Stripe). They have no problem dealing with small customers, and have always offered a trivially easy to use API.

Love for Mollie - and literally had this exact theme last year at work. Stripe implemented, then customer A couldn't use it due to US base, so went to Adyen, built integration, rejected as less than $5 million as first responder said, then went to Mollie.

Only gripe is no embeddable checkout but its not a huge deal, and they have superior test platform than even Stripe. The test cards are right there in slide in panel, and you have option to select paid/cancel/fail etc to test different outcomes.


Not sure how would that change for Stripe dealing with EU companies.

They have to comply with the same regulations.


Why don't they have a fax option so you absolutely never think about it again?

Adyen has resellers. Mollie is one example, they do have. Get Started and no lower limit. These smaller parties rely on the bank license of Adyen

Are you sure about that? From Mollie's webiste:

Mollie B.V. is licensed and registered as an electronic money institution with the Dutch Central Bank (relationship number: F0038). Mollie UK Ltd is licensed and registered with the Financial Conduct Authority as a payment institution in the UK (FRN: 977968).


Lightspeed is powered by Adyen and serves smaller businesses.

https://www.adyen.com/knowledge-hub/lightspeed-integrated-pa...


Seems to be focused on retail / POS, not online payments. Though they do have eCommerce page and even API:

https://www.lightspeedhq.com/ecom/

https://www.lightspeedhq.com/pos/retail/api/


Mollie also doesn't want small businesses, unfortunately. (We were rejected as too small.)

Matches my experience. They didn’t state any reason in my case, though.

Really? Must be a recent thing then..? I've used them for all sorts of small (and not so small) things.

Mollie doesn't resell Adyen, nor does it rely on Adyen's banking license.

Fork?

I think the OP’s point still stands, but it is a fairly weak argument.

I am Russian and I do oppose Putin’s regime. My family is in Russia, though. If I send them money (which), and they pay for, say, groceries, which are taxed, some tiny part of my money will be used to fund the regime and the war. I am very disappointed but there is no way for me to just yank all my family and friends and relocate them to a less fucked-up jurisdiction.

Doing business with Yandex is a whole other beast. Kagi can choose to use a worse search engine API which doesn’t involve paying money to a Russian company. Are there some market forces at hand here? Maybe a lot of Russian expats pay for Kagi because it has good Russian-language results? I don’t know.

Edit:

> But is Yandex government owned?

It isn’t, but I really doubt it has no ties with it. It would be interesting to trace and see if Yandex Cloud’s international branch money gets back to its Russian counterpart, or if they are two separate things.


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: