]> Kevux Git Server - kevux.org-website/commitdiff
Update: News - 2024 / 06 / 14 - A Living Standard is a Dead Standard.
authorKevin Day <Kevin@kevux.org>
Sat, 15 Jun 2024 00:25:03 +0000 (19:25 -0500)
committerKevin Day <Kevin@kevux.org>
Sat, 15 Jun 2024 00:25:03 +0000 (19:25 -0500)
news.html
news/2024.html
news/2024/2024_05_25-fll_0_6_10_release.html
news/2024/2024_06_14-living_standard_dead.html [new file with mode: 0644]

index f98629f074774a4424db720972cd773001a11283..c1b629700a341be1cd5566779f33458b387e6e39 100644 (file)
--- a/news.html
+++ b/news.html
       <div id="nav-expanded" class="nav-block">
         <nav id="kevux-document-nav" class="nav-menu">
           <div class="nav-item block">
+            <div class="nav-text notice">2024 / 06 / 14</div>
+            <a href="news/2024/2024_06_14-living_standard_dead.html" class="nav-text link">A Living Standard is a Dead Standard</a>
+          </div>
+          <div class="nav-item block">
             <div class="nav-text notice">2024 / 05 / 25</div>
             <a href="news/2024/2024_05_25-fll_0_6_10_release.html" class="nav-text link">FLL 0.6.10 Release</a>
           </div>
             <h1 class="section-title h h1">News</h1>
           </header>
 
-          <article id="2024_05_25-fll_0_6_10_release" class="article">
+          <article id="2024_06_14-living_standard_dead" class="article">
             <header class="article-header header">
+              <h2 id="2024_06_14-living_standard_dead" class="article-title h h2">2024 / 06 / 14 - A Living Standard is a Dead Standard</h2>
+            </header>
+
+            <div class="article-content">
+              <p class="p">
+                I like to encourage following a standard while simultaneously being free to not follow a standard.
+                At least so long as one doesn't claim to follow the standard when they don't actual follow that standard.
+                This article is about my personal opinions on a "<em class="em">Living Standard</em>".
+                The <a href="https://html.spec.whatwg.org/multipage/" class="link external"><abbr title="Hyper Text Markup Language 5">HTML5</abbr> standard</a> is used throughout this article as an example of a "<em class="em">Living Standard</em>".
+              </p>
+              <p class="p">
+                Once upon a time there were reasonably smart people who made the <abbr title="Hyper Text Markup Language">HTML</abbr> language.
+                The browser wars happened and long story short the world ended up with <abbr title="Hyper Text Markup Language 5">HTML5</abbr>.
+                The latest iteration of the <abbr title="Hyper Text Markup Language">HTML</abbr> standard, <abbr title="Hyper Text Markup Language 5">HTML5</abbr>, has been a big improvement in overall but the ball has also been dropped in several ways.
+                The solution chosen to fix the adoption and compliance problems has been to make the <abbr title="Hyper Text Markup Language 5">HTML5</abbr> specification a "<em class="em">Living Standard</em>".
+              </p>
+              <p class="p">
+                As a "<em class="em">Living Standard</em>", there no longer is an honest way to know if some software is in compliance.
+                If a standard may change at any point in time, then how can a "<em class="em">Living Standard</em>" be truly called a standard?
+                On Tuesday some software might be in compliance, on Wednesday some software might cease to be in compliance, and then on Thursday some software might be in compliance again.
+                Whether or not such a sudden, and perhaps extereme, would happen is not the concern.
+                Instead, the concern is is that a "<em class="em">Living Standard</em>" allows for this kind of behavior.
+                A "<em class="em">Living Standard</em>", for all intents and purposes, is a dead standard.
+              </p>
+              <p class="p">
+                <a id="2024_06_14-living_standard_dead-more" href="news/2024/2024_06_14-living_standard_dead.html" class="content link" aria-labelledby="2024_06_14-living_standard_dead-more 2024_06_14-living_standard_dead-title">Continue reading…</a>
+              </p>
+            </div>
+          </article>
+
+          <article id="2024_05_25-fll_0_6_10_release" class="article">
+            <header class="article-header header separate">
               <h2 id="2024_05_25-fll_0_6_10_release-title" class="article-title h h2">2024 / 05 / 25 - FLL 0.6.10 Release</h2>
             </header>
 
