Finding myself implementing postel’s law in damus even when it feels wrong: “be conservative in what you do, be liberal in what you accept from others”

When damus sees @npub it will parse it now, even though its not spec’d. It leads to a less confusing behaviour for users. There is some ancient wisdom in internet protocols that I didn’t appreciate fully until now.

https://en.m.wikipedia.org/wiki/Robustness_principle

Reply to this note

Please Login to reply.

Discussion

I appreciate fiatjaf's wisdom that this is what leads to "protocol bloat", but this is the inevitable late stage of any decentralized protocol. You can't control what other people do, and if you want to be the best you have to handle all possible scenarios for your own self-preservation.

yeah maybe it’s inevitable at scale 🥲

Isn’t it just adding one additional “case” to the note content parsing? I’d imagine that there’s already a bunch of cases for things. YouTube links, hashtags, blogs etc

I don’t know what any of that means. But you make a mean app so you have my support. Also, pledging sats per month in gratitude for Damus and up coming Linux client. With apologies, not much though by the world’s standards. I’m poor until we go hockey stick.

If I'm understanding this correctly, is this to be able to search for people based on what name they've put in their profile without the need for a NIP-05 address?

Postel's Law is widely considered to be a mistake... It results in tons of unspecified and inconsistent behavior. Better to be strict in what you accept, and if needed, update standards.

yes but other clients can generate data that will literally break damus, so its inevitable. I either have to say “sorry your account is broken now” or accept the reality and try to recover from bad data gracefully.

...and you supporting that breakage rather than just accepting that those notes can't be displayed leads to more breakage. You can't fix everything.