HNHacker News
TopNewBestAskShowJobs

johtso

900 karma · joined June 6, 2011

[ my public key: https://keybase.io/johtso; my proof: https://keybase.io/johtso/sigs/YxYSihnl8rZY30JJDe9RtNmh8OE7Kkem6MSXJtz_IPo ]
submissionscomments
johtso··on Cloudflare Email Service
It’s impossible to know whether an action completed successfully if an error occurs between sending the request and persisting the result
johtso··on Cloudflare Email Service
Sure, but this is not a protocol, this is an API. APIs that allow actions that cost money, potentially annoy users / effect your reputation in the eyes of email recipients, I believe, should allow the caller to supply a unique key to enforce idempotency.
johtso··on Cloudflare Email Service
Another email sending service without support for idempotency?
johtso··on Fix the iOS keyboard before the timer hits zero or I'm switching back to Android
Yes this behaviour is infuriating, the surprise autocorrect! Can result in some really embarrassing messages being sent..
johtso··on List animals until failure
This is the trouble with common names, the way to avoid ambiguity is to use the binomial name.
johtso··on Text-to-SQL is dead, long live text-to-SQL
When you're having to work with someone else's godawful convoluted database schema you're sometimes really happy not to have to write the query yourself. Giving the LLM context with previously written queries can be quite effective.

The writing SQL experience is a product of both SQL's syntax, the structure of the database you're querying over and the complexity of your query.

When things get hairy, and you have a good number of representative queries already written that you can use as context, LLMs can be really nice tool.

johtso··on Show HN: Pyscn – Python code quality analyzer for vibe coders
This is fairly common with linting/test coverage tools
johtso··on Benefits of choosing email over messaging
I've been having a bad time with email of late. It's been the method of communication between us and another company (a pretty creaky old product). I thought they were replying strangely and ignoring my questions "did they even read what I said!?". It turns out for whatever reason they hadn't been getting some of my emails.

Now I can't trust that anything has been received unless I get an acknowledgement, so I have to keep pestering for replies. Basically lost trust in the protocol because it's dependent on the the other person's mailserver behaving they way you expect it to.

johtso··on Parrot – type-safe SQL in Gleam, supports SQlite, PostgreSQL and MySQL
sqlc always seemed like a really neat concept to me. I love the idea of being able to write my queries as raw SQL in separate files, would make everything so much more interoperable with other tools. Having your queries defined as strings inside some other programming language always struck me as not so awesome.

I'd love to see something like this for Typescript and Effect's SQL integration with schemas.

johtso··on Ask HN: Went to prison for 18 months, lost access to my GitHub. What can I do?
Maybe, depending on where you are in the world, you could make some kind of GDPR request to get access to your data, even if you don't recover your account?
johtso··on Cloudflare Email Service: private beta
Thanks for recommending mailpace, £7.50/month for 10,000 emails is very reasonable, _and_ they support idempotency! Definitely makes me consider switching to them..
johtso··on Cloudflare Email Service: private beta
Please tell me this supports some kind of idempotency.. I fear it wont.

The kind of hoops I've had to jump through to achieve DIY idempotency with Postmark would make you cringe, a shared lock to avoid race conditions, and then using the API to check if an email with the unique id (manually added to the metadata when sending) has not already been sent before sending an email.

Being safe in the knowledge that an email with some unique key will only be delivered once regardless of bugs, processes dying mid task, network issues etc. just makes life so much simpler. The risk of sending duplicate emails or at worst spamming your users due to some more nefarious bug is something that you really want to guard against at as low a level as possible. Sure this might not be quite as consequential as duplicate charges through the Stripe API for example (Stripe have always seemed to lead the way with good API design in this regard).. doThing(data) is _not_ good enough for executing tasks over a network that are effectful, have a cost, and potentially risk your reputation if things go wrong. Idempotency keys should far more widely supported!

johtso··on Shai-Hulud malware attack: Tinycolor and over 40 NPM packages compromised
Maybe one approach would be to pin all dependencies, and not use any new version of a package until it reaches a certain age. That would hopefully be enough time for any issues to be discovered?
johtso··on Age verification doesn’t work
Do you not use an adblocker? I can't remember the last time I saw that kind of ad..
johtso··on Probability of typing a wrong Bitcoin address
What about something like VisualHostKey but for the bitcoin address?
johtso··on End well, this won't: UK commissioner suggests govt stops kids from using VPNs
Really? you can just download an app on your phone (like ProtonVPN) and it just works, where's the faff?
johtso··on Occult books digitized and put online by Amsterdam’s Ritman Library
All 7ishTB of images are also available on the internet archive, Flickr was a collaboration that allowed browsing them in a vaguely user friendly way. I guess serving over 5 million images isn't trivial and it made sense as a way to help with discovery.

https://archive.org/details/bookimages

johtso··on Occult books digitized and put online by Amsterdam’s Ritman Library
Yes, the dezoomify extension will get you individual pages, quite neat seeing the image getting put together client-side in a canvas.. shame it's even necessary though.
johtso··on Occult books digitized and put online by Amsterdam’s Ritman Library
Pinned comment on their Youtube video 6 years ago "There is no option to download them. We will let you know if one day that will come!"
johtso··on Occult books digitized and put online by Amsterdam’s Ritman Library
Hermetically open? Where's the download link?

It really frustrates me that fantastic projects like this end up only being made available via some "online catalogue" with tiled zooming and no option to download.

Just stick it on the internet archive, and then voila, the data is actually open, everything gets automatically OCRed, and then we can do fun transformative things like the Internet Archive Book Images project..

https://www.flickr.com/photos/internetarchivebookimages/

https://ia804508.us.archive.org/21/items/vrr-texts-imageryof...

https://ia804508.us.archive.org/21/items/vrr-texts-imageryof...

johtso··on Occult books digitized and put online by Amsterdam’s Ritman Library
AI? All you need is a 200 line perl script :)

