Yep. The worst and the best decision of the early days was to use a serialization framework as your semantic data model. Worst because literally nothing is optimized in Nostr. Best because it is the think that actually makes this easy for implementers.

Reply to this note

Please Login to reply.

Discussion

If you could start from scratch, how would you do it without JSONs? Let’s have a thought experiment.

It's hard to say because I don't think other technologies could have come this far. I would have kept things in binary for the base signing protocol with a similar structure to what Verifiable Credentials use for serialization-independent signing (nquads and such). Then the actual transfer of information could happen in any protocol implementers want (JSON, JSON-LD, Protobuf, XML, turtle, etc). That would have freed up several concepts in the early days, but I am not sure it would have catch on like it did with Nostr.

Thanks for sharing. That sounds like a clever plan… ingenious to separate signing from serialization so all notes can use any format.

Ignoring clearly better routes like this for the sake of not fragmenting the space is foolish this early on. If there were millions of people using #Nostr, I’d agree that it is too late. That’s not the case though! We still have time before that happens.