From the Eclipse Bylaws section 7.2: "responsible for the development, articulation, and maintenance of the Eclipse Platform Architecture" (as defined in the then current Eclipse Development Process)
From the Development Process: "... and ensuring the Principles of the Development Process through mentorship."
From the EAC charter: "responsible for the long-term technical health of the Eclipse platforms and frameworks (...) involves itself in inter- and intra-project architecture (...) and open source process (...) through discussion during its meetings, mentoring and consultation.", so the EAC is involved in both technical and process aspects because the social and process structure of a project has been shown to have a direct impact on the technical quality of its extensible frameworks and exemplary tools. See also Darin Swanson's Blog about the EAC.
This role for the Architecture Council represents a new (revitalized?) role for the Architecture Council and thus there is not a lot of history to build on. The Council will be as effective and useful as we make it.
The membership of the Architecture Council is listed on the councils page of the main website, which also has an index to the meeting minutes of the "old" EAC. Mentoring assignments as well as links to member Bio's can be found on the Members and Mentors page.
Discussions and Recommendations
- Top Ten Recommendations (work in progress)
- Things Committers Should Know
- Links Collection to architecture-related interesting blog posts, articles and the like
- Bugs on the Architecture Council component, or CC'd to the EAC
- Get involved! File a bug for discussion on the EAC. We welcome your input! - See this E-Mail.
EAC conference calls are every month on the second Thursday at 8am Pacific, 11am Eastern, 5pm European time. A reminder email will be sent to the list in advance of the calls. The call-in number is on each Agenda page (usually the standard Eclipse Foundation Conference Bridge for Project Reviews, as per the MyFoundation Portal page).
Some interesting Items to Discuss at the EAC Calls
- Ganymede build infrastructure - how to achieve continuous integration, unit tests covering the integration of all projects, and consistency across all projects
- Early integration tests, Automated JUnit API conformance tests
- UI Consistency - when I'm not mistaken, the UI Guidelines are being reworked; how can we encourage projects to pick them up.
- Remote Development - Theoretically, EFS should be the foundation on which workspaces can be put on remote machines, and I do see a lot of interest in this -- but practically, there are some roadblocks. It's a pervasive topic since most projects are not really EFS-aware yet. How to improve the situation?
- Scripting, Macro Recording, DOMs - Another pervasive theme, if macro recording & playback is to be supported across an entire Eclipse based product, there need to be guidelines and APIs for projects to follow. It may be a multi-year multi-project effort but it may be worth getting it started.
- Security - With the number of plugins aver growing, is there a threat of trojans nesting themselves inside Eclipse? Getting a trojan or virus-like plugin into Eclipse can be extremely malicious - from spying to impersonation up to data destruction. Is it a real threat, and is there something that could / should be done?
- Project Model and Nested Projects - when developers lay out the directory structure on non-eclipse projects, they often use a tree where some directories represent projects. Those projects are "nested". This is also often related to the way the files are stored in a configuration management system. Unfortunately eclipse does not really support this real-world setup bug 35973, and this Blog by Alex Blewitt
- Integrated bug reporting: Mylyn is providing a bug/error/enhancement reporting facility that will provide a flexible and product-configurable mapping between features, bundles and bug trackers bug 212209. Once done it would be good to discuss how best for EPP and other products to consume this (Example: http://wiki.eclipse.org/images/8/86/Mylyn-Bug-Reporting-Example.jpg )
- Package visibility policies: New WTP Policy and bug 202711
- Community Development for Eclipse Projects
Resources (from the "old" EAC for now)
- EAC Mailing List Archives
- Eclipse (EMO) Architecture Council Index
- Old meeting minutes
- Architecture Council/Templates for E-Mail communications
- Architecture Council/Dormant Status charter
- Architecture Council/Bylaws
How Do I Become A Member of the Architecture Council?
Architecture Council members come from three sources as per the Architecture Council/Bylaws:
- first, each Top-Level Project PMC may appoint one member.
- second, by nomination and election, the Council can recommend new members for appointment by the EMO (N.B. the Bylaws state that the Executive Director can appoint members to the Council; while remaining consistent with the Bylaws, this nomination and election provides an avenue for the Council to recommend such appointments).
- third, Strategic Consumers as a group are entitled to designate one member.
- fourth, each Strategic Developer or Strategic Consumer with 8 or more developers working on Eclipse platform projects may appoint one member (unless an employee is already appointed).
At least once a year, the Architecture Council considers and elects new members. By convention, this happens in the first quarter of the year in advance of EclipseCon so that new Architecture Council members can attend the face-to-face meeting held at EclipseCon. The process is:
- Nominations are discussed in a phone meeting, and taken on the Architecture Council mailing list. Candidates must be current Committers on an Eclipse project.
- The chair calls for a vote whose duration is no less than one week.
- Voting is accomplished in the usual open-source manner, with each existing Council member voting +1, 0, or -1 on each candidate.
- Candidates must receive +1s from a simple majority of the existing Council members (not counting dormant members who did not vote, and not have any upheld -1s. Note that this requirement for a majority vote is a higher hurdle than the three +1s required for Committer elections, but this is by design: election to the Architecture Council is a sign of extremely high regard by the community.
- In case the simple majority is not reached, the AC may still decide to recommend a candidate by means of discussion during a face-to-face or phone meeting.
- The chair passes the nominations and recommendations of the Council (as evidenced by their votes) to the Executive Director who then, at his discretion, appoints the new members to the Council.
What is the term of Architecture Council members?
Members appointed by dint of PMC or Strategic Membership have no term limits. Members appointed by the EMO are appointed to two year terms as per the development process r2.4 (August 20, 2008) (It was three year terms in the previous process r2.3.1 of Jan 17, 2007). Members' terms can be renewed any number of times through reelection.
Members who are unresponsive to the business of the Council (for example, if they do not participate in the vetting and election of new candidates) can be removed by a simple three +1s, no upheld -1s vote of the Council. Technically, the EMO Executive Director will be asked to remove such members on a negative vote.