Hacker News new | ask | show | jobs
by schubart 96 days ago
I’m familiar with spaghetti code and with lasagna code (too many layers) but I’m curious: what’s ravioli code?
4 comments

Each part of the codebase is a separate self contained module with its own wrapping (boilerplate), except there's like 30 of them and you still have to understand everything as a whole to understand the behaviour of the system anyway.
Think of what ravioli are and apply that to the same code analogy as spagetti or lassagna. The code is split in tiny units and that creates too much indirection, a different indirection than spagetti or ravioli. The architecture feels fragmented even though there's nothing wrong with each piece.
It's "spaghetti" code, but with encapsulation. [1]

Lots and lots of little components, but not in a way that actually makes anything easier to actually find.

[1] https://wiki.c2.com/?RavioliCode

a ravioli is a b̶l̶a̶c̶k̶ beige box abstraction to which you pasta arguments interface usually after forking
Is it open sauce?