Self-Guaranteeing Promises

42 tie-in 20 8/11/2025, 8:03:06 AM stephango.com ↗

Comments (20)

ChrisMarshallNY · 1h ago
As far as privacy goes, I always say that the best way to ensure privacy, is to not take the information in the first place.

I manage an app that Serves an extremely privacy-focused demographic. I won't use push notifications or PassKeys, because each requires that the server store information that can be linked to a user. We do require a valid email account, and that's it. The email account can be a throwaway, but it needs to be able to receive email. Other than that, the user can choose to do things like mention their location (even then, we "fuzz it," at the server level), and maybe a couple of strings that can be anything they want.

Even with that, I still find that I need to constantly assuage doubts.

I know that not taking information is heresy, hereabouts, but, if I don't have it, it can't be leaked, and I can't be compelled to divulge it.

jimkleiber · 1h ago
I built a micro-journaling app back in the day and subscribed to this philosophy as much as i could have. On Android, i even didnt let the app have the permission to access the internet. Everything was stored on device, encrypted. However i was still scared that individual phones would be hacked (or the app itself) and the info would get out anyways.
mpalmer · 1h ago
What do passkeys require you to store besides a public key? Isn't the whole idea that passkeys don't burden providers with sensitive credentials?
ChrisMarshallNY · 1h ago
A public key can be associated with an individual user. Same with the pseudo-UDIDs, that are required for push notifications.
vhcr · 11m ago
If they're so privacy-focused, can't they generate a key specific to the app?
mpalmer · 1h ago
I guess I don't see a practical way of exploiting that association. UDID, that's unique identifying info for sure. But a public key that's never reused?
ChrisMarshallNY · 26m ago
It can still be associated with a user, the same goes for push notification IDs.

It would be difficult, but AI has suddenly made difficult things a lot easier.

senko · 1h ago
This is the way.

Or at least it should be, if companies were putting users first (a naive thought, I know).

I have a small mobile app for recording expenses (receipts). The usual strategy would be for users to create accounts and store and sync data with my service. Potentially useful data (behavior, spending), which I don't want to touch with 10ft pole.

Instead, I keep all the data local (user's device). No registration at all. Nothing to store on the server.

Slightly more inconvenient for the users (to move to a new device, you need to export and import the local db), but cheaper and zero-stress for me.

brookst · 7m ago
I work at a Fortune 10 and we routinely avoid collecting PII when there’s no reason to do so. Not out of any noble championship of privacy, just because 1) legal wants less liability, and 2) subpoenas are a PITA for everyone.
IgorPartola · 16m ago
What I really would love is a universal sync service that most apps would be built upon. There are apps I have used that basically say “we don’t provide storage service, but you can use your Dropbox, Google Drive, rsync service, etc.” This is really cool because while I love having my files locally I also then am entirely in charge of syncing and backing up stuff.
brookst · 12m ago
Not especially well thought out.

On the one hand, the stainless steel example can be generalized to materials. Gold, for instance.

On the other hand there is plenty of fraud in materials. There are different grades of stainless steel and different methods of production that yield differing qualities.

Maybe “immutable, buyer-verifiable” would be stronger? Once you buy and own and verify the gold you bought, it can’t be retroactively degraded by the seller. But at the time of purchase, it’s not at all a sure thing.

theturtle · 3m ago
"We will never sell your information!"

Yeah, but whoever buys you or executes your bankruptcy probably will. Much better for you to never have it in the first place.

"You will change your mind, but I won't change mine."

Why I give crap data to everyone unless there is absolutely no other way.

Facebook thinks I live in a ghost town in Utah, and I'm 121 years old.

Also why most of my accounts that want a street address contain an address-line-2 like "JOEBLOW.COM SOLD OUR DATA," so they can't hide.

Piss in the well, y'all.

harryday · 2h ago
Used Obsidian (paid for commercial and sync) for years, loved it, and evangelised. Ango and team seem to have genuine integrity.

Am moving to Emacs, org, plus self-built elements, however. With much pain.

You see, what is /not/ self-guaranteeing about a full Obsidian life-organising workflow is the necessary reliance on plugins and their quirky configs. I felt as locked in to the ecosystem as I ever did with services that ‘merely’ used a proprietary storage format.

I know others in the same boat. Obsidian’s long-term legacy may well be primarily as a market-maker for Emacs.

treetalker · 36m ago
How would one go about switching away from Dropbox to something else that would be free, private, and macOS/iOS compatible?
ffin · 8m ago
The only real way to do this “for free” that I can think of would be to self-host on an old laptop. Unless you meant free as in open source.
thejohnconway · 21m ago
Free? How are the servers going to run?

Syncthing is probably the closest bet. It doesn’t require servers, so it can be free. But it isn’t really a full Dropbox replacement.

gr__or · 2h ago
Bluesky/ATProto is a recent example of a self-guaranteeing promise
immibis · 54m ago
No, not really. You're just assuming they're going to continue displaying your posts on bsky.app. Everyone is reading your posts through bsky.app and it doesn't matter if your post is technically available through a side channel if it's not available through the main channel.
worldsayshi · 58m ago
Really? What makes the protocol self-guaranteeing?
ffin · 11m ago
If the promise is: when using the AT Protocol you have control over your own data, then this is self-guaranteeing, since it is a part of the spec that you can self host a PDS.

The promise that Bluesky will always be compliant with the spec, or that the spec won’t ever change to disallow this isn’t self-guaranteeing, but you could say something similar about any of these self guaranteeing promises. For example the promise that Obsidian will always use markdown isn’t self-guaranteeing.