News for hackers. Stuff that matters.

mceachen

Re:Linode Security Incident on Friday October 30, 2026 @07:05PM (#50311284)
gopher goes to 11

(archie and veronica are non-denumerable)

An "image ladder" is the same image resampled at different resolutions.

A srcset lets a browser make the decision about what version of an image ladder it should use for the current device and viewport. https://responsiveimages.org/ has details.

Applied, look at the source for https://photostructure.com/tags/ you'll see that all the header art looks like this:

<picture><source type="image/webp" srcset="/img/2026/05/desk-2000w_hu_f9b8e901c6d3512c.webp 400w, /img/2026/05/desk-2000w_hu_4e2d65cccd03c969.webp 800w, /img/2026/05/desk-2000w_hu_11f3bf6c90dbf78d.webp 1200w, /img/2026/05/desk-2000w_hu_8c1a7d0a013e4ee2.webp 1600w, /img/2026/05/desk-2000w_hu_4cebe999e55b5486.webp 2000w" sizes="100vw"><source type="image/jpeg" srcset="/img/2026/05/desk-2000w_hu_cf5671a2e3bdd0cc.jpg 400w, /img/2026/05/desk-2000w_hu_2906e4ba7cda040.jpg 800w, /img/2026/05/desk-2000w_hu_f59ef0388799d4d2.jpg 1200w, /img/2026/05/desk-2000w_hu_e183d28df837e14a.jpg 1600w, /img/2026/05/desk-2000w_hu_ea9c422963c8e0e1.jpg 2000w" sizes="100vw"><img src="/img/2026/05/desk-2000w_hu_f59ef0388799d4d2.jpg" width="1200" height="600" alt="About" class="w-100 header-image" loading="eager"></picture>

That's generated by https://github.com/photostructure/ananke/blob/main/layouts/p... which relies on the hugo Pipes stuff.

I use Hugo as well. If any of your pages have larger media, look into Pipes to get images ladder srcset built for you automatically. Very fancy. https://gohugo.io/hugo-pipes/introduction/
Oh man that's rough.

Your experience would make for excellent feedback for me if you're willing, email hello@ my domain name if you want complementary PLUS!

Just to clarify, I've open sourced a ton of PhotoStructure (exiftool-vendored, batch-cluster, fs-metadata, @photostructure/sqlite, sqlite-vec, and 10 more repos), but PhotoStructure's frontend and backend integrations are not open source. If PhotoStructure, Inc. ever closes, though, I will open source the repos powering the consumer product.

I've written open source for several decades, and certainly enjoyed the spoils of open source, but I've also seen a ton of bad behavior. Keeping it closed source certainly is not a guarantee that I avoid intellectual property theft or license violations, but at least I'm not just one agent prompt away from someone rebranding and reselling what I've worked full-time on for more than a decade.

You can switch to tgz which supports 50gb splits.
Don't rely on Google Takeouts for byte-perfect backups of your Google Photos library.

Depending on the device that uploaded the media and your country, they may have stripped GPS metadata from your media. I've also had captured-at times get changed randomly (!!) from your original media.

If possible, pull your media directly off your smartphone to make sure there are no shenanigans going on.

(These were painful discoveries made while trying to help support my PhotoStructure users)

I wrote the open source library that Immich (and PhotoStructure and several thousand other projects) use for metadata reads and writes.

PhotoStructure runs everywhere (laptops, desktops, macOS, Windows and Linux), libraries are portable across machines and OSes, there's a generous, usable free tier, and setup takes about three minutes. If you have any questions hop into our discord, we're a friendly bunch.

Re:mitmproxy adds --emudhra option on Wednesday October 21, 2026 @11:05PM (#50190678)
That's the combination to my HSM!
Re:Chain of Thought for Humans on Wednesday October 21, 2026 @11:00PM (#50190638)
In almost every interview I gave at the last several companies I worked for, I'd start with "This may feel a bit odd, but with this coding problem, I'd appreciate if you spoke through your problem solving. If it helps, pretend like I am your intern. Good ideas, bad ideas, pros and cons of whatever you're considering, it's all valuable information for me to learn a bit about how you approach problems."

I feel like being explicit like this put candidates at a bit more ease than having them try to suss out what the interviewer is expecting from them implicitly (and I know there are many interviewers that will auto-veto any candidate with the audacity to suggest a possibly imperfect approach).

Re:Do dentists know what they're doing? on Wednesday October 14, 2026 @11:50PM (#50098917)
Yeah, took a look at your legacy codebase. Lots of deadwood, spaghetti, misalignments. I'd even say there was skeletal deformities in the architecture. If I was your uncle, I'd say it needed at least two full rewrites. Yeah, two, because the first rewrite will suffer from second system syndrome. You don't want that. Better to plan for both rewrites ahead of time.
Re:Gemini 4 Argon on Tuesday October 13, 2026 @12:47PM (#50074715)
He deserves a full parliament
Re:Bitwarden Dual License Model on Saturday October 10, 2026 @12:35PM (#50034537)
Syncing is iffy. Saving credentials associated to a shared org fails randomly. Rendering (x11/Firefox) sometimes fails completely, but is predictably slow. Auto fill can be buggy. Opening vaults on iOS can be remarkably slow.
Re:Using Blu-ray M-Disk as Backup of Last Resort on Tuesday October 06, 2026 @12:41AM (#49974269)
Nope, I think it's really hard to assemble an album with sufficient context to warrant your time and interest.

If an album is well annotated with dates and locations and names and descriptions, it might be fun, but I suspect the number of old photo albums with this kind of effort put in them is rare.

Re:Using Blu-ray M-Disk as Backup of Last Resort on Tuesday October 06, 2026 @12:35AM (#49974230)
Data durability is one thing.

Being even remotely relevant to future generations is quite another.

I had so many of my users ask your question that I wrote this up: https://photostructure.com/guide/how-do-i-safely-store-files...

But a month or two after I initially wrote that, my brother and I found a couple boxes of photos from my parents and grandparents. No notes. No dates. No albums. Just envelopes and envelopes of undated photos.

Taking the time to make an annotated printed photo book, including dates, people and place names, and any other context is going to make those images a lot less irrelevant to future generations, and printed media, stored well, should easily last 50-100 years.

I would not make a bet that you'll be able to procure a bdxl reader in that time period.

Re:Treachery in the Rodin Museum 3D Scan Verdict on Saturday October 03, 2026 @08:10PM (#49949161)
TFA discusses this in depth—and that the end ruling (according to the article) was haphazard, inconsistent, and indefensible.
Re:10 Tells of a Slop UI on Sunday September 27, 2026 @04:09PM (#49870343)
Material design suggested using uppercase on buttons in Google I/O 2014.
Re:I don't want the details on Thursday September 24, 2026 @01:09AM (#49826497)
It sure seems to be. For the uninitiated: https://en.wikipedia.org/wiki/Five_whys
Re:Don't Let Anyone Take Away Your Big Box of Cables on Friday September 11, 2026 @07:43PM (#49666954)
I should have clarified: I use a 1" piece of maybe 5mm wide good quality 3M tape that wraps over itself.

This follows (at least my local) electrical code--it's quite robust. I have 40 year old electrical conduit that has tape applied like this and there's no movement, no fraying, no stickiness.

Re:Don't Let Anyone Take Away Your Big Box of Cables on Thursday September 10, 2026 @10:17PM (#49652793)
I bought a cheap pack of 5 colors of 3m electrical tape. Each cable gets one or two pieces of tape:

Data:

White if usb2

Blue if it supports USB 3 data (because 5Gbps USB 3 ports are mostly blue)

Green if TB/USB4/40Gbps

Power:

None if low/no Power Delivery

Yellow for 45W PD

Red for 65W+ PD

Re:Ask HN: How do you manage skills files? on Monday September 07, 2026 @09:54AM (#49598488)
Have your agent make a plugin marketplace -- mine is here (feel free to crib): https://github.com/photostructure/coding-skills

Be sure to increment unofficial plugin versions when you make edits: codex's auto-update works reasonably well, claude not so much, but when asked, both can fix their own config.

And like others have said, imho the skills that are incanted as macros are much more reliably useful. I use my technical project plan skill suite in 90% of my sessions via direct reference, and the stage -> cross-model second-opinion review is how I land all my commits.

Re:De-Brainrot Vacations on Monday September 07, 2026 @09:43AM (#49598377)
The neurologists and neurotherapists for a family member who is a stroke survivor have been pretty consistent in saying that cardiovascular exercise and regular social engagement seem to be the most promising activities to stem cognitive decline.
Re:Portal by Spotify cut my Claude Code token usage by 90% on Saturday September 05, 2026 @11:21AM (#49577420)
"Use subagents as applicable. Use sonnet/luna for finding relevant code references"

This should have been the entirety of TFA.

Re:GPT-6 Astra on OpenRouter on Friday September 04, 2026 @10:53PM (#49572645)
Aldus Freehand 1.0 was released in 1988. Adobe Illustrator was first released in 1987.
Re:Claude Fable 5.1 and Claude Mythos 5.1 on Friday September 04, 2026 @04:36PM (#49569917)
Sol doesn't support larger contexts, and the prior fable context was ~300k, way under where you see substantive regression
Re:Claude Fable 5.1 and Claude Mythos 5.1 on Tuesday September 01, 2026 @03:42PM (#49527054)
I had two sessions this morning that prior fable and sol sessions were stuck on, where iterations just resulted in _different_ bugs. (One kind of tricky fe layout problem, the other was a backend refactoring that was complicated by trying to aggregate a couple prior sessions that crashed).

I summarized each into new fable 5.1 sessions, and both seem to have arrived at reasonable solutions that only need a few nits revised before they are commit worthy.

age of xitter won't make you feel better.

Older »