3 ms·
The technical term for that is "a Lava Flow". The code melts and changes for awhile... and then congeals into unchanging rock again.
by gHosts 6y ago
The technical term for that is "a Lava Flow".
The code melts and changes for awhile... and then congeals into unchanging rock again.
- lstamour 6y agoI'm using that term from now on. :) One project I worked on had almost a half dozen "lava flows" in the JavaScript alone... I had a hard time convincing folks we could rewrite it using ASTs because all the rewrites scared folks away from any further rewrites!
- mr_coleman 6y agoI've seen that applied to long running legacy projects. This is how they did things back in 2008. Here someone discovered an orm library. Now here, they started to try to introduce some microservice event driven architectural pattern that was all the rage in the blogs that year....
- Joker_vD 6y agoThe best (well, worst, really) part is when it ends in a state where the parts are almost right, but not quite. The result is, quote one of my coworkers, "We ended up with the architecture that is so flexible that we can't change a single bloody thing in it! What the hell!" The whole is flexible, but this flexibility is pointless: you can make the parts behave differently, but there is only one behaviour that is actually useful; you can combine things together differently, but there are at most two combinations that do things in a useful way; etc.
- flavious 6y agoSounds like the effects of temporal coupling, or "settism and gettism", or other principles, which are violated. People are blinded nowaways too much by SOLID, and forget about the remaining 20 principles.