Implication of Foundation vs Profit Oriented Company Software Development

Software is developed and maintained by different types of organisations: non-profit foundations, for-profit corporations, and community-driven projects. Each model has distinct implications for software direction, quality, longevity, and community health.

Foundation-Driven Development

Foundations are non-profit organisations that steward open source projects. Examples include:

  • Linux Foundation: Hosts the Linux kernel and hundreds of projects.
  • Apache Software Foundation: Apache HTTP Server, Kafka, Hadoop.
  • Mozilla Foundation: Firefox, Thunderbird.
  • CNCF (Cloud Native Computing Foundation): Kubernetes, Prometheus, Envoy.
  • Eclipse Foundation: IDE, OSGi, IoT.

Advantages

  • Neutral governance: No single company controls the project roadmap.
  • Long-term focus: Stability and sustainability over quarterly profits.
  • Broad contributor base: Developers from competing companies collaborate.
  • Transparent processes: Public mailing lists, open governance models.
  • Vendor neutrality: Reduces lock-in to a single vendor.

Challenges

  • Funding: Relies on donations, sponsorships, and membership fees.
  • Decision speed: Consensus-driven processes can be slow.
  • Resource concentration: Key contributors may be concentrated at a few member companies.

Profit-Driven Development

Corporations develop software for commercial benefit. Models include:

  • Proprietary software: Source code is closed. Revenue from licences or subscriptions (Microsoft, Adobe).
  • Open core: Core is open source; enterprise features are proprietary (GitLab, HashiCorp).
  • SaaS: Software delivered as a service (Salesforce, Slack).
  • Dual licensing: Open source version + commercial licence with different terms (MySQL, Qt).

Advantages

  • Funding stability: Revenue from customers funds development.
  • Professional support: Dedicated support teams and SLAs.
  • Rapid innovation: Clear commercial incentives for features and improvements.
  • Integration: Deep integration with enterprise ecosystems.

Challenges

  • License changes: Companies may change licences to benefit shareholders (e.g., HashiCorp's BUSL, Redis Labs' SSPL).
  • Abandonment risk: Projects may be discontinued if unprofitable.
  • Feature prioritisation: Features may favour enterprise customers over community needs.
  • Governance concentration: One company makes key decisions.

Community-Driven Development

Some projects are governed by communities without a formal foundation:

  • Benevolent dictators: A single leader (Linus Torvalds, Guido van Rossum) guides development.
  • Meritocracy: Contributors earn influence through sustained contribution.
  • Grassroots: No formal governance; decisions emerge from discussion.

Advantages

  • High engagement: Contributors are passionate about the project.
  • Flexibility: Fast decision-making without bureaucracy.
  • Strong community culture: Shared values and norms.

Challenges

  • Succession risk: Dependency on a single leader.
  • Burnout: Volunteer contributors may tire.
  • Sustainability: Funding may be uncertain.

Comparative Analysis

Aspect Foundation Profit-Driven Community
Primary goal Public benefit Revenue Shared vision
Governance Board, members CEO/board Community
Funding Donations, memberships Sales, subscriptions Volunteers
License stability High Medium High
Innovation speed Medium High High
Community health Strong Varies Very strong
Longevity High Medium Medium

Implications for Users and Developers

  • Users: Foundation software offers stability and neutrality. Profit-driven software offers professional support and enterprise features. Community software offers agility and deep technical excellence.
  • Developers: Foundation and community projects offer the ability to contribute and influence direction. Profit-driven projects may offer employment but restrict contribution to closed components.
  • Organisations: Evaluate governance, licence stability, and vendor lock-in when selecting software.