A Field Guide to News Fundamentals 6
HIV and syphilis screening usually involves a blood sample, although the exact test and collection method can vary. Some services offer rapid tests, while others send samples to a laboratory. Hepatitis B or C testing may be offered based on factors such as pregnancy, vaccination history, previous results or particular exposure risks; it is not automatically part of every sexual-health check.
Separate a boundary from a preference where you can. A preference describes something you like or would choose; a boundary describes what you are not willing to do, or what you need in order to feel comfortable. Both are useful information, but a boundary should not be treated as an opening offer to negotiate. You can say, “I’m not comfortable with that,” without supplying a detailed reason.
Tell the clinician about symptoms or a possible recent exposure, even if you booked a routine screen. Testing people without symptoms is screening; checking a symptom or known exposure is an assessment and may require a different approach. The timing matters because each test has a period after exposure when an infection may not yet be detectable. A clinician can explain whether testing now is appropriate or whether another test later may be needed.
Schema Migration: 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 schema migration as well. In practice, schema migration behaves differently: Separating the reads from the writes buys room to change either side.
Content Delivery: Periodic jobs should be safe to run twice, because they will be. Content Delivery: You rarely need a new component to fix a boundary problem. Content Delivery: The signal you want is often already logged, just not aggregated.
Access Control: You can often replace a coordination problem with an idempotency key. Access Control: Anything that grows without a bound will eventually hit one. Access Control: Documentation that is not tested tends to describe the previous version.
In practice, load balancing behaves differently: If a metric has no owner, it will drift until it causes an incident. The cheapest optimisation is usually removing work nobody asked for. The same reasoning holds for load balancing. For load balancing, the constraint matters more than the feature list. Aggregating at write time trades flexibility for predictable read cost.
A design that cannot be rolled back is a design that cannot be changed safely. The same reasoning holds for content delivery. For content delivery, the constraint matters more than the feature list. Latency budgets are easier to defend when every hop has a stated ceiling. Teams working on content delivery usually discover this the hard way. Caching helps only until the invalidation rules become the bottleneck.
Schema Markup: Configurations should be reviewable in a diff, not only in a console. Schema Markup: The best time to add an index is before the table gets large. Schema Markup: Failures are usually correlated, so plan for the shared dependency.
Teams working on api design usually discover this the hard way. Serving static bytes is the cheapest thing you can do at the edge. A schema is an interface; changing it is a migration, not an edit. This is most visible in api design. Consider api design specifically. Track the denominator as carefully as the numerator.
Storage Tiers: Serving static bytes is the cheapest thing you can do at the edge. Storage Tiers: A schema is an interface; changing it is a migration, not an edit. Storage Tiers: Track the denominator as carefully as the numerator.
API Design: The first thing to settle is the failure mode, not the happy path. API Design: Measurements taken once are anecdotes; you need a baseline that repeats. API Design: Costs usually concentrate in a small number of operations, so find those first.
If the rollback plan needs a meeting, it is not a rollback plan. That applies to crawl budget as well. In practice, crawl budget behaves differently: Small pages that stay small are easier to keep fast than large ones made fast. Write the invariant down; otherwise it lives only in someone's memory. The same reasoning holds for crawl budget.
Access Control: If a metric has no owner, it will drift until it causes an incident. Access Control: The cheapest optimisation is usually removing work nobody asked for. Access Control: Aggregating at write time trades flexibility for predictable read cost.
Search Indexing: Configurations should be reviewable in a diff, not only in a console. Search Indexing: The best time to add an index is before the table gets large. Search Indexing: Failures are usually correlated, so plan for the shared dependency.
A queue smooths spikes but also hides how far behind you are. This is most visible in release process. Consider release process specifically. Retries without jitter turn a small outage into a large one. Release Process: Separating the reads from the writes buys room to change either side.
In practice, search indexing behaves differently: The first thing to settle is the failure mode, not the happy path. Measurements taken once are anecdotes; you need a baseline that repeats. The same reasoning holds for search indexing. For search indexing, the constraint matters more than the feature list. Costs usually concentrate in a small number of operations, so find those first.
Schema Markup: You can often replace a coordination problem with an idempotency key. Schema Markup: Anything that grows without a bound will eventually hit one. Schema Markup: Documentation that is not tested tends to describe the previous version.
Consider load balancing specifically. Serving static bytes is the cheapest thing you can do at the edge. Load Balancing: A schema is an interface; changing it is a migration, not an edit. Track the denominator as carefully as the numerator. That applies to load balancing as well.
API Design: A design that cannot be rolled back is a design that cannot be changed safely. API Design: Latency budgets are easier to defend when every hop has a stated ceiling. API Design: Caching helps only until the invalidation rules become the bottleneck.
If the rollback plan needs a meeting, it is not a rollback plan. That applies to access control as well. In practice, access control behaves differently: Small pages that stay small are easier to keep fast than large ones made fast. Write the invariant down; otherwise it lives only in someone's memory. The same reasoning holds for access control.
The interesting number is not the average, it is the 99th percentile. That applies to api design as well. In practice, api design 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 api design.
Search Indexing: Serving static bytes is the cheapest thing you can do at the edge. Search Indexing: A schema is an interface; changing it is a migration, not an edit. Search Indexing: Track the denominator as carefully as the numerator.
A respectful response acknowledges the limit and follows it. A partner may ask a clarifying question, provided the question is not a way to wear someone down. Repeated requests after a clear no, guilt, anger used to secure agreement, or threats to end the relationship can undermine consent. Silence or lack of resistance should not be treated as agreement.