Designing wire protocols: https://esr.ibiblio.org/?p=8254 Discusses extensibility, bug prone features, and network and CPU overheads in low traffic systems.