On programming
Software for the web is perpetually unfinished and incomplete. Most products are sent out into the world to fend for themselves and forgotten by their manufacturers - returning home only when things go wrong.
Software rolls on endlessly, accumulating problems, a record of imperfection and second guesses. There is never an end, no moment when its makers hand it over and say, there, it is done.
How should those makers handle this evolving, never satisfied aggregation of ideas and hope?
One common practice that has spread widely is to harness people to a remorseless machine that is unwavering in its pace; it loves to smooth out the seasons and works unchanged on short days and long ones and would fling aside idle days that stand in its way but for the legal provision that humans occasionally need to stop. The name of this practice is multiple but you might know it as agile. It demands - but rarely receives - absolute obeisance, because it believes it is the only means by which complexity can be subdued.
Can we take satisfaction from creating when the object on which we work is never complete? Some web developers - designers and programmers - talk about the craft involved in assembling the raw materials of the web - HTML, JavaScript and CSS - or they used to; their numbers are dwindling.
Websites are updated, refreshed or simply torn down and their earlier incarnations lost; there are relics of the past if you look - or time travel - but they are curiosities of little value, no longer able, or allowed, to satisfy their function.
Web development was not naive and fun for long, it was quickly drawn into the maw of company thinking, succumbing to mechanised accounting and the creation of roles designed to make processes more efficient but which constrained imagination, collaboration and excellence; the result is mediocre uniformity.
Web developers have gorged themselves on libraries, frameworks and a multitude of tools and techniques for limiting their thinking and for controlling their environment; in the pursuit of perfection, they have ceded interest and influence over what it is they are making.
The next revolution in web development - the first since it began, the rest was activity not change - will be under the aegis of AI. I cannot imagine the machines will tolerate for long the thousand and one elaborate solutions we have devised for simple problems. I would like to think that the core of the Internet - HTML, JavaScript and CSS - will persist as the target for their work.
But I suspect data and design will be wrapped up and presented on demand for the device and in a format of the user’s choosing - or to meet the preferences of the user’s avatar.
What does a programmer who builds websites and apps call themselves?
I’ve gone by multiple names over the years but the one I favoured was web developer. Carpenters never faced this problem. The make of lathe or saw did not, and does not, determine their competency.
My most recent site I built using the triumvirate of web technologies, those old war horses which once cantered beneath the surface of the web but now too often trudge beneath their burden of superfluity. It brought me a strange joy; part discovery and part nostalgia. I can remember when they first came into being, and can foresee their death.
If you have never worked unassisted by a framework or library, I encourage you to give it a go, you might wonder why you permit other’s code to stand between you and what you want to make; React, Vue, etc. offer you control while they take away your authority, your authorship.