<?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">Lowering the Risk of Web Development</title>
    <base href="https://doriantaylor.com/lowering-the-risk-of-web-development"/>
    <link href="document-stats#E0X2Dyvakwgw8K4ip2iDwK" 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="Lowering the Risk of Web Development"/>
    <link href="lexicon/#EgKBzmX3EeQ5uHb5NelbqL" rel="dct:audience" title="Project Manager"/>
    <link href="person/dorian-taylor#me" rel="dct:creator" title="Dorian Taylor"/>
    <link href="//www.amazon.com/dp/0201835959" rel="dct:references"/>
    <link href="https://vocab.methodandstructure.com/ibis" rel="dct:references"/>
    <link href="what-i-do-for-money" rel="dct:references" title="What I Do (For Money)"/>
    <link href="lexicon/#EnewYu-MeZVXNc97q_-jAI" rel="dct:subject" title="Web Development"/>
    <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="lowering-the-risk-of-web-development" datatype="xsd:token" property="ci:canonical-slug"/>
    <meta content="Herein I outline, hopefully for the definitive time, my project to make agency-based Web development less risky for both clients and practitioners, and yield better results." name="description" property="dct:abstract"/>
    <meta content="2014-02-01T08:43:27+00:00" datatype="xsd:dateTime" property="dct:created"/>
    <meta content="lowering-the-risk-of-web-development" property="dct:identifier"/>
    <meta content="2014-02-01T08:43:06+00:00" datatype="xsd:dateTime" property="dct:issued"/>
    <meta content="2014-02-21T15:12:45+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 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="Lowering the Risk of Web Development" name="twitter:title"/>
    <meta content="Herein I outline, hopefully for the definitive time, my project to make agency-based Web development less risky for both clients and practitioners, and yield better results." name="twitter:description"/>
    <object>
      <nav>
        <ul>
          <li>
            <a href="giant-conf-2014-dissolving-the-redesign" rev="dct:references" typeof="bibo:Article">
              <span property="dct:title">GIANT Conf 2014: Dissolving the Redesign</span>
            </a>
          </li>
          <li>
            <a href="the-hundred-year-infrastructure" rev="dct:references" typeof="bibo:Article">
              <span property="dct:title">The Hundred-Year Infrastructure</span>
            </a>
          </li>
          <li>
            <a href="the-value-of-tailored-information-infrastructure" rev="dct:references" typeof="bibo:Article">
              <span property="dct:title">The Value of Tailored Information Infrastructure</span>
            </a>
          </li>
          <li>
            <a href="toward-a-theory-of-design-as-computation" rev="dct:references" typeof="bibo:Article">
              <span property="dct:title">Toward a Theory of Design as Computation</span>
            </a>
          </li>
          <li>
            <a href="website-change-diary" rev="dct:references" typeof="bibo:Article">
              <span property="dct:title">Website Change Diary</span>
            </a>
          </li>
          <li>
            <a href="document-stats#E0X2Dyvakwgw8K4ip2iDwK" rev="ci:document" typeof="qb:Observation">
              <span>urn:uuid:d17d83ca-f6a4-4c20-ac3c-2b88a9da20f0</span>
            </a>
          </li>
        </ul>
      </nav>
    </object>
  </head>
  <body about="" id="EPMYw6XZuqfGnOaonTyp0L" typeof="bibo:Article">
    <section id="Ee4TIuZVeqkbOIFJBJ6QMI">
      <p><a href="http://www.amazon.com/gp/product/0201835959?ie=UTF8&amp;tag=doriantaylor-20&amp;linkCode=as2&amp;camp=1789&amp;creative=390957&amp;creativeASIN=0201835959" title="The Mythical Man-Month">It has been known for several decades</a> that developing software and/or websites incrementally is the optimal path to success. There is a problem of <em>access</em>, however, both for business entities wanting the work done, and practitioners willing to do it. Big companies and tech startups can afford to do genuine incremental development, because they can afford to <span class="parenthesis" title="in the case of startups, there is nothing but a development staff.">maintain a full-time development staff.</span> Since said development staff is being paid no matter what, it's possible for them to fix, augment, and invent things as needed, <a href="the-roi-of-a-solved-problem" title="The ROI of a Solved Problem" rel="dct:references">creating random spikes in value along the way</a>.</p>
      <p>Most business entities in the world, however, are neither big companies nor tech startups. Either they don't do enough development to justify the cost of a full-time team, or they don't know the first thing about it, or they simply can't afford it. So they contract it out to an agency, and from the point of view of the commercial transaction, that more or less sticks them square into Waterfall-land.</p>
      <aside role="note" id="EAIyyGrl2lg22vS5zShvTL">
        <p>Of course, that's only for custom and semi-custom development. A lot of business entities are attempting to solve their problems by going into <acronym title="Software as a Service">SaaS</acronym>-land instead. The best thing I can say about this strategy is that you don't have to wait for a year-long project to be completed to see how badly off you are. Maybe.</p>
        <p><a href="information-infrastructure-as-a-process" title="Information Infrastructure as a Process" rel="dct:references">I harp on <acronym title="Software as a Service">SaaS</acronym> a lot</a>, but that's because <a href="hello-internet" title="What I Do (For Money)">I deal every day</a> with trying to liberate organizations from the clutches of consummate boondoggles that neither solve their problems nor save them any money over a custom solution. There <em>are</em> plenty of <acronym title="Software as a Service">SaaS</acronym> vendors out there, however, who provide valuable, cost-effective services that aren't impossible to get away from. What these vendors have in common is that they pick <em>one</em> itch and scratch it to satisfaction, and their business model isn't predicated on holding their customers hostage.</p>
      </aside>
      <h2>Such Fall, Many Water, Wow</h2>
      <p>For the three people left in the world that aren't aware, the <a type="application/pdf" href="http://www.cs.umd.edu/class/spring2003/cmsc838p/Process/waterfall.pdf" title="Managing the Development of Large Software Systems" rel="dct:references">Waterfall model</a> is an <em>anti</em>-example of how to develop software&#x2014;and by extension, websites&#x2014;perennially mistaken for a real one. It is adapted loosely from engineering and construction, which exhibit <a href="http://en.wikipedia.org/wiki/Design%E2%80%93build" title="Design-build &#x2014; Wikipedia" rel="dct:references">well-trodden procurement processes</a>. While perhaps soothing as a management fiction of seamless transits from requirements analysis, to design, engineering, implementation, testing and deployment, the reality is that the Waterfall model is a nigh-guaranteed recipe for disappointment. That the project will take longer, cost more, and not deliver on its promises is almost a certainty, because of the monolithic and highly prescriptive nature of the process. Simply put, the universe is indifferent to your <a href="http://en.wikipedia.org/wiki/Gantt_chart" title="Gantt chart &#x2014; Wikipedia" rel="dct:references">Gantt chart</a>.</p>
      <p>The tragedy here is that while agencies and independent consultants can be as <a href="http://agilemanifesto.org/" title="The Agile Manifesto" rel="dct:references">Agile</a> as they like <em>within</em> the membrane of the contract, they typically have to go through the same bogus process of procurement, feature list bargaining, and the monolithic risk of <span class="parenthesis" title="which will never, ever happen.">delivering a massive, complex product on time and on budget</span>. Bigger contracts cost more to <em>qualify</em> for, let alone negotiate, take longer to close, require all kinds of painstaking and intrusive due diligence, import <em>enormous</em> risk, <em>and there are fewer <strong>of</strong> them</em>. If it were possible to trade on smaller contracts&#x2014;<a href="http://www.ribbonfarm.com/2010/03/01/the-expedient-desirable-product/" title="Expedient Desirable Product" rel="dct:references">like the end-to-end solution to a single user goal</a>&#x2014;not only would we not have to jockey for slivers of the big contracts, but there'd be more work to go around in general, and a higher likelihood of success.</p>
    </section>
    <section id="EejlSKx7FJH4iQ8DRDtmhL">
      <h2>And that's just for practitioners</h2>
      <p>The value proposition to <em>clients</em> is that they get <a href="on-the-building-of-software-and-websites" title="On the &#x201C;Building&#x201D; of Software and Websites" rel="dct:references">working results online for use <em>as they are completed</em></a>, that they own their own data, and that at any moment they're never exposed to the full financial risk of a Waterfall project. Moreover&#x2014;and this is important&#x2014;the foundation of the business relationship is one of mutual benefit, <em>not</em> codependency. The way we achieve this state is by arranging the contract such that either party can walk away at any time, and that there is actually something of value left behind. We achieve <em>that</em> through <span class="parenthesis" title="while the contract is valid">an unconditional payment schedule</span>, and a few select open-source technical interventions that enable the client to hire a new agent to pick up more or less where the old one leaves off.</p>
    </section>
    <section id="EeTb0OzEmrENuVPLjvH2pK">
      <h2>The <a href="post-geek" title="Post-Geek" rel="dct:references">(Post) Geek</a> Stuff</h2>
      <p>The first of such technical interventions is <a href="the-redesign-dissolved" rel="dct:references" title="The Redesign, Dissolved">the scaffolding</a>, an up-and-running framework which enables practitioners to replace an existing website at the level of <em>one</em> addressable <acronym title="Hypertext Transfer Protocol">HTTP</acronym> resource at a time. If you're sophisticated enough to use composite documents, then we're talking about <em>sub</em>-page granularity. This gets over the technical hurdle of having to wait until a new site is complete before launching it, because there's an inscrutable <em>old</em> site in the way. It's essential, because let's face it: most <abbr title="World-Wide Web">Web</abbr> projects are in fact <em>redesigns</em>. Since the scaffolding works at the level of <acronym title="Hypertext Transfer Protocol">HTTP</acronym>, it also means you don't have to care about whatever arcane technology the old site is using, and are free to use <span class="parenthesis" title="At the moment, the scaffolding itself is bound to Apache and mod_perl, but you can use anything else on top of it. I don't expect this condition to last forever.">whatever platform you want.</span></p>
      <p>The second technical intervention is an essential control surface for the direction of the project. We all know that software and <em>especially</em> <abbr title="World-Wide Web">Web</abbr> development has a tendency to <em>meander</em>. If you <a href="http://www.ribbonfarm.com/2010/03/01/the-expedient-desirable-product/" title="Expedient Desirable Product" rel="dct:references">prioritize tasks by the opportunity to complete them</a>&#x2014;which is the most sure-fire way to get useful things done&#x2014;then without the use of a tool like this, your progress reports to your client won't make any sense. It is likewise important, when you go down the proverbial rabbit hole, to show that your excursion connects to a result the client in fact endorsed. This tool is part <a href="http://en.wikipedia.org/wiki/Burn_down_chart" title="Burn down chart &#x2014; Wikipedia" rel="dct:references">burn-down chart</a>, part <a href="http://en.wikipedia.org/wiki/Bug_tracker" title="Bug tracker &#x2014; Wikipedia" rel="dct:references">bug tracker</a> and part collaborative decision-making tool. It uses <a href="http://en.wikipedia.org/wiki/Issue-Based_Information_System" title="Issue-Based Information System &#x2014; Wikipedia" rel="dct:references">a technique developed in the 1970s</a> specifically to model, decide over, and organize action around complex development problems. <a href="https://github.com/doriantaylor/p5-app-ibis" rel="dct:references">I have a rough prototype</a> of this tool currently, and expect to develop it to maturity in the coming months.</p>
      <p>The third intervention, every bit as essential as the first two, concerns the <a href="skeleton-organs-circulation-sinew-skin" title="Skeleton, Organs, Circulation, Sinew, Skin" rel="dct:references">accumulation of precursor materials <em>in a useful state</em></a>. I'm talking about research findings, personas, scenarios, sketches, wireframes, mockups, prototypes, taxonomies, content inventories, the whole nine. Despite their enormous and lasting value, nobody reads these things the second time around, or arguably even the first. The ostensible reason is that they tend to be too long and full of fluff, are buried in various slide decks, spreadsheets and Word documents, and further buried in email attachments. They also tend to be disconnected from one another, such that it's rarely worthwhile, if even feasible, to reassemble a cogent story about the design decisions that go into one aspect of a site or another.</p>
      <p>A tool that aggregates, abridges, and organizes these artifacts therefore plays an important role beyond simply making it easier to manage them. It enables the practitioner to raise the status of these precursor materials to first-class deliverables, and the client to take possession of them in real time, justifying regular, incremental payment. A prototype of this tool is under active development, and should be released later this year.</p>
      <p>It is also important to recognize that each of these technical interventions, as they currently exist, are merely reference implementations of mature theory and practice: they just haven't, to my knowledge, been applied in this context. While they are usable in their own right, the real goal is to grow an ecosystem of all kinds of products that implement these processes. In particular, the second and third tools began as openly-available <a href="https://vocab.methodandstructure.com/ibis#" title="The IBIS (bis) Vocabulary">linked data vocabularies</a>, so that there would always be a viable exchange format, to losslessly import data from any individual implementation to another.</p>
    </section>
    <section id="EkmVvMd3tvk6C7oyYBkS1J">
      <h2>The Final Piece</h2>
      <p>The last part of this puzzle is a <em>contract</em> that individuals or small teams can use to put this plan into real commercial action. Ideally, this contract would be a freely-available, <a href="http://creativecommons.org/" title="Creative Commons" rel="dct:references">Creative Commons</a>-licensed <span class="parenthesis" title="LAWYERS: don't worry, I'm not trying to tuk yer jerbz. "><em>archetype</em></span> that could grow and mature as new contingencies arise in the field. It would provide the basic terms for the incremental exchange of value, as well as the <a href="how-i-handle-intellectual-property" title="How I Handle Intellectual Property" rel="dct:references">partitioning of intellectual property</a>, and other ancillary issues peculiar to information services. I have a sketch of this contract, and will be looking for ways to finance its development&#x2014;with a lawyer&#x2014;over the course of 2014.</p>
      <p>My overarching goal is to lower the exposure to financial risk in <abbr title="World-Wide Web">Web</abbr> development, both for practitioners and clients, and increase the likelihood of higher-quality results, for the ultimate purpose of a better <abbr title="World-Wide Web">Web</abbr> experience for everybody. To accomplish this, I want to lower the barrier to access to good design by making it both technically and commercially feasible to deliver one good design at a time. Though my vision isn't just for new entrants and small-fries: I imagine established agencies could adopt these processes to lower their risk exposure on even their largest projects. The effect, I hope, is that more business gets done on the <em>whole</em>, and that the outcomes perform, and are something to be proud of.</p>
    </section>
  </body>
</html>
