Two examples spring to mind:
One of the reasons that .Net programmers are encouraged to use .config files instead of the Windows Registry is that .config files are XML and therefore human-readable.
Similarly, JSON is sometimes considered human-readable compared with a proprietary format.
Are human-readable formats actually readable by humans? In the example of configuration data:
- The format doesn't change the underlying meaning of the information - in both cases, the data represents the same thing.
- Both registry and .config file are stored internally as a series 0s and 1s. To that extent, the underlying representaion is equally unreadable by humans.
- Both registry and .config file require a tool to read, format and display those 0s and 1s and convert them into a format that humans can read. In the case of configuration stored in the Windows Registry, this is a Registry Editor. In the case of XML it could be a text editor or XML reader. Either way, the tool makes the data readable, not the data format.
So, what is the difference between human-readable data formats and non-human-readable formats?