|
|
|
|
|
by cfiggers
134 days ago
|
|
I really enjoyed this article—I meant to just read the first few paragraphs and skim the rest. I ended up reading every word. The core thesis sticks with me: existing tooling that helps programmers think about and enforce correctness (linters, compilers, type systems, test suites) operate primarily (and often exclusively) on one snapshot of a project, as it exists at a particular point in time. This makes those tools, as powerful as they can be, unable to help us think about and enforce correctness across horizons that are not visible from the standpoint of a single project at a single point in time (systems distributed across time, across network, across version history). I feel like the issue of semantic drift is a bigger topic that probably has roots beyond systems architecture/computer engineering. Also I found the writing style very clear. It helpfully repeats the core ideas, but (IMHO, this is subjective) doesn't do so ad nauseum. I'm interested in reading other writing from the same author. |
|