Selecting a technology vendor without relying on the demo
Demonstrations show the path the vendor has rehearsed. A structured evaluation shows how the product handles your awkward cases.
Blogs
Articles on the decisions that actually shape a project — architecture, cost, delivery and the trade-offs behind them.
Demonstrations show the path the vendor has rehearsed. A structured evaluation shows how the product handles your awkward cases.
Tokens turn visual decisions into named values shared by design and code. Naming them well is the whole trick.
Performance tests answer specific questions. Running load without a question produces numbers nobody can act on.
Accessibility remediation on a live site works best as a prioritised programme rather than an attempt to fix everything at once.
Custom modules are where Drupal projects accumulate their long-term cost. A few conventions keep them readable and upgradeable.
A fixed price on genuinely novel work is a negotiation about who absorbs uncertainty. There is a more honest structure, and clients increasingly prefer it.
Store listings are a search and conversion problem. Most of the available improvement is in the first screenful.
Extracting structured data from real-world documents is achievable. The engineering is in confidence thresholds and review design.
Events decouple producers from consumers and make the overall flow harder to see. Both effects are real and need managing.
Most internal API pain comes from a handful of decisions: resource shape, error handling, pagination and versioning. Getting them right early is cheap.
A Drupal theme is a long-lived asset. Template structure, naming and component boundaries determine how much of it survives the next visual refresh.
A recovery plan that has never been executed is a document, not a capability. The test is the deliverable.
Progressive delivery limits how many users a bad release can reach. The mechanism matters less than having a rehearsed way back.
Most navigation reflects the organisation chart rather than user intent. Card sorting and tree testing fix that cheaply.
API tests run faster than interface tests and break less often than unit tests when internals change. They are the most cost-effective layer for most systems.
Component libraries fail for organisational reasons more often than technical ones. Governance, escape hatches and adoption metrics decide the outcome.