Programmatic SEO means generating many pages from a template and a dataset, one per city, per product pair, per parameter combination. Done with a real dataset it is one of the most efficient things in the discipline. Done with a thesaurus and a spinner it is the thing search engines have spent two decades learning to...
Posts
Browse all posts in one place. Find tutorials, deep dives, guides and updates on AI, programming, security, infrastructure and web development.
Technical documentation fails in a specific and predictable way. Somebody writes a great deal of it during a quiet fortnight, the system changes, nobody updates it, and within a year the document is confidently wrong. At that point it is worse than nothing, because a reader who trusts it acts on information that no...
Developer onboarding is usually measured in how long the induction takes, which is the wrong end of the problem. The number that matters is how long before a new engineer can change something and be confident they have not broken anything else, and in most teams that is measured in months rather than days. The delay is...
An uptime SLA looks like a promise and behaves like a refund policy. Suppliers know this. Customers frequently do not, and sign a service level agreement believing they have bought availability when what they have bought is a small discount in the event they do not get it. That is not necessarily a bad deal. It is a...
Software escrow exists to answer a reasonable fear: the supplier who built and runs your critical system goes out of business, and you are left with something you depend on and cannot maintain. An escrow agreement puts the source code with a third party who releases it to you if that happens. The fear is legitimate....
The choice between a fixed price contract and time and materials is usually framed as a choice about risk, which is correct, and then immediately mishandled, because both sides assume the risk goes away rather than moving. It does not go away. In a fixed price arrangement the supplier carries the risk of the estimate...
Disaster recovery in a small team is usually one line in a document nobody has opened: backups are enabled. That statement is true and it is not an answer, because it says nothing about how old the data would be, how long the restore takes, or whether anyone has ever performed one. The gap between having backups and...
Content pruning is the least intuitive thing in search optimisation, because every instinct says more pages should mean more traffic. Publishing feels like accumulation. Deleting feels like throwing away work somebody paid for. The mechanism that makes removal helpful is competition between your own pages. When two of...
API versioning arguments usually start at the wrong end, with where the version number goes. That is the least consequential decision in the whole subject. What matters is which changes require a new version at all, and most teams get that wrong in the direction of complacency: they ship something they believe is...
A software RFP is supposed to make suppliers comparable. Most achieve the opposite, because they specify a solution in enough detail to constrain the answer while leaving out the information anybody would need to price it. The result is five quotes spanning an order of magnitude, all technically responsive, none of...