why not github

microsoft's history

The centralization of software development on platforms like GitHub, especially under Microsoft's ownership, raises significant concerns about the future of our digital ecosystem. Historically, large corporations like Microsoft have used a strategy known as "Embrace, Extend, Extinguish." This strategy involves initially embracing popular standards and technologies to gain our trust, then extending these standards with proprietary features, and finally using their dominance to extinguish competition. While GitHub continues to be a valuable and widely-used platform, we need to consider the long-term implications of such centralization.

github's source code is not open source

One of the most glaring contradictions in GitHub’s structure is that while it serves as a hub for open-source projects, GitHub itself is not open source. This means that the very platform on which many of us build and share open-source software is closed off, with its source code hidden from the public. This lack of transparency is troubling because it contradicts the open-source ethos and keeps us in the dark about the platform’s inner workings, including potential security vulnerabilities or questionable practices.

history is repeating, be careful

When Microsoft acquired GitHub, many in the open-source community felt apprehension. The fear was, and still is, that Microsoft might leverage its ownership of GitHub to further consolidate its influence over software development, subtly steering the industry in directions that serve its interests. If we become too reliant on GitHub, we might inadvertently contribute to a process that reduces competition and stifles innovation—hallmarks of a monopolistic environment.

Relying solely on GitHub poses a number of risks. First, there’s the danger of vendor lock-in. If Microsoft were to introduce new, proprietary features to GitHub that are deeply integrated with other Microsoft products, we might find it increasingly difficult to transition to other platforms. Over time, this could lead to a situation where we are effectively trapped within a single ecosystem, losing the freedom to choose the tools and platforms that best meet our needs.

Moreover, GitHub has already begun to introduce new features that are either paywalled or could be in the future. For example, advanced CI/CD (Continuous Integration/Continuous Deployment) features, more extensive storage options, and advanced security scanning tools have been introduced as premium services. This shift towards monetization forces us to pay for features that we might have once accessed for free or through other open-source platforms. As more features get added and potentially paywalled, we could find ourselves needing to pay for basic functionalities that were once freely available.

As more of us gravitate towards GitHub, alternative platforms could be pushed out of the market. This extinction of alternatives would not only reduce the choices available to us but also weaken the competitive pressures that drive innovation. In a monopolistic environment, the controlling entity gains significant influence over the direction of the industry, which can lead to the enforcement of proprietary standards that do not necessarily align with our broader interests as a community.

The importance of maintaining our independence from such centralized systems cannot be overstated. By diversifying the platforms and tools we use, we preserve our freedom to choose and avoid being locked into any single vendor’s ecosystem. This independence is crucial for fostering a competitive environment where new ideas and technologies can emerge and thrive.

what we can do

In a nutshell, we have become more accepting of code that doesn't come from github, for example, on this site you can download code files directly to your computer and update them with a program I made, this solution isn't necessarily what we're used to but we have to become more accepting of different sites and methodologies as to how we get code to do stuff.

This situation is much like the choice between buying locally grown food from a farm stand on the side of the road versus going to a supermarket. When we buy directly from a local farmer, we support our community, ensure freshness, and maintain a connection to the source of our food. Similarly, by using decentralized and independent software platforms, we support a diverse and resilient digital ecosystem. On the other hand, relying solely on a supermarket, much like depending on a single platform like GitHub, might be convenient, but it contributes to the centralization of resources and power, which can lead to fewer choices and higher dependencies over time.

Decentralization also provides resilience against the monopolistic tactics of large corporations. By avoiding an over-reliance on a single platform, we protect ourselves and our broader community from the negative consequences of strategies like "Embrace, Extend, Extinguish." Decentralized platforms are less vulnerable to being co-opted by corporate interests and are more likely to prioritize transparency, collaboration, and inclusivity.

Supporting decentralized platforms is not just a matter of practicality; it’s a commitment to a healthier, more democratic digital ecosystem. It empowers our communities, preserves our freedoms, and ensures that the development of technology remains in the hands of the many, not the few. As developers and users, we have a responsibility to consider the long-term impacts of our choices and to support systems that promote a diverse, resilient, and innovative software development environment.

yeah, but everyone is on github

However, we also recognize that choosing not to use GitHub can lead to feeling cut off from a broader social and professional sphere. GitHub is more than just a tool; it’s a community where many of us collaborate, share knowledge, and build professional networks. The fear of being left out of the loop or missing out on valuable opportunities can make it challenging to step away from such a dominant platform. Yet, it's important to understand that this reliance on GitHub is partly a cognitive bias—an attachment to what is familiar and widely accepted.

By consciously opening our minds to new possibilities and exploring alternative platforms, we can begin to see the value in decentralization and diversity. This process of exploration not only reduces our dependence on any single platform but also helps us break free from the biases that limit our choices. As we discover new tools and communities, we become more adaptable and resilient, lessening the hold that any one platform, like GitHub, might have over us, and evening the distribution of popularity to other platforms.


edit this page