Dorian Taylor VERSO FEED urn:uuid:3f36c30c-6096-454a-8a22-c062100ae41f 2024-09-15T21:21:11Z Intertwingler Copyright © 2006-2022 Dorian Taylor Why Build Software When You Can Define It? urn:uuid:4c65023e-41f3-4d6f-b2d0-248d3d4f60e0 2022-05-31T04:18:52Z 2008-06-13T02:41:35Z Dorian Taylor https://doriantaylor.com/ Using a construction metaphor for knowledge work invokes a feeling of labour — if you just work hard enough you'll eventually get the job done. But for software or other knowledge products, the job will never be done until it's sufficiently correct — and that isn't a function of labour. Resource Handling and Representation urn:uuid:aa7ed04b-9dff-4898-9812-99085620b8d0 2022-05-31T15:10:50Z 2008-06-13T19:07:24Z Dorian Taylor https://doriantaylor.com/ This manual for defining Web resources was my first major hypermedia writing project, which I ultimately postponed indefinitely for lack of satisfactory authoring tools. Country Domains and New-School Generic TLDs urn:uuid:0e3be701-0da7-45e0-a012-38122b61136b 2022-05-31T04:18:52Z 2008-06-14T19:05:35Z Dorian Taylor https://doriantaylor.com/ This is less relevant now that the market for top-level domains has opened up, but getting a domain with a weird TLD without also getting the .com just makes it harder to find you. To www or Not to www urn:uuid:03a8708c-3834-4660-82f5-79e5a8c58354 2022-05-31T04:18:52Z 2008-06-14T19:05:35Z Dorian Taylor https://doriantaylor.com/ TL;DR “doubleyou doubleyou doubleyou dot” is an artifact of the early Web. Normalize www-free addresses! Adjacent and Alternate Domains urn:uuid:6809bccf-8655-46b3-a70f-bc5601890833 2022-05-31T15:10:50Z 2008-06-14T19:27:26Z Dorian Taylor https://doriantaylor.com/ Yes, get as many alternate domain names as makes sense to, but pick a main one that all the others point to. Case Mixing in Domain Names urn:uuid:1fb3da9c-c880-43ff-b5ad-2a943ffda20e 2022-05-31T04:18:52Z 2008-06-14T23:48:12Z Dorian Taylor https://doriantaylor.com/ You cannot depend on the CaseMixing of your domain name to be preserved. URI Syntax Constraints urn:uuid:16de9e36-9b09-402a-a073-a22f3744778c 2022-05-31T04:18:52Z 2008-06-15T06:44:20Z Dorian Taylor https://doriantaylor.com/ The standardized constraints on URI syntax are a lot looser than you would expect them to be, but it behoves us to come up with artificial constraints that create behaviour we can depend on. Hyphen vs. Underscore urn:uuid:a90a7958-50a4-4f08-b628-ad462f104e12 2022-05-31T04:18:52Z 2008-06-15T06:52:34Z Dorian Taylor https://doriantaylor.com/ Hyphens-rule, underscores_drool. Domain Name Recommendations urn:uuid:5cdc4cb7-f83c-44af-8094-0292fe22a68f 2022-05-31T15:10:50Z 2008-06-15T06:52:34Z Dorian Taylor https://doriantaylor.com/ General guidelines for choosing a domain name. Distinguishing Resources from Files urn:uuid:e689b7c5-3d7e-4b02-80f3-a23052aa4e1e 2022-05-31T15:10:50Z 2008-06-17T08:07:31Z Dorian Taylor https://doriantaylor.com/ Web resources are much richer objects than files, and this fact is rarely taken full advantage of. HTTP URL Path Syntax Constraints urn:uuid:ad8a6313-3e4c-4808-a881-55ccad94b490 2022-05-31T15:10:50Z 2008-06-17T08:07:31Z Dorian Taylor https://doriantaylor.com/ This is, by far, the most popular document on this entire website. URI Path and Query Parameter Semantics urn:uuid:c2d9f00c-05b7-4761-b949-6d5aa5b0a9c1 2022-05-31T15:10:50Z 2008-07-24T20:51:04Z Dorian Taylor https://doriantaylor.com/ Policy guidelines for how URI parameters in both the path (underutilized) and query components ought to be interpreted. File Extensions in HTTP URL Paths urn:uuid:51857303-7d67-4671-955f-32f0786dd4c3 2022-05-31T04:18:52Z 2008-07-25T16:56:24Z Dorian Taylor https://doriantaylor.com/ TL;DR you don't need 'em. Other Non-Alpha-Numeric Characters in HTTP URLs urn:uuid:302c486f-3811-4907-87d1-61b97493f480 2022-05-31T15:10:50Z 2008-07-30T23:58:57Z Dorian Taylor https://doriantaylor.com/ TL;DR there are a lot more available than you'd expect. Other Opaque Data Objects urn:uuid:dc35e41b-fed5-4d8e-868c-476a1b39dcd2 2022-05-31T04:18:52Z 2008-08-31T21:51:21Z Dorian Taylor https://doriantaylor.com/ Some Web resources really are just files. URIs, Resources and Representations urn:uuid:4e34a980-3e86-49b8-80a1-e6465c0fac34 2022-05-31T04:18:52Z 2008-08-31T21:51:21Z Dorian Taylor https://doriantaylor.com/ Policy guidelines for Web resources proper. Distinguishing Persistence from Publication urn:uuid:6cede79b-f0a3-4ec8-86ca-bf054cc30d81 2022-05-31T04:18:52Z 2008-09-01T04:29:32Z Dorian Taylor https://doriantaylor.com/ In order to save a file you typically have to come up with a name for it. Here I advocate separating the naming part from saving part (from the publishing part). The URI Naming Conundrum urn:uuid:d088244d-c29a-437f-a644-9b90097c443f 2022-05-31T15:10:50Z 2008-09-01T04:29:32Z Dorian Taylor https://doriantaylor.com/ Making the case for a mechanism for preserving URI history to track renames and deletions. HTTP URL Path Parameter Syntax urn:uuid:666377da-879f-4637-96e8-8e44662c2217 2022-05-31T04:18:52Z 2008-09-01T19:13:11Z Dorian Taylor https://doriantaylor.com/ No, wait: THIS is by far the most popular page on this site. Tongue-Twisters and Vocabulary Gaps in URIs urn:uuid:90927669-2df3-47c5-94bd-09245446f321 2022-05-31T04:18:52Z 2008-09-03T08:31:44Z Dorian Taylor https://doriantaylor.com/ Avoid using characters in URIs your users don't know how to pronounce. The Programmer in Fallow: Augmenting Productivity Through Selective Idleness urn:uuid:f40a4a69-f370-421c-a900-5106b90c4d74 2022-05-31T15:10:50Z 2008-10-23T08:29:17Z Dorian Taylor https://doriantaylor.com/ This note is a cursory, non-scientific inquiry into the application of the concept of crop-rotation, an ancient agricultural technique for preserving the fertility of land, into the implementation phase of a software project. No research as of yet has been performed to ascertain if this adaptation has been attempted in similar environments. This note is one of an upcoming series on software project management. The Programmer in Fallow: In Contrast with Incumbent Solutions urn:uuid:ae7be939-b179-4a65-ad42-c3f2bef6d5fa 2022-05-31T04:18:52Z 2008-10-23T08:45:58Z Dorian Taylor https://doriantaylor.com/ This note is a cursory, non-scientific inquiry into the application of the concept of crop-rotation, an ancient agricultural technique for preserving the fertility of land, into the implementation phase of a software project. No research as of yet has been performed to ascertain if this adaptation has been attempted in similar environments. This note is one of an upcoming series on software project management. The Programmer in Fallow: An Implementation urn:uuid:3b9578f2-1832-4884-b684-5f4313f5d00f 2022-05-31T15:10:50Z 2008-10-23T08:45:58Z Dorian Taylor https://doriantaylor.com/ This note is a cursory, non-scientific inquiry into the application of the concept of crop-rotation, an ancient agricultural technique for preserving the fertility of land, into the implementation phase of a software project. No research as of yet has been performed to ascertain if this adaptation has been attempted in similar environments. This note is one of an upcoming series on software project management. Defining Feeds urn:uuid:3bd1be8b-f214-42f5-8349-a4c905873cbe 2022-05-31T15:10:50Z 2009-03-19T18:13:36Z Dorian Taylor https://doriantaylor.com/ This document explores the relationship of Web syndication feeds to conventional hypertext documents. Syndicating Links urn:uuid:e53b43e2-d1a6-4d39-848c-2fe2317ae56f 2022-05-31T04:18:52Z 2009-04-01T19:40:10Z Dorian Taylor https://doriantaylor.com/ What if, instead of (or in addition to) syndication feeds for new articles, we made feeds for new links? Working Titles get Random Cryptonyms urn:uuid:ee003c75-110c-4b9b-99d1-eeedf67c81ea 2022-05-31T15:10:50Z 2009-08-14T20:05:42Z Dorian Taylor https://doriantaylor.com/ 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. Maintenance Work is Important Too urn:uuid:e3f1c6ce-82c2-4976-8331-084884754c47 2022-05-31T15:10:50Z 2009-08-22T09:34:33Z Dorian Taylor https://doriantaylor.com/ I drew inspiration from an annoying software misconfiguration left untouched for an age to pen a screed about the value of ancillary and maintenance-oriented knowledge work. MOAR FEECHARZ. urn:uuid:a09c8818-1e0d-413d-8649-e56f5dbba1dd 2022-05-31T15:10:50Z 2009-09-24T00:54:15Z Dorian Taylor https://doriantaylor.com/ A conversation on Twitter this summer with a lead at an agency led to this screed about features as a metric for software projects. An Early Iteration on Iteration urn:uuid:47423c3c-f540-4b75-aa72-72c6bf3ab032 2022-05-31T04:18:52Z 2009-12-14T03:37:01Z Dorian Taylor https://doriantaylor.com/ With the advent of Agile process models and the increasing influence of user experience design, iterative development promises value early on — but does it deliver? Reverse Polish Notation for People urn:uuid:0bedc580-cd82-48e8-9187-d8d2489eeb37 2022-05-31T15:10:50Z 2009-12-18T03:34:19Z Dorian Taylor https://doriantaylor.com/ Reverse Polish Notation is an extremely economical way to make sense to computers at the cost of making sense to people. But what about applying the same principle to arrange language in a way that is most useful to people? Working Against the KLOC urn:uuid:b256f8c6-1fac-4f96-8992-7d829ad42658 2022-05-31T15:10:50Z 2009-12-27T03:50:38Z Dorian Taylor https://doriantaylor.com/ Looking back on a particularly challenging episode of my career, I consider the value of conceptual integrity and how it affects the bang-to-buck ratio of writing code. Expedient Desirable Product urn:uuid:08431f6f-155e-42a2-9987-024887fc3a87 2022-05-31T15:10:50Z 2010-02-27T17:01:34Z Dorian Taylor https://doriantaylor.com/ Every business problem can be imagined having a corresponding minimum viable product, which represents the most bare-bones solution somebody will buy. But how much of our relative effort do we want to spend finding it? Key Continuity for Kindergarteners urn:uuid:bf1c1ed1-58ed-41a0-b6bd-7b83904e2a02 2022-05-31T15:10:50Z 2010-03-08T19:24:08Z Dorian Taylor https://doriantaylor.com/ When it comes to information security, user experience is often an afterthought. The non-paranoid rarely understand for themselves the principles that keep them safe while simultaneously bringing their offspring online. What can we do to help them? Two Expedient, Desirable Products urn:uuid:1a88e528-da54-4626-b720-703ec16af7a8 2022-05-31T15:10:50Z 2010-04-12T09:36:19Z Dorian Taylor https://doriantaylor.com/ In order to promote my principle of expedient desirable products, I figured it would make sense to begin providing some. A Brief and Fuzzy History of Web Application Development urn:uuid:c42c3618-12d5-4c16-8cfd-ed3f3820fa66 2022-05-31T15:10:50Z 2010-05-20T08:32:26Z Dorian Taylor https://doriantaylor.com/ This is an attempt to articulate my understanding of the state of Web development and how it came to be. It is not meant to be a completely accurate account. Plus, it wouldn't be right to post something on the Web without a healthy dose of editorial. It is the first of a two-part series, the second consisting of what I'm doing about it. The State of Web Development, Continued urn:uuid:e7649679-67c1-42df-97b3-7bbeab309e17 2022-05-31T15:10:50Z 2010-05-20T08:32:27Z Dorian Taylor https://doriantaylor.com/ This is the second installment of my observation of the state of Web application development, along with my vision for the kind of system I would like to use. Schadenfreude Bait urn:uuid:69833c0a-7292-427f-aad9-129a4f24fa7f 2022-05-31T15:10:50Z 2011-01-25T20:43:54Z Dorian Taylor https://doriantaylor.com/ If you are blissfully unaware of the ins and outs of Linux system maintenance and its many failure modes, you can ignore this piece. Otherwise, put on your sanctimony hat. UUID Vexillology urn:uuid:10690e2d-3d05-44c8-8ec7-d20d4840d1d4 2022-05-31T15:10:50Z 2012-01-12T23:13:06Z Dorian Taylor https://doriantaylor.com/ This is just an idea at this stage, and I'm confident I'm not the first to consider it: using flags and/or heraldry to make long, generated identifiers more memorable. (Disclaimer: no examples yet!) Something I'd Like to Do urn:uuid:82dc280a-b612-460a-ba87-4b1e7e51bb08 2022-05-31T15:10:50Z 2012-03-28T22:21:47Z Dorian Taylor https://doriantaylor.com/ My roots in information security have long given me the “no” feeling when it comes to the increasing dependency on JavaScript to get basic things done on the Web. This is an idea to fix it. Pull Requests urn:uuid:a1aa8389-4029-4131-bb9f-7bfde588d935 2022-05-31T15:10:50Z 2012-09-06T04:58:12Z Dorian Taylor https://doriantaylor.com/ A pull request ensures a happy ending. Intelligent Heterogeneity urn:uuid:8d3f79f9-8f4b-46f2-92e3-8977bda8f4d1 2022-05-31T15:10:50Z 2013-03-11T23:09:11Z Dorian Taylor https://doriantaylor.com/ A design principle I've been developing, for a good six or so years, finally gets a name. RDF-KV urn:uuid:d871ce94-9c4c-4791-9722-ebb13ecb60ec 2022-05-31T15:10:50Z 2013-09-17T03:48:17Z Dorian Taylor https://doriantaylor.com/ This is a draft of a protocol I designed for embedding RDF statements in plain HTML forms, enabling quick-and-dirty Semantic Web applications. Introducing Verso urn:uuid:d50453a0-cad8-48dc-8943-541528ff8d5b 2022-05-31T04:18:52Z 2017-11-14T22:29:04Z Dorian Taylor https://doriantaylor.com/ I need a separate place to put my technical writing. As an homage to (French) LogoWriter, I am calling it the Verso. Production Code urn:uuid:bc1e699a-dca0-4d03-9d9c-d3d2054e5c7e 2022-05-31T15:10:50Z 2018-02-23T22:57:25Z Dorian Taylor https://doriantaylor.com/ “I don't really see a difference between prototype and production code.” OK what the hell do I mean by that? The Only Argument You Will Ever Need Against PHP urn:uuid:5859accb-7577-44ab-ae04-e6cffb3c4b52 2022-05-31T15:10:50Z 2018-04-18T22:55:22Z Dorian Taylor https://doriantaylor.com/ It doesn't even involve aesthetics. Betamaxed urn:uuid:f4e64642-09dc-4f61-adf5-bfb68f5c2804 2022-05-31T15:10:50Z 2018-06-04T16:15:00Z Dorian Taylor https://doriantaylor.com/ After 11 years as a staunch Mercurial user, I am finally capitulating to Git. A Theory of Information Resources urn:uuid:a13baa9f-c644-49cb-b727-79ee66053361 2022-05-31T15:10:50Z 2019-06-15T15:36:57Z Dorian Taylor https://doriantaylor.com/ I find this matrix to be extremely useful when considering Resources, as understood by, e.g., Roy Fielding's REST dissertation. There Is No SQLite for RDF urn:uuid:df83146f-9dcb-4f85-a846-68cfa538d991 2022-05-31T15:10:50Z 2019-11-28T02:12:11Z Dorian Taylor https://doriantaylor.com/ The lack of a lightweight, efficient, directly-attached persistent storage mechanism, that can be readily shared between programming languages and frameworks, has frustrated Semantic Web development. I intend to do something about it. Networked Follysystem urn:uuid:e88ef416-c5ec-4fca-b7f8-a122a2a1c2e8 2022-05-31T15:10:50Z 2021-01-27T20:00:44Z Dorian Taylor https://doriantaylor.com/ Last Friday I tempted fate by changing my work setup. Let's just say I learned a lot about the state of the art of networked file systems. Programming Languages I Have Known and Loved/Loathed/Lulzed urn:uuid:f21e7730-a200-4b64-9819-3780b686c642 2022-05-31T15:10:50Z 2021-02-19T00:26:18Z Dorian Taylor https://doriantaylor.com/ À propos of nothing, I decided to do a roundup of all the programming languages I have used more than zero. A Short Meditation on Testing urn:uuid:1e041596-8f8c-4f0c-b6b3-14fb92d95acd 2022-05-31T15:10:50Z 2021-04-13T18:06:43Z Dorian Taylor https://doriantaylor.com/ Lots of people have opinions about testing software, so I get to have some too. Spreadsheet Rantifesto urn:uuid:bfb966ac-ec4d-4ddb-8df7-27bfdda23da9 2024-09-15T21:21:11Z 2021-04-15T19:50:19Z Dorian Taylor https://doriantaylor.com/ I think I have finally identified what bugs me so much about spreadsheets: they come right up to the line of being useful for SO many other things, but stop short. I am almost mad enough to do something about it. The Specificity Gradient urn:uuid:45c337af-5046-4727-a7f3-e026ad7857d9 2022-09-10T17:12:48Z 2022-05-11T23:39:36Z Dorian Taylor https://doriantaylor.com/ This is the definitive write-up of the conceptual framework I am calling the Specificity Gradient. The Great Deshittification urn:uuid:d314f5c3-f888-4c0d-abc4-fd390ff346eb 2023-10-26T20:12:48Z 2023-10-23T22:59:44Z Dorian Taylor https://doriantaylor.com/ Recounting an impromptu episode last week where I helped Venkat Rao fix his blog, Ribbonfarm dot com. IBIS Gets a Tune-Up urn:uuid:74013fb3-da17-4a9b-8641-b7cc89466408 2024-05-22T21:31:15Z 2024-01-18T22:29:50Z Dorian Taylor https://doriantaylor.com/ I thought I would wrap up Intertwingler by the end of 2023, but I got diverted by a request to do something that ultimately turned out to be equally important.