index 05475d556d9ac2919fabdab18f64a9586e191f07..9d2a8c6718e55011bc1bf8427d71ddfc2b1d99f9 100644 (file)
             <a href="news.html" class="nav-text link back">Back</a>
           </div>
           <div class="nav-item block">
+            <div class="nav-text notice">2024 / 06 / 14</div>
+            <a href="news/2024/2024_06_14-living_standard_dead.html" class="nav-text link">A Living Standard is a Dead Standard</a>
+          </div>
+          <div class="nav-item block">
             <div class="nav-text notice">2024 / 05 / 25</div>
             <a href="news/2024/2024_05_25-fll_0_6_10_release.html" class="nav-text link">FLL 0.6.10 Release</a>
           </div>
             <h1 class="section-title h h1">Year 2024 News</h1>
           </header>
 
-          <article id="2024_05_25-fll_0_6_10_release" class="article">
+          <article id="2024_06_14-living_standard_dead" class="article">
             <header class="article-header header">
+              <h2 id="2024_06_14-living_standard_dead" class="article-title h h2">2024 / 06 / 14 - A Living Standard is a Dead Standard</h2>
+            </header>
+
+            <div class="article-content">
+              <p class="p">
+                I like to encourage following a standard while simultaneously being free to not follow a standard.
+                At least so long as one doesn't claim to follow the standard when they don't actual follow that standard.
+                This article is about my personal opinions on a "<em class="em">Living Standard</em>".
+                The <a href="https://html.spec.whatwg.org/multipage/" class="link external"><abbr title="Hyper Text Markup Language 5">HTML5</abbr> standard</a> is used throughout this article as an example of a "<em class="em">Living Standard</em>".
+              </p>
+              <p class="p">
+                Once upon a time there were reasonably smart people who made the <abbr title="Hyper Text Markup Language">HTML</abbr> language.
+                The browser wars happened and long story short the world ended up with <abbr title="Hyper Text Markup Language 5">HTML5</abbr>.
+                The latest iteration of the <abbr title="Hyper Text Markup Language">HTML</abbr> standard, <abbr title="Hyper Text Markup Language 5">HTML5</abbr>, has been a big improvement in overall but the ball has also been dropped in several ways.
+                The solution chosen to fix the adoption and compliance problems has been to make the <abbr title="Hyper Text Markup Language 5">HTML5</abbr> specification a "<em class="em">Living Standard</em>".
+              </p>
+              <p class="p">
+                As a "<em class="em">Living Standard</em>", there no longer is an honest way to know if some software is in compliance.
+                If a standard may change at any point in time, then how can a "<em class="em">Living Standard</em>" be truly called a standard?
+                On Tuesday some software might be in compliance, on Wednesday some software might cease to be in compliance, and then on Thursday some software might be in compliance again.
+                Whether or not such a sudden, and perhaps extereme, would happen is not the concern.
+                Instead, the concern is is that a "<em class="em">Living Standard</em>" allows for this kind of behavior.
+                A "<em class="em">Living Standard</em>", for all intents and purposes, is a dead standard.
+              </p>
+              <p class="p">
+                <a id="2024_06_14-living_standard_dead-more" href="news/2024/2024_06_14-living_standard_dead.html" class="content link" aria-labelledby="2024_06_14-living_standard_dead-more 2024_06_14-living_standard_dead-title">Continue reading…</a>
+              </p>
+            </div>
+          </article>
+
+          <article id="2024_05_25-fll_0_6_10_release" class="article">
+            <header class="article-header header separate">
               <h2 id="2024_05_25-fll_0_6_10_release-title" class="article-title h h2">2024 / 05 / 25 - FLL 0.6.10 Release</h2>
             </header>
 
index 06964cb54188479760cf85001bd71445dd4804ee..22984093daa2eb8d5b106e5f817a2aaf0e2ab1b4 100644 (file)
@@ -28,6 +28,7 @@
     <link type="image/x-icon" rel="shortcut" href="images/kevux.ico">
     <link type="text/html" rel="license" href="licenses.html">
     <link type="text/html" rel="prev" href="news/2024/2024_03_03-fll_0_6_10.html">
+    <link type="text/html" rel="next" href="news/2024/2024_06_14-living_standard_dead.html">
   </head>
 
   <body id="kevux" class="kevux no-js news">
