logo

blog

My website can't be that messy, right? git clone https://anongit.hacktivis.me/git/blog.git/

standards.shtml (4282B)


  1. <!DOCTYPE html>
  2. <html xmlns="http://www.w3.org/1999/xhtml" lang="en">
  3. <head>
  4. <!--#include file="/templates/head.shtml" -->
  5. <title>Standards — Cyber-home of lanodan</title>
  6. </head>
  7. <body>
  8. <!--#include file="/templates/en/nav.shtml" -->
  9. <main>
  10. <h1>Standards and/or Implementations</h1>
  11. <p>This is a very opiniated list about standards and/or implementations, feel free to ask some questions if you're curious but of course no flaming/evangelism.</p>
  12. <h2>The good ones</h2>
  13. <p>The ones that are well made and either have been battle-tested or will surely pass it.</p>
  14. <dl>
  15. <dt>DateTime</dt><dd>ISO 8601, consider RFC 3339 if you need a subset of it.</dd>
  16. <dt>Text Encoding</dt><dd>UTF-8, ASCII</dd>
  17. <dt>Transport</dt><dd>SSH, HTTP/0.9 &amp; HTTP/1.0, TCP/IPv6, BitTorrent, 9p</dd>
  18. <dt>Texts documents</dt><dd>plain text in UTF-8, <a href="https://mandoc.bsd.lv/">mdoc</a>, XHTML5 (with ignoring the living standard and mostly sticking to <a href="http://w3.org/tr/html4/">HTML4</a>), EPUB</dd>
  19. <dt>Images</dt><dd>PNG (logo, cartoons, …), JPEG (scans, photos, …), T(ar)GA</dd>
  20. <dt>Audio format</dt><dd>Opus, Vorbis, <abbr title="Free Lossless Audio COding">FLAC</abbr>, <a href="/git/cross-unix-documentation.mdoc/man5x/au.5x.html">AU aka <code>".snd"</code></a></dd>
  21. <dt>Audio API</dt><dd>SunAudio, <a href="http://www.sndio.org/">sndio</a>, OSSv4</dd>
  22. <dt>Video formats</dt><dd>VP9, Theora</dd>
  23. <dt>Multimedia containers</dt><dd>Matroska(mkv)</dd>
  24. <dt>Subtitles</dt><dd>SRT, ASS</dd>
  25. <dt>Playlists</dt><dd>M3U(8)</dd>
  26. <dt>Compression</dt><dd>lzma, gzip, bzip2</dd>
  27. <dt>Archive</dt><dd>tar (warning: <a href="https://dev.gentoo.org/~mgorny/articles/portability-of-tar-features.html">portability</a>), squashfs</dd>
  28. <dt>Filesystems</dt><dd>ZFS, squashfs</dd>
  29. <dt>Version Control</dt><dd>git, mercurial, CVS</dd>
  30. <dt>Programming languages</dt><dd>ISO C, POSIX Shell, Elixir, Perl5</dd>
  31. <dt>Data serialisation</dt><dd>JSON, XML</dd>
  32. <dt>Instant Messaging</dt><dd>IRC</dd>
  33. </dl>
  34. <h2>The growing ones</h2>
  35. <p>The ones that are well made so far but can't be sure about how they'll do in production or how they'll age.</p>
  36. <dl>
  37. <dt>Programming languages</dt><dd>Hare</dd>
  38. <dt>Video formats</dt><dd>AV1</dd>
  39. <dt>Instant Messaging</dt><dd>ChatMessage through ActivityPub</dd>
  40. <dt>Transport</dt><dd>Datashards</dd>
  41. <dt>Compression</dt><dd>Zstandard(aka zstd)</dd>
  42. </dl>
  43. <h2>The okay ones</h2>
  44. <p>The ones that I'd rather have them abandonned but if it needs a replacement it would have to be careful to not make it worse.</p>
  45. <dl>
  46. <dt>Compression</dt><dd><a href="https://www.nongnu.org/lzip/xz_inadequate.html">XZ</a></dd>
  47. <dt>Transport</dt><dd>NFS, HTTP/2.0</dd>
  48. <dt>Audio formats</dt><dd>AAC</dd>
  49. <dt>Video formats</dt><dd>H.264, H.265</dd>
  50. <dt>Audio API</dt><dd>ALSA, JACK, OSSv3</dd>
  51. <dt>Data serialisation</dt><dd>INI</dd>
  52. <dt>Filesystems</dt><dd>FAT, EXT4, NTFS</dd>
  53. <dt>Instant Messaging</dt><dd>XMPP</dd>
  54. <dt>Programming languages</dt><dd>Go</dd>
  55. </dl>
  56. <h2>The monsters</h2>
  57. <p>The ones that I'd rather have them go away right now, they can't really be made worse, some shouldn't even be replaced.</p>
  58. <dl>
  59. <dt>DateTime</dt><dd>US date format</dd>
  60. <dt>Texts documents</dt><dd>PDF outside of PDF/A and similar subsets, PostScript</dd>
  61. <dt>Programming languages</dt><dd><a href="/articles/Rust%20sucks%20as%20a%20system%20language">Rust</a>, JavaScript, Flash, C#</dd>
  62. <dt>Offline encryption</dt><dd>OpenPGP</dd>
  63. <dt>Audio API</dt><dd>PulseAudio</dd>
  64. <dt>Audio Formats</dt><dd>AIFF, Microsoft WAV(E)</dd>
  65. <dt>Data serialisation</dt><dd>JSON-LD, XML/RPC, YAML</dd>
  66. <dt>Instant Messaging</dt><dd>Matrix</dd>
  67. <dt>Transport</dt><dd>WebRTC (and so WebTorrent), <a href="/articles/HTTP3">HTTP/3</a> and QUIC, HSTS, HPKP</dd>
  68. </dl>
  69. <h2>Related</h2>
  70. <ul>
  71. <li><a href="https://media.ccc.de/v/28c3-4763-en-the_science_of_insecurity">28C3: The Science of Insecurity</a>, or basically why one should avoid context-aware and never touch turing-complete formats</li>
  72. </ul>
  73. </main>
  74. <!--#include file="/templates/en/footer.shtml" -->
  75. </body>
  76. </html>