An Open-Source EDG Would Still Need a Payroll
Key takeaways
- EDG’s commercial C++ front end analyzes the syntax and meaning of source code.
- An open-source release would still need skilled developers to fix bugs and support evolving C++ standards.
- Shared funding would need lasting commitments from companies that depend on the technology.
- If the C++ Alliance coordinated funding, its rules for allocating money and setting priorities would matter.
Making a developer tool free to use is easy to celebrate. Paying the people who keep it working is a harder pitch. If EDG’s commercial C++ front end became open source, with the C++ Alliance coordinating shared funding, that would be the real test.
Understanding C++ is the product
A compiler turns source code into something a computer can execute. Its front end handles the initial work of reading that code and figuring out what it means.
That includes checking whether a function expecting a number has received a string. In C++, it also means navigating templates and the rules governing how code works across different types. A short piece of source code can give a compiler plenty to argue with.
EDG supplies this language-analysis technology commercially. Companies building development tools can use it instead of implementing all that machinery themselves.
The value goes beyond supporting language features. Years of compatibility work matter, too. Adding support for new C++ features is useful only if customers’ existing code continues to work.
A public repository still needs maintainers
The first thing to examine in any proposed release would be the license terms. Being able to read source code does not automatically grant permission to modify or redistribute it. The actual license determines those rights and obligations.
An open-source EDG could let developers inspect its behavior, reproduce bugs, and propose fixes. Companies considering it for their products could examine the implementation before committing.
None of that eliminates the maintenance bill.
Someone still has to review contributed patches. Someone has to run regression tests and establish that fixing one case has not broken another. Outside contributions can help, but they also create work for the people responsible for accepting them.
For a compiler component, “it seems to work” is a particularly weak acceptance criterion. Accepting invalid code or rejecting valid code can cause problems throughout the tools built on top of it.
Publishing the repository would change who can participate. It would not remove the need for experienced developers to keep showing up.
Companies need a reason to keep paying
A commercial license gives a vendor something straightforward to sell: permission to use its technology. Shared sponsorship needs a different pitch.
The strongest one is continued maintenance. If a company depends on EDG inside a product, an abandoned front end becomes that company’s problem. Splitting the cost of maintaining a shared component could be cheaper than each company building or adopting a replacement.
The catch is familiar: companies that contribute nothing may still benefit from everyone else’s spending. If every potential sponsor waits for another company to pay, the budget never materializes.
A credible funding arrangement would need to settle three practical questions:
- Will sponsors make one-time donations or commit support for several years?
- How much funding goes to common maintenance, and how much goes to features requested by individual companies?
- What keeps development running if a major sponsor leaves?
Paid support could also sit alongside open-source code. Companies might pay for response commitments or help integrating the technology into their products.
That is a possible business model, not an established description of EDG’s terms.
The funding model is also a governance model
If the C++ Alliance coordinated sponsorship, it could pool contributions to fund shared development. But collecting money would be only half the job.
The other half would be deciding what gets built.
One sponsor might want support for a new C++ feature. Another might care most about keeping older code compatible. Both requests can be reasonable, and both draw on the same developers’ time.
The project would need clear rules for development priorities, including how much influence a larger contribution buys.
Let sponsor requests consume the roadmap, and maintenance of the shared foundation can slip. Keep postponing sponsors’ practical needs, and those companies have less reason to renew their support. Budget decisions and governance decisions belong in the same conversation.
An open-source EDG would be worth judging by whether it could retain its core developers and sustain bug fixes and standards work for years. Opening the code would be a meaningful step. The harder achievement would be making its continued maintenance something companies budget for.
Comments
Loading comments...