The author compares two implementations of a password validator — one using React, the other using Backbone — and concludes that despite 15 years of progress, the complexity of modern frameworks like React may not be justified for many use cases.
Code Comparison: Both implementations are roughly the same length and achieve the same result. Backbone’s is more explicit; React’s is more abstract.
Simplicity vs Abstraction:
Backbone is “brutally honest” — events trigger handlers, HTML is built and inserted directly.
React hides complexity behind abstractions like reconciliation, render phases, and hooks.
Debugging React:
Common issues like stale closures, uncontrolled-to-controlled input flips, and infinite loops in useEffect are hard to trace.
Fixes often involve useMemo, useCallback, or functional updates — concepts that didn’t exist in simpler frameworks.
Magic Has a Cost:
React “just works” until it doesn’t — then you need deep knowledge of internals to fix it.
Backbone and jQuery are hackable and transparent; React is layered and opaque.
The author questions whether React’s complexity is worth it for small apps. They advocate for a model that feels as intuitive and hackable as Backbone, but with modern ergonomics.
It’s a thoughtful critique of modern frontend development — and a call to rethink what simplicity really means. Want help exploring lightweight alternatives or building a Backbone-style app with modern tools?
0
2
1