On Bloat
Open Source and “Accept Everything”
- Strong disagreement with the slide’s “true open source way: accept everything that comes.”
- Maintainers argue that accepting all contributions leads to scope creep, maintenance burden, and burnout.
- Others interpret it as tongue‑in‑cheek or as “accept PRs in principle, but help contributors fix them” rather than literal blind merging.
- Discussion clarifies that neither “cathedral” nor “bazaar” (e.g., Linux) actually means “merge everything”; real projects sit on a spectrum of review strictness.
What Counts as Bloat?
- Multiple notions:
- Performance (slow UIs, long bank logins, FPS obsession).
- Code/asset size (MBs of JS/CSS/HTML for simple pages).
- Structural complexity (layers of indirection, over‑abstracted configs).
- Feature bloat (high size‑to‑feature ratio, unnecessary options).
- Anecdote about needing half a day to change a button color due to cascading overrides is used as a vivid example of “bloat as indirection.”
Frameworks, Dependencies, and Transitive Complexity
- Heavy frameworks (web and otherwise) seen as major bloat drivers; you inherit authors’ bloat tolerance.
- Some developers avoid frameworks and stick to standard libraries, especially in languages already geared toward web backends.
- Others note business pressure and deadlines effectively force framework use (e.g., swapping a lean custom site for WordPress due to editors and marketing needs).
- Dependencies are defended as sometimes the only way to ship at all; alternative is “never ship” or needing “100 programmer‑years.”
- Tools like deps.dev and better dependency/performance analysis are welcomed and requested.
Is Web/Bank Bloat Economically Important?
- One side: banks and corporate sites are “good enough,” not losing meaningful business over latency; obsessing over FPS is seen as developer OCD.
- Opposing view: sluggish banking UIs and “enshittified” apps do cause user churn and frustration; fast, simple interfaces can be a competitive factor, even if not primary.
Human, Organizational, and Market Causes
- Claimed root cause: many developers prioritize tech toys (Kubernetes, microservices, flashy stacks) over understanding the business domain.
- Management and marketing are blamed for demanding “modern” architectures and long feature checklists to impress stakeholders, rewarding complexity over simplicity.
- Inside large companies, features may be built mainly to fuel promotions, then later quietly sunsetted as unused maintenance burdens.
Complexity Beyond Software
- Several comments link software bloat to broader societal complexity (tax code as analogy: layers added to fix issues, almost never removed, with opaque side‑effects).
- Some argue this path‑of‑least‑resistance—adding instead of simplifying—is a general human and institutional pattern.
Diagnoses and Proposed Remedies
- “Lack of vigilance and discipline” is seen by some as accurate but too abstract; others say naming the problem is still useful, culture has to change first.
- Suggestions include:
- Being much stricter about features whose cost/benefit is unclear.
- Avoiding unnecessary dependencies and monitoring dependency trees over time.
- Better static/dynamic tools to highlight dependency bloat and performance hot spots.
- Languages/runtimes that constrain what libraries can do (effect systems, sandboxing), so dependency compromise is less catastrophic.
Reception of the Talk
- Several readers found the content basic, aimed at juniors, or lacking in concrete solutions.
- Others appreciated it as a clear restatement of often‑ignored fundamentals and a prompt for discussion, even if not groundbreaking.
- Some critique the aesthetics of the simple slide deck; others argue that plain, fast, content‑focused slides themselves reinforce the anti‑bloat message.