|There's more than one way to do things|
But is not worth to mention also Sereal ?
Never used it. I stumbled over Sereal some time ago, then forgot it, because I did not need it. It looks quite promising, and has similarities to various other binary formats (like BSON, BJSON, MessagePack).
All of those formats promise compact data storage and easy parsing. But you lose one big advantage of text-base file formats: You can not simply read them using less, your favorite web browser, or your favorite text editor. You need a converter and/or a special viewer.
If storage size or data transfer volume is an issue, the text-based formats can usually be compressed quite well, resulting in sizes similar to binary formats.
As usual, Wikipedia has a big list, containing both binary and text-based formats: https://en.wikipedia.org/wiki/Comparison_of_data_serialization_formats
Today I will gladly share my knowledge and experience, for there are no sweeter words than "I told you so". ;-)