|
|
Log in / Subscribe / Register

Useability is not good

Useability is not good

Posted Dec 18, 2025 16:03 UTC (Thu) by NYKevin (subscriber, #129325)
In reply to: Useability is not good by mbunkus
Parent article: Conill: Rethinking sudo with object capabilities

It frustrates me that nobody seems to know that textproto exists. That's the text serialization format of protocol buffers.[1] In general, it has the following advantages:

* Bindings for quite a few major languages.
* No semantic type ambiguities (schemas are mandatory, so the type of every field is known in advance). This is also used to propagate static type information into the language bindings (by generating per-schema serialization code).
* Few/no syntactic type ambiguities (strings are quoted, floats have decimal points or an "f" suffix, etc.).
* Comments are supported.
* Losslessly (and easily) converts into a binary format for efficient on-wire representation.
* Supports a JSON-like syntax, which should feel familiar to most people.

Disadvantages:

* Not opinionated enough. Several things can be spelled in multiple ways, and these spellings can be freely mixed.
* Quite a few bits of the linked spec say things like "depending on the implementation...," although this is mostly confined to edge cases where you write something silly and the implementation has to guess what you mean.
* Many enterprisey features that are not required for simple use cases. Expect to see "com.google" etc. show up a lot.
* Similar to TOML, it has support in several languages, but not in every language under the sun (contrast with JSON).
* If your build system is... less than ideal, then you probably think that generating code is scary and problematic. As you might expect, it works fine under Bazel, because that's how Google uses it internally.

Disclaimer: I'm a Google engineer, and Google invented protobufs.

[1]: https://protobuf.dev/reference/protobuf/textformat-spec/


to post comments

Useability is not good

Posted Dec 19, 2025 10:26 UTC (Fri) by mbunkus (subscriber, #87248) [Link]

You're spot-on that I did not know about textproto until now. Thanks for mentioning it. It definitely looks interesting & I'll take a serious look at it.


Copyright © 2026, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds