News for hackers. Stuff that matters.
Re:Son: A minimal subset of JSON for machine-to-machine comm... by foobarian on Sunday December 10, 2017 @01:03PM (#15892571)
So this comes up constantly and I tend to agree with it, but it has always bugged me. We are programmers and we control the machines, so why can't we code our way out of this problem? Why isn't the very first thing one does when working on a protobuf system installing a custom version of utils and tools that deals with the wire format better? E.g. grep, less and wireshark that autoconvert protobuf messages?

(I know there are good reasons for this involving the effort required and maintenance etc. it just bugs me.)

Re:Son: A minimal subset of JSON for machine-to-machine comm... by teddyh on Sunday December 10, 2017 @04:48PM (#15893667)
Because Unix. Unix was designed as using ASCII text as a lowest common format, and all its tooling follows that design, and nothing has displaced this. If, for example, a Lisp system or a Smalltalk system had won out, I am sure we would all now be lamenting the inadequacies of s-expressions or Smalltalk objects instead of complaining about ASCII.
Re:Son: A minimal subset of JSON for machine-to-machine comm... by zbentley on Sunday December 10, 2017 @08:21PM (#15894547)
While the "everything assumes unstructured text; destructure and restructure at will" paradigm is still incredibly powerful, and set the bar super high for data interoperability and uniformity, I think it lowered expectations for [meta]data complexity that could be supported by simple, small programs.

In Windows, PowerShell is a very good example of a low-ish-level (composable commandline apps and snippets) programming environment that isn't shackled by that paradigm.

Re:Son: A minimal subset of JSON for machine-to-machine comm... by skybrian on Sunday December 10, 2017 @04:54PM (#15893692)
To do this right you'd need a common registry with all the proto schemas you'll ever want to use. It's a solvable problem, but it's comparable to setting up a new build ecosystem and getting people to use it. (Consider TypeScript and .d.ts files.)