logoalt Hacker News

ensocodetoday at 7:55 AM2 repliesview on HN

This resonates a lot if you’ve ever worked in system integration.

In practice, most of the complexity comes exactly from what’s described here: every system has a rich internal model, but the moment data crosses a boundary, everything degrades into strings, schemas, and implicit contracts.

You end up rebuilding semantics over and over again (validation, mapping, enrichment), and a lot of failures only show up at runtime.

I’m skeptical about “one model to rule them all”, but I strongly agree that losing semantics at system boundaries is the core problem.


Replies

stingraycharlestoday at 8:12 AM

It’s one of the reasons AWS ended up happening, when you make REST APIs the only allowed contract.

nlitenedtoday at 9:02 AM

> You end up rebuilding semantics over and over again (validation, mapping, enrichment), and a lot of failures only show up at runtime.

I think die-hard fans of static typing mostly fail to acknowledge this objective reality and its implications. Every time they encounter this problem again and again, they approach it as if nobody thought of this before, and didn’t develop reliable abstractions to productively work in these environments.

show 1 reply