interoperability(1/1)
Files are loosely coupled interfaces
How does one build an interoperable ecosystem of personal (or communal) applications? Impressed by Linus Lee’s enormous ecosystem, I emailed him with my own questions about underlying data structures. He pointed me to an invaluable article by Gordon Brander, if headers did not exist, it would be necessary to invent them. Linus summarizes: 💬 The basic idea is that documents and entities are key-value pairs, with a few "blessed" keys that are universal and an open space for other keys to become used by specific use cases.…
Unix philosophy
A number of maxims have gained currency among the builders and users of the UNIX system to explain and promote its characteristic style: Make each program do one thing well. To do a new job, build afresh rather than complicate old programs by adding new “features.” Expect the output of every program to become the input to another, as yet unknown, program. Don’t clutter output with extraneous information. Avoid stringently columnar or binary input formats.…