diff --git a/news/2024/2024_06_14-living_standard_dead.html b/news/2024/2024_06_14-living_standard_dead.html
new file mode 100644 (file)
index 0000000..2ce55e3
--- /dev/null
@@ -0,0 +1,240 @@
+<!DOCTYPE html>
+<html lang="en">
+  <head>
+    <title>News - 2024/06/14 - A Living Standard is a Dead Standard</title>
+
+    <base href="../../">
+
+    <meta charset="UTF-8">
+    <meta name="author" content="Kevin Day">
+    <meta name="description" content="News post on 2024/06/14.">
+    <meta name="keywords" content="Kevin Day, Kevux, FLL, Featureless, Linux, Library, Distribution, Open-Source, News, 2024">
+    <meta name="viewport" content="width=device-width, initial-scale=1.0">
+
+    <link type="text/css" rel="stylesheet" media="all" href="css/kevux.css">
+    <link type="text/css" rel="stylesheet" media="only screen" href="css/kevux-screen.css">
+    <link type="text/css" rel="stylesheet" media="only screen and (min-device-width:501px)" href="css/kevux-screen-desktop.css">
+    <link type="text/css" rel="stylesheet" media="only screen and (max-device-width:500px)" href="css/kevux-screen-mobile.css">
+    <link type="text/css" rel="stylesheet" media="only screen and (min-device-width:1201px)" href="css/kevux-screen-large.css">
+    <link type="text/css" rel="stylesheet" media="only screen and (min-device-width:501px) and (max-device-width:1200px)" href="css/kevux-screen-normal.css">
+    <link type="text/css" rel="stylesheet" media="only screen and (min-device-width:251px) and (max-device-width:500px)" href="css/kevux-screen-small.css">
+    <link type="text/css" rel="stylesheet" media="only screen and (max-device-width:250px)" href="css/kevux-screen-tiny.css">
+    <link type="text/css" rel="stylesheet" media="only print" href="css/kevux-print.css">
+    <link type="text/css" rel="stylesheet" media="only print and (orientation:landscape)" href="css/kevux-print-landscape.css">
+    <link type="text/css" rel="stylesheet" media="only print and (orientation:portrait)" href="css/kevux-print-portrait.css">
+
+    <link rel="canonical" href="news/2024/2024_06_14-living_standard_dead.html">
+    <link type="image/x-icon" rel="icon" href="images/kevux.ico">
+    <link type="image/x-icon" rel="shortcut" href="images/kevux.ico">
+    <link type="text/html" rel="license" href="licenses.html">
+    <link type="text/html" rel="prev" href="news/2024/2024_05_25-fll_0_6_10_release.html">
+  </head>
+
+  <body id="kevux" class="kevux no-js news">
+    <div role="banner" class="header-block">
+      <header class="header-section header">
+        <div class="header-site">Kevux Systems and Software</div>
+      </header>
+
+      <div class="nav-block">
+        <nav id="kevux-site-nav" class="nav-menu">
+          <div class="nav-item active"><a href="news.html" class="nav-text link">News</a></div>
+          <div class="nav-item"><a href="distributions.html" class="nav-text link">Distributions</a></div>
+          <div class="nav-item"><a href="fll.html" class="nav-text link">FLL</a></div>
+          <div class="nav-item"><a href="projects.html" class="nav-text link">Projects</a></div>
+          <div class="nav-item"><a href="documentation.html" class="nav-text link">Documentation</a></div>
+        </nav>
+      </div>
+    </div>
+
+    <div class="content-block">
+      <div id="nav-expanded" class="nav-block">
+        <nav id="kevux-document-nav" class="nav-menu">
+          <div class="nav-item block back">
+            <a href="news/2024.html" class="nav-text link back">Back</a>
+          </div>
+          <div class="nav-item block highlight unlink">
+            <div class="nav-text notice">2024 / 06 / 14</div>
+            <div class="nav-text unlink">A Living Standard is a Dead Standard</div>
+          </div>
+          <div class="nav-item block ellipses">
+            <a href="news/2024/2024_06_14-living_standard_dead.html#nav-expanded" class="nav-text link open" title="Expand Menu">…</a>
+            <a href="news/2024/2024_06_14-living_standard_dead.html" class="nav-text link close">Collapse Menu</a>
+          </div>
+        </nav>
+      </div>
+
+      <div role="document" class="main-block">
+        <main class="main">
+          <header class="section-header header">
+            <h1 class="section-title h h1">2024 / 06 / 14 - A Living Standard is a Dead Standard</h1>
+          </header>
+
+          <div class="section-content">
+            <p class="p">
+              I like to encourage following a standard while simultaneously being free to not follow a standard.
+              At least so long as one doesn't claim to follow the standard when they don't actual follow that standard.
+              This article is about my personal opinions on a "<em class="em">Living Standard</em>".
+              The <a href="https://html.spec.whatwg.org/multipage/" class="link external"><abbr title="Hyper Text Markup Language 5">HTML5</abbr> standard</a> is used throughout this article as an example of a "<em class="em">Living Standard</em>".
+            </p>
+            <p class="p">
+              Once upon a time there were reasonably smart people who made the <abbr title="Hyper Text Markup Language">HTML</abbr> language.
+              The browser wars happened and long story short the world ended up with <abbr title="Hyper Text Markup Language 5">HTML5</abbr>.
+              The latest iteration of the <abbr title="Hyper Text Markup Language">HTML</abbr> standard, <abbr title="Hyper Text Markup Language 5">HTML5</abbr>, has been a big improvement in overall but the ball has also been dropped in several ways.
+              The solution chosen to fix the adoption and compliance problems has been to make the <abbr title="Hyper Text Markup Language 5">HTML5</abbr> specification a "<em class="em">Living Standard</em>".
+            </p>
+            <p class="p">
+              As a "<em class="em">Living Standard</em>", there no longer is an honest way to know if some software is in compliance.
+              If a standard may change at any point in time, then how can a "<em class="em">Living Standard</em>" be truly called a standard?
+              On Tuesday some software might be in compliance, on Wednesday some software might cease to be in compliance, and then on Thursday some software might be in compliance again.
+              Whether or not such a sudden, and perhaps extereme, would happen is not the concern.
+              Instead, the concern is is that a "<em class="em">Living Standard</em>" allows for this kind of behavior.
+              A "<em class="em">Living Standard</em>", for all intents and purposes, is a dead standard.
+            </p>
+          </div>
+
+          <section id="not_real_standard" class="section">
+            <header class="section-header header separate">
+              <h2 class="section-title h h2">Not a Real Standard</h2>
+            </header>
+
+            <div class="section-content">
+              <p class="p">
+                A "<em class="em">Living Standard</em>" is not a real standard.
+                Sure, a "<em class="em">Living Standard</em>" might be written and may even be highly referenced and used.
+                But the reality is that the moment the standard changes, that standard is no longer be followed.
+                This can cause the situation where every software out there uses a different standard that is referenced by the same name.
+                This, in effect, means that a "<em class="em">Living Standard</em>" is a farce or is a guise of a real standard.
+              </p>
+              <p class="p">
+                The current situation with <abbr title="Hyper Text Markup Language 5">HTML5</abbr> is one where most of the world does not follow the <abbr title="Hyper Text Markup Language 5">HTML5</abbr> standard but despite this claim that they are.
+                If the presence of bugs or mistakes are set aside, then anything honestly claiming to follow some standard should actually follow that standard to the degree in which is claimed.
+                This is not referring to features or other functionality provided in addition to following the standard.
+                This is a moral or an ethical issue and not a technical issue.
+              </p>
+              <p class="p">
+                The <abbr title="Hyper Text Markup Language">HTML</abbr> as a "<em class="em">Living Standard</em>" is the result of incompetence or dishonest intentions by those with direct influence of the <abbr title="Hyper Text Markup Language">HTML</abbr> standard.
+                As to the incompetence, there is likely a major failure to understand the actual problems.
+                The <abbr title="Hyper Text Markup Language">HTML</abbr> suffers from problems such as lacking <a href="fll/specifications.html#completeness_theorem" class="link">completeness</a>, not being well written in many ways, and not strictly being followed in truth.
+                The use of a "<em class="em">Living Standard</em>" actually embraces these problems rather than providing solutions for them.
+                The end result of this situation has led to the rise of many work-arounds to the problems through complex solutions such as <strong class="strong">JavaScript</strong>, <strong class="strong">TypeScript</strong>, <strong class="strong">React</strong>, <strong class="strong">Angular</strong>, and so on.
+              </p>
+            </div>
+          </section>
+
+          <section id="provide_real_standard" class="section">
+            <header class="section-header header separate">
+              <h2 class="section-title h h2">Providing a Real Standard</h2>
+            </header>
+
+            <div class="section-content">
+              <p class="p">
+                A major part of providing a proper, real, standard is understanding the concept of "<em class="em">a separation of concerns</em>".
+                A standard should be written within a certain scope of its purpose and not beyond that.
+                A standard should also be open-ended to allow for additions that do not result in altering or violating the standard.
+                For example, a specification involving a container format (such as a <code class="code">tar</code>) should only focus on "<em class="em">containing</em>".
+                Having <code class="code">tar</code> support taking pictures with a camera would just be out of scope.
+                Additional functionality, such as adding encryption to <code class="code">tar</code>, should be written as a separate standard in addition to the.
+              </p>
+              <p class="p">
+                The specifications defined by the <a href="fll/specifications.html" class="link">Featureless Linux Library</a> provide an example of both <a href="fll/specifications.html#completeness_theorem" class="link">completeness</a> and open-endedness.
+                The <a href="fll/specifications/fss/fss-0005.html" class="link"> FSS-0005 (Somewhat Basic List)</a> standard provides the syntax on how to read and process text.
+                This text itself is not defined and there is no taxonomy on what the terms can be used.
+                This scope of the <a href="fll/specifications/fss/fss-0005.html" class="link"> FSS-0005 (Somewhat Basic List)</a> standard is that of the structure of text.
+                The open-endedness of the <a href="fll/specifications/fss/fss-0005.html" class="link"> FSS-0005 (Somewhat Basic List)</a> standard is that any taxonomy may be used because the standard does not define this.
+                The <a href="documentation/fake/specifications/fakefile.html" class="link">Featurless Make Fakefile</a> standard is then able to take the <a href="fll/specifications/fss/fss-0005.html" class="link"> FSS-0005 (Somewhat Basic List)</a> standard and extend it by defining a taxonomy.
+                This results in a child standard that does not violate the parent standard.
+                Anything that supports reading the <a href="fll/specifications/fss/fss-0005.html" class="link"> FSS-0005 (Somewhat Basic List)</a> standard can read the <a href="documentation/fake/specifications/fakefile.html" class="link">Featurless Make Fakefile</a> standard without every needing to know or understand the <a href="documentation/fake/specifications/fakefile.html" class="link">Featurless Make Fakefile</a> standard.
+              </p>
+              <p class="p">
+                A consistent, defined, and meaningful language is another major problem that a real standard must solve.
+                The multi-lingual situation of the world complicates this but providing definitions greatly helps.
+                The use of "<em class="em">buzz words</em>" and other out of context uses of a word or phrase is a major problem in this regard.
+                Take the term "<em class="em">side-effect</em>", for example.
+                A side effect is essentially an effect in addition to the original intended effect.
+                This term has been vastly misused in the software programming field to inappropriately refer to a function making changes to state outside of that function.
+                If a function's main effect is to change state outside of that functions scope, then the software programming field commonly wants to call this main effect, a "<em class="em">side-effect</em>".
+                This nonsensical and moronic use of the term "<em class="em">side-effect</em>" will lead to hard to follow and hard to understand standards.
+                Such incorrect use of language should be avoided, even if the incorrect usage is popularized.
+              </p>
+              <p class="p">
+                The purpose of a standard is often ultimately communication, consistency, exchanging, interchanging, or storing.
+                Methods of exchanging or interchanging data is actually a form of communication when it comes to software technology.
+                All ends of the software communication must speak the same language, or standard, to be completely successful.
+                This means that there must be no restrictions on the ability to communicate and understand a standard.
+              </p>
+              <p class="p">
+                Thinking that a single standard must be used is a mistake that commonly plagues our current day society.
+                There can be as many standards as possible so long as all ends of the communication speak the same language.
+                The situation does become more complicated when there are too many standards to select from, but this is a lesser problem when compared to mistake of the <em class="em">one standard to rule them all</em> concept.
+                Building the standard to allow for free-form deviations will enhance the standards usability.
+                This especially means that real standards must be free and open.
+              </p>
+              <p class="p">
+                A "<em class="em">Living Standard</em>" makes it easy to not follow that standard while claiming that the standard is being folloed.
+                The extent to which a standard is being followed should be clearly defined.
+                The word "<em class="em">web</em>" is commonly ambiguously used for standards like <abbr title="Hyper Text Markup Language">HTML</abbr>.
+                The usage of "<em class="em">web</em>" does not clearly define what standard is being followed.
+                This results in people not having everything they need to make sound decisions on what to use and where.
+                This problem commonly plagues the Internet where many people blame the website developers, or owners, for problems caused by the software being used by the people who are complaining that is actually a problem where both parties are not following the same standard despite that standard having the same name.
+                The "<em class="em">web</em>", after all, is not a standard.
+                This is a form of misunderstanding, or perhaps false advertising, via the abuse of "<em class="em">buzz words</em>".
+                The use of "<em class="em">buzz words</em>" is cultural problem and a standard cannot solve a cultural problem.
+                The people in the culture must solve the cultural problem.
+                By providing a clear definition of what the standard being followed is and to what extent it is being followed, then the user or the user's tools can make better decisions on how to handle the situation.
+                A real standard must not only be free to follow or deviate from, but must the standard being followed must be freely communicated.
+              </p>
+            </div>
+          </section>
+
+          <section id="standards_driven_development" class="section">
+            <header class="section-header header separate">
+              <h2 class="section-title h h2">Standards Driven Development</h2>
+            </header>
+
+            <div class="section-content">
+              <p class="p">
+                The software development practice of writing a standard and building software to function around that standard is a practice that I have pioneered as <strong class="strong">Standards Driven Development</strong>.
+                The Kevux projects and the <a href="fll/specifications.html" class="link">Featureless Linux Library</a> project are just some of the projects that I practice this software development strategy.
+                The <strong class="strong">Standards Driven Development</strong> process relies on determine the scope, intent, purpose, and depth of some standard.
+                This is unlike a "<em class="em">Living Standard</em>" which does not rely on any scope, depth, or planning.
+                A "<em class="em">Living Standard</em>" embraces the "<em class="em">figure it out as you go</em>" concept.
+              </p>
+              <p class="p">
+                <strong class="strong">Standards Driven Development</strong> does not work well with a "<em class="em">Living Standard</em>".
+                Software development using a "<em class="em">Living Standard</em>" results in non-compliant software and possibly non-functional software because the standard is free to change at any point in time.
+                If, however, the standard is clearly versioned through any means, then any software that is developed to follow that version will work as expected, bugs aside.
+                This results in easier to maintain code with a clear stable development track and less potential security issues due to unexpected or undefined behavior that could result from a changing standard.
+                For <strong class="strong">Standards Driven Development</strong>, the deliverables of a project may be clearly defined and understood.
+                The documentation for projects may be more accurate.
+                Breaking changes can be more easily avoided.
+                Software projects will also be more long term maintainable and more usable in archival, backup, and data recovery purposes when following <strong class="strong">Standards Driven Development</strong>.
+              </p>
+              <p class="p">
+                If and when a standard needs to be changed, then the software project developers can find the version that they want to support and then develop against that specific version of the standard.
+                Dealing with users of the software can potentially also be easier in regards to users questioning what is or is not supported.
+                A standard can always be clearly referenced and users will have more opportunities to know and understand what to expect and what not to expect with some software.
+              </p>
+              <p class="p">
+                A "<em class="em">Living Standard</em>", on the other hand, has a short life span.
+                Users will never know if the software project is or is not supposed to provide some functionality.
+                Debugging and maintaining a project following a "<em class="em">Living Standard</em>" is abysmal.
+                A project could be completely unusable after an update because of the changes to a "<em class="em">Living Standard</em>".
+                This would result in "<em class="em">Duct-Tape Programming</em>", which is essentially a bunch of work-around of work-arounds due to not being able to follow a now dead standard.
+              </p>
+              <p class="p">
+                A "<em class="em">Living Standard</em>" has a short finite life span and is ultimately dead on arrival.
+              </p>
+            </div>
+          </section>
+
+          <div class="section-content">
+            <p class="p">
+              <strong class="strong">Kevin Day</strong>
+            </p>
+          </div>
+        </main>
+      </div>
+    </div>
+  </body>
+</html>