So, if I understand correctly, Matrix's serialization is such a mess because of its history synchronization?

I get not keeping message blobs around (easiest way to send things portably) because lol storage, but instead solving the issue of recreating messages by standardizing yet another version of JSON to guarantee the ordering...

Couldn't you just keep a map of ordinal numbers to fields in the object and use that instead to guide signature verification?

That'd require much less code.

Or I guess ordinal to path, if you decided to have yet more layers of embedded objects instead of one flat layer.

Show thread

Why do I consider requiring less code/logic a positive?

Less opportunity for errors to sneak in.

Show thread

@lispi314

> less code/logic a positive

Less code is very positive, also for other reasons than errors sneaking in: simplicity is needed to allow anyone to understand and work with the code at all.

Taking it to the extreme for the sake of argument: if code gets infinitely complicated, then we lose the whole point of having access to the source code, because we cannot do anything with the source code as we cannot understand it.

Making things complicated means undermining software freedom.

@eliasr Quite.

There's a minimum of complexity required for some things (such as systemic simplicity, something lost on suckless for instance), but complexity for its own sake is bad.

Of course things being simpler and less complicated also tends to lend itself to requiring less effort (at least once the work of coming up with a constructive simplicity has already been done), which is always nice.

@lispi314 yes!

Then there is also the aspect of where power lies: a simple tool can be useful for everyone, including individuals, also individuals who are not experts.

Making the previously simple tool more complicated means that it is no longer useful for individuals, moving towards a scenario where only a large organization can really benefit from it.

1/2

Follow

@lispi314

In this way, large companies have an incentive to make things complicated, because in that way they are moving power away from individuals, to those companies. "Open source" does not protect us from this threat.

If our interest is the public good, then we should strive for simplicity and we should not expect huge companies to lead the way because it is not in their interest.

2/2

Sign in to participate in the conversation
Librem Social

Librem Social is an opt-in public network. Messages are shared under Creative Commons BY-SA 4.0 license terms. Policy.

Stay safe. Please abide by our code of conduct.

(Source code)

image/svg+xml Librem Chat image/svg+xml