<?xml version="1.0" encoding="ISO-8859-1" ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>WTP PMC Agenda/Minutes for November 13, 2007 Conference Call</title>
</head>
<body>
<h1>WTP PMC Agenda/Minutes for November 13, 2007 Conference Call</h1>
<h2>Call Info</h2>
<p>Tollfree in the US: 877-421-0030 <br />
Alternate: 770-615-1247<br />
Access code: 800388# <br />
<a href="http://wiki.eclipse.org/images/f/f6/WTP_status_phone_access.pdf">Full list of phone numbers</a><br />
<br />
<a
    href="http://www.timeanddate.com/worldclock/custom.html?cities=224,207,1440,107
&amp;month=10
&amp;day=16
&amp;year=2007
&amp;hour=11
&amp;min=0&amp;sec=0&amp;p1=207">Call
Time: 1500 UTC</a></p>
<h2>Attendees</h2>
<h3>PMC Members</h3>
<ul>
    <li>David Williams: Y</li>
    <li>Naci Dai: N</li>
    <li>Raghunathan Srinivasan: N</li>
    <li>Neil Hauge: Y</li>
    <li>Tim deBoer: Y</li>
</ul>
<h3>Invited Guests</h3>
<ul>
    <li>Bob Goodman (ATF): Y</li>
</ul>
<h2>Planning Council Report</h2>
<ul>
    <li><a href="http://wiki.eclipse.org/Planning_Council_Minutes_2007.11.06">Official Minutes</a></li>
    <li>We will own, at least, the "Eclipse IDE for Java EE Developers" distribution and remove our "WTP all in
    ones". The goal is to do more cross-project testing and promotion.</li>
    <li>Ganymede dates "compressed" to allow for 3 levels of dependancies. The expectation was to try to get to
    where all builds done quick, and then do smoke or final testing. (I could not convince the room what a bad idea this
    was, for some reason). We are still +2 which is now approximately 1 week. The package distributions will be built
    immediately and everyone is to encourage testing with those packages, instead of just our own.</li>
    <li>Action item: update our "planning" documents with dates for Ganymede and Winter maintenance</li>
</ul>
<h3>Notes:</h3>
<p>Tim asked "what are +3 projects?" I recalled, I think GMF, SOA Toosl, but sent not to planning council to confirm
and get complete list</p>
<h2>EclipseWorld Trip Report</h2>
<ul>
    <li>Good conference. Reston was nice trip! Will be there next year too.</li>
    <li>Small: approximately 400 people. Definitly was more for "end users" than EclispeCon.</li>
    <li>Approximately 50 people per class. Naci bragged he had even more, many had to stand up :)</li>
    <li>Action item: we need to maintain our "presenations downloads" page!</li>
    <li><a href="http://www.eclipseworld.net/">EclipseWorld 2007, NOV. 6-8, RESTON, VA</a>.<br />
    WTP Presentations (See the complete program for closely related presentations):
    <ul>
        <li>David Williams: How to Create Web Applications With Eclipse (Wednesday, Nov. 7, 9:15 am - 10:30 am)</li>
        <li>Naci Dai: Developing SOA-Ready Java Web Applications, Part 1 (Thursday, Nov. 8, 10:00 am - 11:15 am)<br />
        Developing SOA-Ready Java Web Applications, Part 2 (Thursday, Nov. 8, 11:30 am - 12:45 pm)</li>
        <li>Raghu Srinivasan: Building Great JavaServer Faces Applications With Eclipse Tools (Thursday, Nov. 8,
        2:00 pm - 3:15 pm)</li>
        <li>Neil Hauge: Using the Java Persistence Applications With Eclipse JPA and Dali (Thursday, Nov. 8, 4:00
        pm - 5:15 pm)</li>
    </ul>
    </li>
</ul>
<h3>Notes:</h3>
<p>Everyone agreed it's important to maintain our "community resources" and presentations page. <b>Action
item: </b>David to post instructions and reminders, especially, even, for eclipseCon and Eclipse Summit.</p>
<h2>EclipseCon 2008</h2>
<ul>
    <li>Soliciting proposals. Due this Friday, 19th!</li>
</ul>
<h3>Notes:</h3>
<p>Neil asked about "extending JPA", so resent the table being used for planning.</p>
<p>check other categories now for potential webtools submissions</p>
<h2>Reports and Actions from our PMC Roles</h2>
<h3>Requirements: Raghu Srinivasan</h3>
<ul>
    <li>Next week: discuss <a href="http://wiki.eclipse.org/WTP_Requirements_Lead">WTP Requirements Lead Role</a></li>
</ul>
<h3>Education: Naci Dai</h3>
<h3>Planning: David Williams</h3>
<ul>
    <li>Ready for M3? (Everyone thought "yes")</li>
</ul>
<h3>Community Relations: David Williams</h3>
<h3>Quality: Neil Hauge</h3>
<ul>
    <li>Review: <a href="http://wiki.eclipse.org/WTP_Quality_Lead">WTP Quality Lead</a></li>
    <li>See <a href="http://wiki.eclipse.org/WTP_Quality">Quality Page</a></li>
</ul>
<h3>Architecture: Tim deBoer</h3>
<ul>
    <li><a href="http://wiki.eclipse.org/WTP_Architecture_Lead">WTP Architecture Lead Role</a></li>
    <li>Tracking meetings and work at <a href="http://wiki.eclipse.org/WTP_Architecture_Working_Group">WTP
    Architecture Working Group</a></li>
</ul>
<h2>ATF Status</h2>
<ul>
    <li>Planning meeting today! ... to help drive contributions/committers</li>
</ul>
<h2>Other business?</h2>
<ul>
    <li>Be aware of new proposal: The Eclipse Integration for Apache Maven (IAM) Project
    (http://www.eclipse.org/proposals/iam/)</li>
</ul>
<h3>Notes:</h3>
<p>Send reminder note about CVS restructuring</p>
<h2>Action Items</h2>
<ul>
    <li>David: Will call for Project Lead vote on <a
        href="http://wiki.eclipse.org/WTP_Policy_on_Package_Visibility">WTP Policy on Package Visibility</a></li>
    <li>David: update 3.0 milestone plans with focus items.</li>
    <li>Raghu: create a wiki page: a checklist for how to lower the barrier to participation for all projects</li>
    <li>David: create wiki page for 3rd-party requirements</li>
    <li>WTP Refactor followup: Need to update website. Project Leads will need to take ownership of their own
    pages. See <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=201331">bug 201331</a></li>
</ul>
<h2>Closed Action Items</h2>
<ul>
    <li>David: Reorg CVS. See <a href="http://wiki.eclipse.org/WTP_CVS_Restructuring">CVS Restructuring
    Proposal</a> <br />
    In progress, but moving to "closed" since no further "management" attention required.</li>
</ul>
<h2>PMC Calendar</h2>
<ul>
    <li><a href="http://www.ossummit.com/index.html">OS Summit Asia</a> - November 26-30</li>
    <li>WTP 3.0 - June 30, 2008<pre>

                0 Milestones                    +2 Milestones

     M1 - August 10, 2007               August 24, 2007
     M2 - September 21, 2007            October 5, 2007
     M3 - November 2, 2007              November 16, 2007
     M4 - December 14, 2007             January 8, 2008
     M5 - February 8, 2008              February 22, 2008

		</pre></li>
</ul>
<hr />
<p>Back to <a href="/webtools/development/index_pmc_call_notes.php">meeting list</a>.</p>
<p>Please send any additions or corrections to David Williams.</p>
</body>
</html>
