Plain Text Protocols
HTTP&#x2F;2 is a good example of how to handle textual-to-binary transition.<p>The original HTTP&#x2F;1 was textual (if a bit convoluted), and that helped it to become a lingua franca; helped cooperation and data interchange between applications proliferate; everybody was able to proverbially &quot;scratch his itch&quot;. Gradually tooling grew up around it too.<p>The HTTP&#x2F;2 is binary, and also quite complex - however most of that is hidden behind the already established tooling, and from developer&#x27;s perspective, the protocol is seen as &quot;improved HTTP&#x2F;1 with optional extras&quot;. The protocol <i>appears</i> textual for all developmental intents and purposes - because the transition was handled (mostly) smoothly in the tooling. The key APIs remained the same for quick, mundane use cases - and got extended for advanced use cases.<p>There&#x27;s a lesson in that having been a success. Unpopular opinion warning: contrast the success of HTTP&#x2F;2 with the failure of IPv6 to maintain backward compatibility at the <i>API</i> level - which hampered its ability to be seamlessly employed in applications.