Skip to content
Mustafa Erbay
Technology · 5 min read · görüntülenme Türkçe oku

Open Source, Yet Centralized

I examine the singular control mechanisms behind open-source projects and their long-term effects through my own experiences.

100%

When “open source” is mentioned, most of us think of freedom, transparency, and a structure that evolves with the community. Yet, time and again in my career, I’ve seen that even if the code is open, the control mechanism can remain in the hands of a single center. This reality deeply affects our software architecture decisions and carries unexpected risks in the long run.

Last month, while working on the shipping module of a manufacturing ERP, I encountered a critical open-source library used by the system suddenly releasing an incompatible update. At that moment, I once again realized how misleading the centralized control behind open-source projects can be.

Open Code, Closed Control: An Illusion?

This library was a core component for supply chain integration. The code was on GitHub, there were contributors, everything seemed transparent. But one day, the main developer of the library removed an old API without any warning, causing a serious outage in our production environment.

This situation clearly demonstrated that despite the presence of a community, the ultimate authority rested with a single person or company. As a solution, we had to fork that critical function ourselves and integrate it into our internal system. This taught me that “open source” isn’t just about the visibility of the code, but also about how distributed the decision-making processes and governance truly are.

Unexpected Dependencies and Hidden Risks

I encountered a similar situation in a module I developed for a bank’s internal platform. A popular open-source JWT library used in the security layer introduced an unexpected breaking change. This change led to hours of debugging and deployment processes on our end. I specifically remember one night at 03:14 when a WAL rotation alarm went off, and the team worked until morning because of such a library update. The new version, which didn’t support old token schemes, had halted all API communication in the system.

Such situations remind us that we should look not at the project’s license, but at the real power dynamics behind it. Sudden decisions by a single center can mean sleepless nights for those of us working on the operations side. Since then, when deciding to use an open-source project, I pay attention not only to its code but also to the number of contributors, the dates of the last commits, the quality of issue management, and most importantly, who funds it. Even in the financial calculators of my own side product, I make sure to keep such dependencies to a minimum.

A Kernel Module Adventure and Security Implications

On the security front, the situation can become even more interesting. While investigating a vulnerability related to CVE-2026-31431 in a system, we had to blacklist the algif_aead kernel module. The open-source nature of this module didn’t mean that its underlying security review process was always open. Sometimes, even in open-source projects, the discovery and patching of vulnerabilities can be at the mercy of a specific group. I’ve seen instances where such modules exhibited unexpected behavior during my auditd log reviews.

This situation pushed me to be more careful when managing my own servers or performing security hardening on a client project. I learned not to assume that a component would always be the most secure or stable just because its code is open. While developing the backend for my Android spam application, I tried to identify potential breaking points of every dependency in advance and consider alternatives with a similar approach.

True Community Projects and the Principle of Trust

So, are there truly distributed and community-driven open-source projects? Absolutely. PostgreSQL is one of the best examples. Its large and active community, contributions from various organizations, and more transparent and participatory decision-making processes increase my trust in it. The fact that a project doesn’t depend on a single company’s roadmap or an individual’s whim is an important factor for me in minimizing operational risks.

My preference has always been to gravitate towards such projects. For example, when we experienced PostgreSQL performance regressions in a manufacturing company’s ERP, it was much easier to find a solution thanks to the community’s rich resources and extensive support network. While resolving a WAL bloat issue, the detailed discussions and shared best practices in community forums were invaluable. This is far more valuable than relying solely on a single company’s documentation.

A Pragmatic Approach: Focus on Governance, Not Just Code

Twenty years of experience have shown me that the open-source world is a blessing, but it also comes with a cost. For me, what matters is not just whether a technology is “open,” but also whether it is “distributed” and “truly community-driven.” If all direction for a project is in the hands of a single company or individual, that is a potential risk factor for me. Once, when I misconfigured cgroup memory.high limits in a Kubernetes deployment and got OOM-killed, it took me hours to find the source of the error. Such operational errors can escalate when the support and governance mechanism behind the technology you use is not robust.

Therefore, in my system architecture decisions, especially for critical infrastructures, I evaluate not only the project’s code but also its governance model, the number of active contributors, and its financial structure. Even the Docker Compose configurations I use for the backend of my side products are closely monitored for potential dependency breakages. Even when considering the economics of self-hosted runners, I take the cost of such dependencies into account.

Conclusion: The Fine Line of Singular Control

Open-source technologies are an indispensable part of our lives. However, through my experiences, I’ve learned very well that being “open” doesn’t always mean “decentralized” or “risk-free.” Whether on a large Turkish e-commerce site or in my personal projects, when I overlooked this fine line, I usually paid the price with operational difficulties. When making Redis OOM eviction policy choices for the backend of one of my side products, I approached it with similar philosophies.

What are your thoughts on this? Have you ever experienced such centralized control issues in the open-source projects you use? What was your most critical open-source dependency, and how do you manage it? I’d love to hear your opinions.

Paylaş:

Bu yazı faydalı oldu mu?

Yükleniyor...

How was this post?

Frequently Asked Questions

Common questions readers have about this article.

How can we mitigate the effects of centralized control mechanisms in open-source projects?
As I've learned from my personal experience, to mitigate the effects of centralized control mechanisms in open-source projects, I aim to ensure that the project is community-governed and that decision-making processes are transparent. This means increasing the diversity of contributors to the project's codebase and making decisions about the project's future collectively.
How can we protect ourselves from incompatible updates when using open-source libraries?
Before using an open-source library, I thoroughly understand its development process and update policies to assess potential risks. I've also learned to take precautions such as forking critical functions ourselves and integrating them into our internal system, or researching alternative libraries.
How are unexpected dependencies and hidden risks managed?
I've learned to manage unexpected dependencies and hidden risks by regularly monitoring updates of open-source libraries used in my projects and assessing potential risks. Additionally, I aim to design the project's architecture to be flexible and adaptable, allowing me to respond quickly to unexpected changes.
Does the presence of a community in open-source projects prevent centralized control?
As I've learned from experience, the presence of a community in open-source projects does not automatically prevent centralized control. While a community can be an important step towards ensuring transparent and distributed project management, if a single person or company holds ultimate authority, it can still influence decisions about the project's future.
ME

Mustafa Erbay

Sistem Mimarisi · Network Uzmanı · Altyapı, Güvenlik ve Yazılım

2006'dan bu yana sistem mimarisi, network, sunucu altyapıları, büyük yapıların kurulumu, yazılım ve sistem güvenliği ekseninde çalışıyorum. Bu blogda sahada karşılığı olan teknik deneyimlerimi paylaşıyorum.

Kişisel Notlar

Bu notlar sadece sizde saklanır. Tarayıcınızda yerel olarak tutulur.

Hazır 0 karakter

Comments

Server-side AI Moderation

Comments are AI-moderated server-side and stored permanently.

?
0/2000

Server-side AI moderation

✉️ Free · No spam · Unsubscribe anytime

Get notified about new posts

New content and technical notes — straight to your inbox.

  • 📌
    Best of the week Single most-worth-reading post
  • 🔧
    Toolbox notes Real tools I used this week
  • 🧠
    Behind-the-scenes Notes that don't make it to blog

We don't spam. Unsubscribe anytime. · Tracked only by Umami (self-hosted, no Google).

Your Reading Stats

0

Posts Read

0m

Reading Time

0

Day Streak

-

Favorite Category

Related Posts