<?xml version="1.0"?>
<?xml-stylesheet href="/transform" type="text/xsl"?>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:bibo="http://purl.org/ontology/bibo/" xmlns:bs="http://purl.org/ontology/bibo/status/" xmlns:ci="https://vocab.methodandstructure.com/content-inventory#" xmlns:dct="http://purl.org/dc/terms/" xmlns:foaf="http://xmlns.com/foaf/0.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:xhv="http://www.w3.org/1999/xhtml/vocab#" xmlns:xsd="http://www.w3.org/2001/XMLSchema#" lang="en" prefix="bibo: http://purl.org/ontology/bibo/ bs: http://purl.org/ontology/bibo/status/ ci: https://vocab.methodandstructure.com/content-inventory# dct: http://purl.org/dc/terms/ foaf: http://xmlns.com/foaf/0.1/ rdf: http://www.w3.org/1999/02/22-rdf-syntax-ns# xhv: http://www.w3.org/1999/xhtml/vocab# xsd: http://www.w3.org/2001/XMLSchema#" vocab="http://www.w3.org/1999/xhtml/vocab#" xml:lang="en">
  <head>
    <title property="dct:title">Working Titles get Random Cryptonyms</title>
    <base href="https://doriantaylor.com/working-titles-get-random-cryptonyms"/>
    <link href="document-stats#EGvnmnmkrn2AZNw5WJ0buL" rev="ci:document"/>
    <link href="elsewhere" rel="alternate bookmark" title="Elsewhere"/>
    <link href="this-site" rel="alternate index" title="This Site"/>
    <link href="http://purl.org/ontology/bibo/status/published" rel="bibo:status"/>
    <link href="" rel="ci:canonical" title="Working Titles get Random Cryptonyms"/>
    <link href="lexicon/#Egc4d-5WzcNE5sHqVIaCpK" rel="dct:audience" title="Designer"/>
    <link href="lexicon/#EzqXIsriaILFcWjXdS7FbI" rel="dct:audience" title="Software Developer"/>
    <link href="person/dorian-taylor#me" rel="dct:creator" title="Dorian Taylor"/>
    <link href="person/dorian-taylor" rel="meta" title="Who I Am"/>
    <link about="./" href="3f36c30c-6096-454a-8a22-c062100ae41f" rel="alternate" type="application/atom+xml"/>
    <link about="./" href="f07f5044-01bc-472d-9079-9b07771b731c" rel="alternate" type="application/atom+xml"/>
    <link about="./" href="this-site" rel="alternate"/>
    <link about="./" href="elsewhere" rel="alternate"/>
    <link about="./" href="e341ca62-0387-4cea-b69a-cdabc7656871" rel="alternate" type="application/atom+xml"/>
    <link about="verso/" href="3f36c30c-6096-454a-8a22-c062100ae41f" rel="alternate" type="application/atom+xml"/>
    <link about="verso/" href="this-site" rel="alternate"/>
    <link about="verso/" href="elsewhere" rel="alternate"/>
    <meta content="working-titles-get-random-cryptonyms" datatype="xsd:token" property="ci:canonical-slug"/>
    <meta content="This is a sketch of an idea for naming projects and other processes and properties within an organization by way of randomly-generated cryptonyms. These cryptonyms serve as intentionally meaningless handles to ultimately decouple projects from products and minimize the psychological implications that meaningful names may evoke." name="description" property="dct:abstract"/>
    <meta content="2009-03-28T15:32:56+00:00" datatype="xsd:dateTime" property="dct:created"/>
    <meta content="working-titles-get-random-cryptonyms" property="dct:identifier"/>
    <meta content="2009-08-14T20:05:42+00:00" datatype="xsd:dateTime" property="dct:issued"/>
    <meta content="2009-03-28T19:45:03+00:00" datatype="xsd:dateTime" property="dct:modified"/>
    <meta content="2009-04-03T20:16:16+00:00" datatype="xsd:dateTime" property="dct:modified"/>
    <meta content="2009-07-31T20:43:50+00:00" datatype="xsd:dateTime" property="dct:modified"/>
    <meta content="2009-08-14T20:07:32+00:00" datatype="xsd:dateTime" property="dct:modified"/>
    <meta content="2009-08-14T20:10:32+00:00" datatype="xsd:dateTime" property="dct:modified"/>
    <meta content="2009-08-14T20:12:48+00:00" datatype="xsd:dateTime" property="dct:modified"/>
    <meta content="2009-08-14T20:13:59+00:00" datatype="xsd:dateTime" property="dct:modified"/>
    <meta content="2009-08-14T20:18:21+00:00" datatype="xsd:dateTime" property="dct:modified"/>
    <meta content="2009-08-15T19:15:11+00:00" datatype="xsd:dateTime" property="dct:modified"/>
    <meta content="2009-08-15T19:24:09+00:00" datatype="xsd:dateTime" property="dct:modified"/>
    <meta content="2009-08-16T18:05:59+00:00" datatype="xsd:dateTime" property="dct:modified"/>
    <meta content="2009-09-23T17:51:34+00:00" datatype="xsd:dateTime" property="dct:modified"/>
    <meta content="2009-09-24T00:59:39+00:00" datatype="xsd:dateTime" property="dct:modified"/>
    <meta content="2011-01-23T07:58:39+00:00" datatype="xsd:dateTime" property="dct:modified"/>
    <meta content="2022-05-31T04:18:52+00:00" datatype="xsd:dateTime" property="dct:modified"/>
    <meta content="2022-05-31T15:10:50+00:00" datatype="xsd:dateTime" property="dct:modified"/>
    <meta content="code name" property="dct:subject"/>
    <meta content="code word" property="dct:subject"/>
    <meta content="cryptonym" property="dct:subject"/>
    <meta content="naming" property="dct:subject"/>
    <meta content="naming convention" property="dct:subject"/>
    <meta content="naming scheme" property="dct:subject"/>
    <meta content="project management" property="dct:subject"/>
    <meta content="project planning" property="dct:subject"/>
    <meta content="steganography" property="dct:subject"/>
    <meta about="person/dorian-taylor#me" content="Dorian Taylor" name="author" property="foaf:name"/>
    <meta content="summary" name="twitter:card"/>
    <meta content="@doriantaylor" name="twitter:site"/>
    <meta content="Working Titles get Random Cryptonyms" name="twitter:title"/>
    <meta content="This is a sketch of an idea for naming projects and other processes and properties within an organization by way of randomly-generated cryptonyms. These cryptonyms serve as intentionally meaningless handles to ultimately decouple projects from products and minimize the psychological implications that meaningful names may evoke." name="twitter:description"/>
    <object>
      <nav>
        <ul>
          <li>
            <a href="key-continuity-for-kindergarteners" rev="dct:references" typeof="bibo:Article">
              <span property="dct:title">Key Continuity for Kindergarteners</span>
            </a>
          </li>
          <li>
            <a href="serendipitous-questionnaire" rev="dct:references" typeof="bibo:Article">
              <span property="dct:title">Serendipitous Questionnaire</span>
            </a>
          </li>
          <li>
            <a href="uuid-vexillology" rev="dct:references" typeof="bibo:Article">
              <span property="dct:title">UUID Vexillology</span>
            </a>
          </li>
          <li>
            <a href="document-stats#EGvnmnmkrn2AZNw5WJ0buL" rev="ci:document" typeof="qb:Observation">
              <span>urn:uuid:1af9e69e-692b-49f6-b019-370e562746ee</span>
            </a>
          </li>
        </ul>
      </nav>
    </object>
  </head>
  <body about="" id="E7gA8dREMubnR7u32fIHqJ" typeof="bibo:Article">
    <p>An important consideration for the cognitive tie between stakeholders and a project is its <em>name</em>. In the software industry, project code names are often chosen for their whimsy and are often part of a series for which the stakeholders have a <span class="parenthesis" title="e.g. Star Trek, Star Wars, The Simpsons, Transformers, Lord of the Rings, comic books, Care Bears, etc.">special affinity</span>. A similar phenomenon occurs in the naming of <acronym title="Information Technology">IT</acronym> <span class="parenthesis" title="Like host names.">system resources</span>.</p>
    <p/>
    <ul>
      <li>Naming is an <a href="http://www.useit.com/papers/filedeath.html" title="Death of File Systems &#x2014; Jakob Nielsen" rel="dct:references">intrinsically difficult task</a> for people to perform.</li>
      <li>The named entity gets elevated to <em>pet</em> status, making it difficult to part with.</li>
      <li>Organizational changes and new employees may introduce new series, yielding a <em>partial</em> consistency which is ultimately confusing.</li>
      <li>Resource-consuming debate over naming arises in democratic or consensus environments.</li>
      <li>Nomenclature may collide across business units; i.e. the same name may refer to different things in different parts of the company.</li>
      <li>The semantics of the entity's name may restrict, hedge or otherwise affect thinking around how it can be used.</li>
      <li>Retroactive renaming is more confusing than just leaving the mess alone.</li>
      <li>Better off creating a controlled mess at the outset than having an uncontrolled mess later on.</li>
    </ul>
    <p>The solution I propose is to extend the technique of code-naming through the use of randomly-generated <a href="http://en.wikipedia.org/wiki/CIA_cryptonym" title="CIA cryptonym &#x2014; Wikipedia" rel="dct:references">cryptonyms</a>. These <span class="parenthesis" title="I'm using the word &quot;cryptonym&quot; rather than &quot;code name&quot; because we typically understand code names to have some sort of meaning and it is important that these do not.">cryptonyms</span> would essentially be nonsense words invented for the exclusive purpose of uniquely identifying an entity. Essentially, I'm suggesting to start code-naming projects stuff like this:</p>
    <table style="width: 100%; text-align: center;" id="EsQ2paDCxL8Vc8S5ujEM6L">
      <tbody>
        <tr>
          <td>Iomuso</td>
          <td>Nouvex</td>
          <td>Ontang</td>
          <td>Ronhev</td>
        </tr>
        <tr>
          <td>Prolomil</td>
          <td>Timpewig</td>
          <td>Tisstod</td>
          <td>Tortane</td>
        </tr>
        <tr>
          <td>Cemara</td>
          <td>Agingo</td>
          <td>Flestin</td>
          <td>Spanbason</td>
        </tr>
      </tbody>
    </table>
    <p>It may look silly, but I suspect Big Pharma and Web 2.0 companies have been doing this for years, for ultimately the same effect: have an unmistakable word that <span class="parenthesis" title="And it helps that the domain name is available!">uniquely identifies your property</span> and <em>doesn't mean anything else</em>. Here is a sketch of what I imagine to be the requirements of the properties of these cryptonyms:</p>
    <dl>
      <dt>Unambiguously pronounceable and writeable in most languages</dt>
      <dd>The phonological and lexical structure of the cryptonyms would be constrained to a reasonable subset, allowing for signal restoration if the word was mispronounced or incorrectly transcribed.</dd>
      <dt>No accidental interpretation</dt>
      <dd>Upon generation, each word would be checked against several dictionaries to ensure that it was gibberish. An issue here occurs with <a href="http://en.wikipedia.org/wiki/Isolating_language" title="Isolating language &#x2014;" rel="dct:references">isolating languages</a>, such as the Chinese langauges, where each syllable is its own word. It is also worth considering the documented psychological relationship between <a href="http://en.wikipedia.org/wiki/Bouba/kiki_effect" title="Bouba/kiki effect &#x2014; Wikipedia" rel="dct:references">sound and form</a>.</dd>
      <dt>No sense of scope or sequence</dt>
      <dd>It is important to not be able to infer that a particular project the fourth attempt at a certain result, or that an object is business-critical or not. As such, cryptonyms should not contain any pattern or component that classifies them. <a href="http://en.wikipedia.org/wiki/CIA_cryptonym" title="CIA cryptonym &#x2014; Wikipedia" rel="dct:references">Contrast the <acronym title="Central Intelligence Agency">CIA</acronym></a>, which used a two-character namespace prefix on its operation code names to indicate to some extent what they were about.</dd>
      <dt>Enough entropy to satisfy decades of operation</dt>
      <dd>16 bits of entropy (65536 combinations) would be well enough for most organizations. 32 bits (4294967296 combinations) would satisfy Microsoft for four centuries if every one of its employees were to start a new project every week. The length of the symbol could also contribute toward its entropy.</dd>
    </dl>
    <p>In practice, I have begun using a random pronounceable password generator and cherrypicking the results. I wrote a <a href="file/randpass.pl" title="randpass" rel="dct:references">trivial program</a> that uses <a href="http://www.clkao.org/" title="clkao" rel="dct:references">Chia-Liang Kao's</a> Perl module <a href="http://search.cpan.org/perldoc?Text::Password::Pronounceable" title="Text::Password::Pronounceable - Generate pronounceable passwords - search.cpan.org" rel="dct:references">Text::Password::Pronounceable</a>, which seems to be sufficient for now. I have also begun using <acronym title="Universally Unique Identifier">UUID</acronym>s as temporary identifiers, especially for <acronym title="Uniform Resource Identifier">URI</acronym>s, for which I have yet to <a href="policy/the-uri-naming-conundrum" title="The URI Naming Conundrum" rel="dct:references">decide on a permanent value</a>.</p>
  </body>
</html>
