various thought-oriented text products
"artefact-metadata-hxa7241-www": {
  "title": "Articles",
  "author": "Harrison Ainsworth",
  "date": "2016-04-26",
  "id": "urn:uuid:93965669-5C21-4E8F-8320-1BEC878D3405",
  "type": "index",
  "subtype": "text/html",
  "wordcount": 915,
  "hashsecure": "sha256:190334f2d5414d91abc50802d743751f50948de6154f48e7ef1a58ea3bd64648",
  "location": "http://www.hxa.name/articles/"


some semi-formal writings on a limited range of subjects

Software development

Reusability By Orthogonalysis
To make software reusable, divide it into orthogonal facilities – because that makes available maximal functionality with minimal dependencies.
(1000 words, 5 min read)
Software Architecture For A New Economic System
A rough, high-level software description for a general economic system: an informational structure/means for organising cooperation. (Or an 'engineering fiction'.)
(2000 words, 15 min read)
Tractatus Computo-Philosophicus
A brief philosophical expression of software development, in the style of Wittgenstein's Tractatus.
(550 words, 5 min read)
Understanding Software Engineering Design
A brief description of what seem to be the abstract essentials of software engineering design.
(3000 words, 20 min read)
On Naur's ‘Programming As Theory Building’
A problem in Naur's ‘Programming As Theory Building’ and the improved philosophical model it prompted.
(1500 words, 10 min read)
Is 'Software Architecture' Really Architecture ?
The software world doesn't know what ‘architecture’ means. It needs to seek edification from other disciplines.
(550 words, 5 min read)
A Building Industry Model For Software Development
A conceptual framework for understanding software development, modelled on the building industry.
(3000 words, 20 min read)
Software Architecture And Engineering Definitions
well-founded definitions for the terms 'architecture' and 'engineering' in software
(750 words, 5 min read)
A Software Engineering Symbol
a symbol for software engineering, evolved from the hacker emblem
(350 words, 5 min read)
Software Engineering And Civil Engineering
abstracting civil engineering as a guide to software engineering
(3000 words, 20 min read)
Software Technical Design Guide
a short guide for software technical design
(1200 words, 10 min read)
Ruby Speed Guide
some simple ways to make Ruby code faster
(1300 words, 10 min read)
USDP-Distilled eXtreme Documentation
a simple software technical documentation format
(1600 words, 10 min read)
Open Augmentation Files
a very simple pattern for sharing marked-up/parsed augmentations of files
(400 words, 5 min read)

Graphics software

Fast pow() With Adjustable Accuracy
a fast alternative to the standard C/C++ pow() function
(1400 words, 10 min read)
General Octree C++ Component
the technical design for a generalised octree data structure in C++
(700 words, 5 min read)
General Octree Ruby Component
documentation and code for a generalised octree data structure in Ruby
(700 words, 400 code lines, 5 min read)
Perceptuum 3 Renderer Architecture
architecture description for the Perceptuum 3 renderer
(3000 words, 20 min read)


On Hayek's ‘Use Of Knowledge’
Hayek's 'unconveyable economic knowledge' is like the idea of a 'private language'. And some centralisation, rather than being defective, is essential to cooperation anyway.
(1670 words, 10 min read)
On Lockean Property
Locke's famous property rule is a fake moral rule – it is convincing but functionless.
(960 words, 5 min read)
The Illusion Of Decentralisation
Decentralisation is not really what we want.
(1000 words, 5 min read)
‘Just desert’ is the counter-space of morality
‘Just desert’ and ‘deserving’, though a common moral idea, can never be the basis of a proper moral system. It has nothing positive to tell us about any moral system, only where the outer boundary might be.
(1200 words, 10 min read)
A reply to ‘Is efficient copyright a reasonable goal’
This is a counter to a recent (semi-) academic article on copyright ethics. It picks out the main moral thesis, shows it is inadequate and should be rejected, and shows how it is instead aligned with a self-interested motivation.
(1900 words, 15 min read)
Tractatus Digito-Philosophicus
A translation of Wittgenstein's Tractatus into the domain of software development.
(6500 words, 45 min read)
The Lockean Justification For Copyright: An Argument Against
This idea – we could call it ‘right to the fruits of labour’ – is at the root of an intrinsic moral argument for copyright. But on examination it appears inadequate to support that, and also a morally inferior rule.
(1200 words, 10 min read)
Intellectual Property Ethics: Arguments Against
Ethical arguments against IP, based on: groundedness of laws and personal liberty, lack of harm being prevented, universalisation and co-operative benefit, and freedom of communication.
(4500 words, 30 min read)
The ethical case against IP (transcription)
A rational, ethical argument against IP (Transcription of lecture by David Koepsell).
(5900 words, 40 min read)
ErgoVim Key Mappings
A mostly comprehensive rearrangement of Vim's key mappings, to be more spatially ordered and modernised.
Anti-Copyright Summary
An outline of thoughts and arguments against copyright
(1800 words, 15 min read)
Epub Format Construction Guide
a guide for making Epub ebooks/publications
(1900 words, 15 min read)
Epub Format Construction Guide (ebook)
a guide for making Epub ebooks/publications, as an Epub ebook
(1900 words, 15 min read)
Genetics Basics For Programmers
a summary of basic genetics, for programmers
(1700 words, 10 min read)