While very informative and interesting, I don&#x27;t think your comment really engages with my point. I never mentioned Erlang or functional programming. I&#x27;m just talking about data serialization. Namely, that sending JSON or XML over the air isn&#x27;t &quot;totally crazy&quot;.<p>Again, the vast majority of mobile data isn&#x27;t JSON or XML. If mobile bandwidth was a Californian drought, video would be alfalfa farming. JSON would be taking a long shower: maybe you feel a little bad, but it doesn&#x27;t matter. All the short showers in the world can&#x27;t make up for the huge volume of water (bandwidth) used by alfalfa (video).<p>Obviously, if you have a <i>billion</i> users, trade-offs change and it can make sense to use esoteric or bespoke protocols. But even for Facebook, using JSON isn&#x27;t <i>crazy</i>. It&#x27;s just inefficient. And Facebook didn&#x27;t switch to FlatBuffers for the bandwidth savings. Their primary goal was to improve loading times for their local cache. Had FlatBuffers required 10% more network traffic than JSON, they likely still would have made the switch.