FAQs
What is Goldegg?
The Goldegg project will fund *simultaneous* work at three layers of the software stack: Plone, CMF, and Five/Zope 3. This will allow architectural decisions to get attention and results through coordination between layers.
Goldegg will provide resources (money and time) to help Plone and CMF answer a looming question: "What about Zope 3?"
These steps will lead to the ultimate goal of increasing the adoption of Zope and Plone worldwide.
What are the primary goals of Goldegg?
The Goldegg motto is: "The promise of Zope 3 in the practice of Plone." Goldegg wants evolutionary, near-term improvements from the new component architecture.
Goldegg has two golden rules:
1. This project must succeed. Scope will be narrowed until risk is manageable.
2. Durable impact. The results from the investment should be in mainstream use 2 years from now.
Why is this needed?
Plone needs a medium-term roadmap for using the Zope 3 component architecture, which is now available in Zope 2 via the "Five" bridging project. The CMF also needs a medium-term roadmap for using Five. Five itself has more work to be done, including merging updates into future versions of Zope 2. Finally, Zope 3 itself has functionality that needs to be implemented.
All of these stack layers have relationships with each other that, due to technical, schedule, and social issues, could use ongoing improvements.
Leveraging the Zope 3 architecture in Plone requires a well-managed, serious effort. Additionally, Plone needs to work better with the CMF and Five projects, to improve those layers where possible and avoid duplication.
Who will Goldegg benefit?
Our goal is to ensure that Goldegg initiative benefits all parts of the Zope and Plone ecosystem. We have the following categories of users in mind:
- Current Zope and Plone customers
- Prospects evaluating Zope and Plone
- Developers across the layers
- Companies that are supporting the Zope and Plone initiatives
In general, anybody that cares about Zope 3, Five, CMF, Plone, or a combination thereof will benefit. Improvements will be made at each layer, coordination will be improved between layers, and the Plone world will start using Zope 3 technologies.
Specifically, though, companies that put in funding and/or manpower for the core development will be promoted as sponsors of the Goldegg process. These companies will *gain a reputation* as the large stakeholders and key players in the stack.
Want to be known as a serious solution delivery company? Invest in Goldegg, then tell your marketing channels that you are a major player. Are you a major Plone user looking to return some value to the value chain? Goldegg can be a process for larger-scale, aggregated improvements.
I don't care about Plone. Is this Plone-centric?
Yes and no. The first funded Goldegg cycle, as explained below, came from a CIGNEX customer that wanted Plone to use more of Zope 3. As such, Goldegg is focused on the stack starting with Plone and ending with Zope 2/3.
However, Goldegg is also funding activity to move forward the stacks below Plone and to move more activity out of Plone and into CMF. In fact, a majority of the Goldegg 1 community budget is spent outside the Plone layer.
Is Goldegg forcing decisions on Zope/Five, CMF, or Plone?
Emphatically no. Those projects make a roadmap and Goldegg provides funding to execute it. Primarily, Goldegg hopes that, by paying stack leaders to be popes, and to do so in roughly the same release cycle, that individual roadmaps improve and the stack as a whole is managed a bit less in isolation.
Goldegg follows the will of the stack popes. Subprojects that get funded have to be approved by the stack layers.
Is Goldegg a product, a project, or a process?
Goldegg is *not* a product or a framework. It isn't meant to produce new software that isn't part of the Plone/CMF/Zope world.
Instead, it is a process for aggregating funding into improving the stack through a series of project cycles.
Is this a rewrite/port of Plone to Zope 3?
Definitely not. The Plone community is interested in shorter release cycles with evolution, not revolution, in the architecture.
How does this relate to Z3 ECM?
Goldegg is different from and complementary to Z3 ECM. Goldegg isn't a development project, whereas Z3 ECM is about developers crafting a ECM framework for use in a number of products.
Most importantly, though, Goldegg is about incremental steps, similar to Five. Z3 ECM is designing a new framework aimed at the enterprise market. As such, future versions of the CMF could integrate the components created during the Z3 ECM project, should that be the natural path for the two projects.
Finally, Goldegg is about funding existing players and thus supporting the existing communities.
How did Goldegg start?
Munwar Shariff of CIGNEX and Paul Everitt of ZEA had previously discussed an initiative to support the CMF roadmap using Five, and then to get Plone to work with the CMF community to leverage the work. In July 2005, Munwar Shariff convinced one of his customers to fund this open source initiative. In addition, CIGNEX is supplementing the sponsor's investment with significant hours of development time. Munwar and Paul then made initial contact with the key players in each stack layer.
What is out-of-scope for Goldegg?
For Goldegg 1, the first funded round of activities, the focus is on Zope 3-related work already planned for the respective roadmap, and people already involved in such activities.
What are the non-roadmap goals?
Even if the first cycle of deliverables is ultimately low in scale, the idea itself is somewhat ambitious. Getting companies to pool money and pay the community to sychronize roadmaps and releases at three layers is a challenge. Thus Goldegg Golden Rule Number One: "This project must succeed." The subprojects will be pared down until risk is manageable.
Goldegg would thus like to show that funding the community is feasible in a larger scale. Success on this will lead to future, and bigger, Goldegg cycles of efforts.
We would also like to show that different layers can work together more constructively. Even within a stack layer, we would like to show that mid-term architecture roadmaps can be published and met.
Finally, Zope 3 and Plone have a co-dependency. Goldegg would like to strengthen both sides of that equation by giving a clear answer on how they relate.
How will decisions get made?
Goldegg will not dictate a new way of working in each stack layer. If the CMF tracks issues in the zope.org Collector, then all Goldegg-funded work will also. If Plone uses PLIPs to introduce new changes, so will Goldegg. At most, Goldegg will introduce a macro-level schedule to coordinate coarse-grained activities between projects.
In the case of Plone, the Goldegg project hopes to help bootstrap some proposed improvements (namely, a team-oriented decision structure) that have consensus amongst core developers. Goldegg 1 will only take a small, manageable step in this direction.
Who is invited?
Any companies that want to fund the roadmap for Plone, CMF, or Five (Zope 3 or Zope 2). The activities in Goldegg will provide serious strategic and tactical ROI for consulting companies and end-users. Goldegg provides a vehicle for durable impact from funding.
Is the funding fair?
It is hard to fund community needs and maintain fairness. In Goldegg 1, there is a real customer with deliverables and a deadline. Also, there are constraints based on budget, time, multiple release schedules, and how many remote workers can be managed in one effort. As such, the number of participants is narrow.
We won't pretend to get it right in Goldegg 1. It's a hard, multivariate problem, both technically and socially. We'll listen to places where we screwed up and commit to continuous improvement.
Goldegg 1 has a few principles, though, that should establish a clear commitment to high-level fairness. Funding is spread across all 3 layers. Funding is steered mostly towards the core architects for that layer who have already been contributing, unfunded, to bringing Zope 3 into the stack.
Finally, a large percentage was set aside to fund broad participation at 2 sprints by covering travel expenses.
While this might not be total fairness, it is far, far more community funding than has been attempted previously in these communities.
Will there be a Goldegg 2?
Anticipated but not scheduled. Munwar and Paul are contacting companies in the stack and pitching for more funding. If Goldegg 1 is a success, CIGNEX and others can reach out to customers for similar efforts.
Plone companies and Plone customers in particular should get involved with funding and contributed manpower, as CIGNEX has for Goldegg 1.
Is this business-driven or developer-driven?
Business-driven. Goldegg brings in funding and organizes efforts for existing developer communities, activities, and roadmaps. Goldegg doesn't try to intrude on the developer-driven culture of successful stack layers.
When will Goldegg be finished?
When Zope 3 has all its core pieces, when the CMF is fully integrated with Zope 3 and potential Z3 ECM components, and Plone has finished the migration, Goldegg will have served its purpose. Alternatively, when the money has run out. (wink)
What's up with the name?
Well, it sounds pretty catchy. More specifically, Goldegg is the name of Phil Auersperg's castle, which was the venue for several Zope sprints. (Phil is a prince in his region of Austria.) Also, the Python community is looking at "eggs" as the way to package software, and since this stack has great software, you can think of them as gold eggs.
Why make such a big noisy deal?
The world of Zope needs some noise and splash, to generate attention and show the broader market a mainstream story. Also, the communities at different layers of the stack tend to get isolated and not hang out together. Doing some storytelling and communication about the stack can rebuild a sense of working together.