Autodiscover Independent coverage of news

Understanding Technology Fundamentals 5: Costs, Limits and Trade-offs

By Michael Torres · · 1267 words
Understanding Technology Fundamentals 5: Costs, Limits and Trade-offs

Cloud Infrastructure: A queue smooths spikes but also hides how far behind you are. Cloud Infrastructure: Retries without jitter turn a small outage into a large one. Cloud Infrastructure: Separating the reads from the writes buys room to change either side.

Search Indexing: You can often replace a coordination problem with an idempotency key. Search Indexing: Anything that grows without a bound will eventually hit one. Search Indexing: Documentation that is not tested tends to describe the previous version.

Edge Caching: A design that cannot be rolled back is a design that cannot be changed safely. Edge Caching: Latency budgets are easier to defend when every hop has a stated ceiling. Edge Caching: Caching helps only until the invalidation rules become the bottleneck.

Teams working on observability usually discover this the hard way. If the rollback plan needs a meeting, it is not a rollback plan. Small pages that stay small are easier to keep fast than large ones made fast. This is most visible in observability. Consider observability specifically. Write the invariant down; otherwise it lives only in someone's memory.

A design that cannot be rolled back is a design that cannot be changed safely. That applies to cost controls as well. In practice, cost controls behaves differently: Latency budgets are easier to defend when every hop has a stated ceiling. Caching helps only until the invalidation rules become the bottleneck. The same reasoning holds for cost controls.

Periodic jobs should be safe to run twice, because they will be. This is most visible in storage tiers. Consider storage tiers specifically. You rarely need a new component to fix a boundary problem. Storage Tiers: The signal you want is often already logged, just not aggregated.

Monitoring Alerts: The interesting number is not the average, it is the 99th percentile. Monitoring Alerts: Adding a cache in front of a slow query is a fix; fixing the query is a cure. Monitoring Alerts: Every abstraction you add is a place where behaviour can differ from intent.

API Design: A queue smooths spikes but also hides how far behind you are. API Design: Retries without jitter turn a small outage into a large one. API Design: Separating the reads from the writes buys room to change either side.

Consent is closely related to sexual boundaries. It concerns a freely made agreement to a specific activity, and it can be withdrawn. Agreement to one form of contact does not automatically mean agreement to another, and a previous yes does not settle what someone wants now. NHS guidance in the UK, for example, explains consent in terms of choice and freedom to change one’s mind; legal definitions and requirements differ across countries.

Consent also matters in digital communication. Permission to receive a private message or image is not permission to share it with other people. Before recording, saving or forwarding intimate material, ask clearly and respect the answer. Rules about intimate images differ across countries and may carry serious legal consequences. Public-health and sexual-assault organisations publish consent guidance; for example, the UK Crown Prosecution Service describes consent under the law of England and Wales as agreement by choice, with freedom and capacity to make that choice. That legal wording is not a universal definition. For personal questions, speak with a clinician or qualified sexual-health educator; available guidance also differs by country and age. If someone feels unsafe, a local support service can explain confidential options.

Access Control: A queue smooths spikes but also hides how far behind you are. Retries without jitter turn a small outage into a large one. That applies to access control as well. In practice, access control behaves differently: Separating the reads from the writes buys room to change either side.

Cost Controls: If the rollback plan needs a meeting, it is not a rollback plan. Cost Controls: Small pages that stay small are easier to keep fast than large ones made fast. Cost Controls: Write the invariant down; otherwise it lives only in someone's memory.

Check again when the activity changes or when someone’s response is difficult to interpret. A simple question can make room for an honest answer: “Do you want to keep going?” If the answer is uncertain, stop and give the person space. Hesitation is not an invitation to persuade them.

A design that cannot be rolled back is a design that cannot be changed safely. The same reasoning holds for cloud infrastructure. For cloud infrastructure, the constraint matters more than the feature list. Latency budgets are easier to defend when every hop has a stated ceiling. Teams working on cloud infrastructure usually discover this the hard way. Caching helps only until the invalidation rules become the bottleneck.

Cloud Infrastructure: Periodic jobs should be safe to run twice, because they will be. You rarely need a new component to fix a boundary problem. That applies to cloud infrastructure as well. In practice, cloud infrastructure behaves differently: The signal you want is often already logged, just not aggregated.

Access Control: The interesting number is not the average, it is the 99th percentile. Access Control: Adding a cache in front of a slow query is a fix; fixing the query is a cure. Access Control: Every abstraction you add is a place where behaviour can differ from intent.

A clinician may discuss whether a test is useful now or whether it should be repeated later. Tests can take time to detect an infection after exposure, and the relevant interval varies by infection and test. A negative result soon after a possible exposure may not settle the question. The service can explain the timing for the specific test and whether follow-up is appropriate.

Schema Markup: If a metric has no owner, it will drift until it causes an incident. Schema Markup: The cheapest optimisation is usually removing work nobody asked for. Schema Markup: Aggregating at write time trades flexibility for predictable read cost.

Release Process: If a metric has no owner, it will drift until it causes an incident. Release Process: The cheapest optimisation is usually removing work nobody asked for. Release Process: Aggregating at write time trades flexibility for predictable read cost.

Log Analysis: Periodic jobs should be safe to run twice, because they will be. Log Analysis: You rarely need a new component to fix a boundary problem. Log Analysis: The signal you want is often already logged, just not aggregated.

Periodic jobs should be safe to run twice, because they will be. This is most visible in backup strategy. Consider backup strategy specifically. You rarely need a new component to fix a boundary problem. Backup Strategy: The signal you want is often already logged, just not aggregated.

The interesting number is not the average, it is the 99th percentile. That applies to release process as well. In practice, release process behaves differently: Adding a cache in front of a slow query is a fix; fixing the query is a cure. Every abstraction you add is a place where behaviour can differ from intent. The same reasoning holds for release process.

A queue smooths spikes but also hides how far behind you are. This is most visible in log analysis. Consider log analysis specifically. Retries without jitter turn a small outage into a large one. Log Analysis: Separating the reads from the writes buys room to change either side.

Schema Markup: If the rollback plan needs a meeting, it is not a rollback plan. Schema Markup: Small pages that stay small are easier to keep fast than large ones made fast. Schema Markup: Write the invariant down; otherwise it lives only in someone's memory.

Related reading