Hi all,

I was having a bit of a surf yesterday and found this comment from Erik:

http://phpterror.wordpress.com/2009/08/26/oxid-esales-show-me-your-94-unit-test-coverage/#comment-16

The original post was about unpublished Unit-Tests, which wasn't terribly
interesting, but it was the comment that caught my eye. It describes the
internal code deployment system of OXID and why it's tricky to accept code
contributions.

It's now clear to me why the switch to a distributed version platform such
as GIT/GITHub/BitBucket is so difficult: OXID has one codebase, and the
deployment scripts remove certain parts for the different distributions
(i.e the SOAP-Code gets removed for PE, and the WYSIWYG-Editor gets removed
for CE etc.). This means it isn't practical or even possible for OXID to
share their code, and why we only have access to the neutered pseudo SVN
repository at http://svn.oxid-esales.com, where almost all authors are
called "nightlybuild".

The whole structure got me thinking: why does this problem exist?, and I'm
pretty sure that it all boils down to the marketing of the editions
(CE/PE/EE). Each edition is advertised as a separate product, each with
(basically) a separate license. Since most of the codebase of the 3
editions are the same, people who want to contribute need to jump through
hoops and sign NDAs/similar documents to agree that the code belongs to
OXID and that they have the right to distribute it in all three editions
without the requirement of making PE/EE open-source.

So my question: why not do it differently? The name "community edition" is
(in my opinion) misleading and seems to have earned the reputation of "take
this, go away, and stop complaining about it Dave". Why not do something
completely different and take CE, rename it to "OXID eSales Basic", keep
the license as GNU and continue to sell your commercial/encrypted PE/EE
features under a different license as 'addon packs', such as "Professional
Addon Pack" and "Enterprise Addon Pack"?

This way, you can keep the "basic" core open-source and even put it on
GitHub, where you will be able to obtain free code contributions/patches
from many many developers, and it will still allow you to sell your
advanced features and not lose money. The community developers wouldn't
have to sign any silly NDAs either. The PE/EE Addon packs could still be
versioned internally and wouldn't have to be open-source.

So, kurz zusammengefasst, my suggestion would be:

- Replace the CE-Edition as "OXID eSales Basic"
- Sell the PE-Edition as "OXID eSales Basic + Professional Addon Pack"
- Sell the EE-Edition as "OXID eSales Basic + Enterprise Addon Pack"

...this would solve your licensing issues, would give you the ability to
harness the power of the OXID developer community. And to be super-sure
that you don't have to distribute your code for PE and EE, you could
deliver each product as two separate ZIP files. e.g. (oxid-basic.zip and
oxid-pe-addonpack.zip). Internal development/continuous-integration testing
wouldn't be too hard either: you would just need a few scripts to install
OXID-Basic and the addon packs and to run your tests on them.


What does anyone else think? I know it probably won't happen, but I fear
that OXID will soon slowly die away into insignificance if they don't
update their workflows to something more modern.


Dave
_______________________________________________
dev-general mailing list
dev-general@lists.oxidforge.org
http://dir.gmane.org/gmane.comp.php.oxid.general

Reply via email to