https://www.flickr.com/photos/internetarchivebookimages/

https://ia804508.us.archive.org/21/items/vrr-texts-imageryof...

https://ia804508.us.archive.org/21/items/vrr-texts-imageryof...

https://preo.ube.fr/textesetcontextes/index.php?id=5025

johtso··on A gentle introduction to anchor positioning
Think a common approach is to just display a triangular svg beneath the tooltip:

https://react-spectrum.adobe.com/react-aria/Tooltip.html#exa...

johtso··on Enlisting in the Fight Against Link Rot
The project dashboard is great, you can see all the work that's being done in real-time: https://tracker.archiveteam.org:1338/
johtso··on Build durable workflows with Postgres
Why would you not recommend Cloudflare workflows? Was thinking of using them in my current project..
johtso··on Emailing a one-time code is worse than passwords
Wouldn't that be incredibly insecure? Attacker would just need to initiate a login, and if the user happens to click the link they've just given the attacker access to their account..

The reason why magic links don't usually work across devices/browsers is to be sure that _whoever clicks the link_ is given access, and not necessarily whoever initiated the login process (who could be a bad actor)

johtso··on Diet, not lack of exercise, drives obesity, a new study finds
Isn't there a limit to how many calories your body can store in a certain period of time? After a certain point wont there be a lot of waste?
johtso··on Complete silence is always hallucinated as "ترجمة نانسي قنقر" in Arabic
I get the same with Welsh, when having some network issues in voice chat it hallucinated me saying "Diolch yn fawr am wylio'r fideo." which translates as "Thank you very much for watching the video."
johtso··on Heroku Is Down
My long running worker still seems to be working, but my scheduled task has stopped running.
johtso··on U.S. sanctions cloud provider 'Funnull' as top source of 'pig butchering' scams
This seems like the correct way to go though.. if you want reversibility, then introduce escrow into the situation, the foundational building block should be irreversible.. as there's no way to make a means of transfer _more_ irreversible if you're inherently giving control to a 3rd party with no choice.
johtso··on The belay test and the modern American climbing gym
This sounds rather dubious, my impression was that climbing deaths are extremely rarely due to equipment failure. Also rope failures.. really? In normal use climbing ropes tend to fail by desheathing, dramatic but not necessarily that dangerous. Catastrophic rope failure only really tends to happen due to slicing over sharp edges under load, unrelated to wear and tear..

What are you referencing?

Page 1 of 10Next →