
We Switched Our License (Again): Why Doppelganger is Now Under GPLv3
Software development is an exercise in iteration—not just in the code, but in the governance.
When I first launched Doppelganger, I started with the Sustainable Use License (SUL). At the time, I wanted to protect the project’s commercial value by restricting others from selling the tool as a service. But I quickly realized that a "non-commercial" gate was too restrictive for a growing developer tool and created unnecessary friction for legitimate users. Just two weeks ago, I shifted to the Notice & Attribution License (NAL v1.0) as a targeted experiment in pure stewardship—prioritizing credit over commercial blocks.
However, as the project scales and the community expands, I’ve realized that custom licenses can be a hurdle. To build a professional, sustainable future, we need a license that is globally recognized, legally robust, and compatible with the modern open-source ecosystem.
Doppelganger is officially moving to the GNU General Public License v3.0 (GPLv3).
The Strategic Evolution#
This isn't just a change in text; it’s a change in philosophy. We’ve moved through three distinct phases in record time to find the right home for this project:
- Phase 1 (SUL): Focused on monetization by restricting "software-as-a-service" use.
- Phase 2 (NAL): Focused on attribution, moving away from commercial restrictions but using a custom legal framework.
- Phase 3 (GPLv3): Moving toward a reciprocal model. You can use it, you can sell it, and you can build on it—but the engine must stay open, and the attribution must remain intact.
By adopting GPLv3, we gain explicit patent protections and guaranteed compatibility with the massive library of Apache 2.0-licensed tools that modern developers rely on.
The "Price Monitor" Principle: Use vs. Distribution#
One of the reasons I moved away from the SUL was that its "internal business use" clause could be confusing for people building user-facing data services. I want to use a Universal User-Facing Price Monitor as the ultimate test of our new GPLv3 home.
The Scenario#
Suppose you build a platform where users enter any URL, and your service uses Doppelganger in the background to track that price and notify them of changes.
- The Verdict: This is a service, not software distribution.
- The GPLv3 Rule: Because you are providing data (the result) over a network and not forcing the user to download or run the Doppelganger engine on their own machine, you have no obligation to attribute me on your UI or open-source your scraper logic.
The GPLv3 respects the "SaaS" model. If you build a massive platform on top of this engine, you provide the results; I provide the engine. I don't need my name on your price alerts or your customer dashboards.
When the License Actually Kicks In#
The only time the GPLv3 "bites" is if you convey the software. If you take the Doppelganger source code, modify it, and then sell or give that modified engine to someone else to run:
- Attribution: You cannot delete the history or the copyright of the project.
- Source Sharing: You cannot keep your modifications secret from the people you gave the software to.
This ensures the software engine stays free and the community benefits from improvements, while the businesses built on top of it remain private and proprietary.
By using the GPLv3, I am signaling that this is a professional-grade tool that respects the freedom of its users but demands respect for its creator. The foundation is set. The license is battle-tested. The lineage is secure.