Hacker News new | ask | show | jobs
by ribelo 305 days ago
He basically just described the FCIS[0] architecture—the same one Gary Bernhart laid out thirteen years ago. We love reinventing the wheel. Chaplicki did it with ELM, Abramov with Redux, day8 did it with re-frame, and the beat goes on.

I’m still amazed it isn’t obvious: every piece of software should be a black box with a pin-hole for input and an even tinier pin-hole for output. The best code I’ve ever touched worked exactly like that and maintaining it was a pleasure, everything else was garbage. I push this rule in every project I touch.

[0] https://www.destroyallsoftware.com/screencasts/catalog/funct...

3 comments

> Chaplicki did it with ELM, Abramov with Redux, day8 did it with re-frame, and the beat goes on.

None of these projects reinvented the concept of FCIS.

These are just projects that had functional elements, or were outright functional languages. This is like saying jsx reinvented markup languages.

I think the actual point was,

> We love reinventing the wheel.

Could you point to the place in the video that you felt resembled this principle most? I don’t really see the connection, but am open to it.
"The Unaccountability Machine" does a great job summarizing the thought of Stafford Beer, who explained basically exactly what you said as the only viable strategy for designing and managing complex systems.