<story><title>Please stop writing new serialization protocols</title><url>https://scottlocklin.wordpress.com/2017/04/02/please-stop-writing-new-serialization-protocols/</url></story><parent_chain><item><author>jmillikin</author><text>&lt;p&gt;&lt;pre&gt;&lt;code&gt;  &amp;gt; Imagine if there were 40 competing and completely
  &amp;gt; mutually unintelligible versions of html or text encodings
&lt;/code&gt;&lt;/pre&gt;
There are.&lt;p&gt;&lt;pre&gt;&lt;code&gt;  &amp;gt; There really should be a one size fits all minimal
  &amp;gt; serialization protocol
&lt;/code&gt;&lt;/pre&gt;
There can&amp;#x27;t be.&lt;p&gt;&lt;pre&gt;&lt;code&gt;  &amp;gt; just the same way there is a one size fits all network
  &amp;gt; protocol which moves data around the entire internet
&lt;/code&gt;&lt;/pre&gt;
There isn&amp;#x27;t.</text></item></parent_chain><comment><author>simonh</author><text>Every now and then I come across someone who thinks data is like water and we should have standardised &amp;#x27;pipes&amp;#x27; and components for processing and transporting data and converting it between formats like we have pipes and valves for transporting and purifying water.&lt;p&gt;But data isn&amp;#x27;t like water, it&amp;#x27;s like &amp;#x27;chemicals&amp;#x27;. You can&amp;#x27;t have a standard component for processing data the same way you can&amp;#x27;t have a single components that knows how to process sulphuric acid, crude oil, hydrazine, mercury and molten salt.&lt;p&gt;Data can be binary, delimited, fixed field, lossy, ASCII, Many variations of Unicode, executable, contain attack such as SQL injection, encrypted, have time sensitive delivery requirements, include checksums, require checksums to be applied in the protocol, be meaningless without metadata or other data, and have who knows what other constraints, limitations and requirements.&lt;p&gt;Building a data processing system is not at all like building a water works. It&amp;#x27;s more like building a chemicals processing plant.</text></comment>
<story><title>Please stop writing new serialization protocols</title><url>https://scottlocklin.wordpress.com/2017/04/02/please-stop-writing-new-serialization-protocols/</url></story><parent_chain><item><author>jmillikin</author><text>&lt;p&gt;&lt;pre&gt;&lt;code&gt;  &amp;gt; Imagine if there were 40 competing and completely
  &amp;gt; mutually unintelligible versions of html or text encodings
&lt;/code&gt;&lt;/pre&gt;
There are.&lt;p&gt;&lt;pre&gt;&lt;code&gt;  &amp;gt; There really should be a one size fits all minimal
  &amp;gt; serialization protocol
&lt;/code&gt;&lt;/pre&gt;
There can&amp;#x27;t be.&lt;p&gt;&lt;pre&gt;&lt;code&gt;  &amp;gt; just the same way there is a one size fits all network
  &amp;gt; protocol which moves data around the entire internet
&lt;/code&gt;&lt;/pre&gt;
There isn&amp;#x27;t.</text></item></parent_chain><comment><author>trendia</author><text>I suspect the author hasn&amp;#x27;t read The Absolute Minimum ... about Unicode [0] (or why there&amp;#x27;s no such thing as &amp;quot;plain text&amp;quot;)&lt;p&gt;[0] &lt;a href=&quot;https:&amp;#x2F;&amp;#x2F;www.joelonsoftware.com&amp;#x2F;2003&amp;#x2F;10&amp;#x2F;08&amp;#x2F;the-absolute-minimum-every-software-developer-absolutely-positively-must-know-about-unicode-and-character-sets-no-excuses&amp;#x2F;&quot; rel=&quot;nofollow&quot;&gt;https:&amp;#x2F;&amp;#x2F;www.joelonsoftware.com&amp;#x2F;2003&amp;#x2F;10&amp;#x2F;08&amp;#x2F;the-absolute-minim...&lt;/a&gt;</text></comment>