<html><head>
<link rel="stylesheet" href="../../default_style.css">
<title>Eclipse Foundation</title></head>
<body text="#000000" bgcolor="#ffffff" link="#0000ee" vlink="#551a8b" alink="#ff0000">
<table border=0 cellspacing=5 cellpadding=2 width="100%" >
  <tr> 
    <td align=left width="72%"> <font class=indextop> Eclipse Japan Working Group</font>
      <font class=indexsub>&nbsp; </font></td>
    <td width="28%"><img src="../../images/Idea.jpg" height=86 width=120></td>
  </tr>
</table>
<table border=0 cellspacing=5 cellpadding=2 width="100%" >
  <tr> 
    <td align="left" valign="top" bgcolor="#0080C0"><b><font color="#FFFFFF" face="Arial,Helvetica">Eclipse 
      Community Bulletin </font></b></td>
  </tr>
  <tr> 
    <td><div align="center"><b><span style='font-size:16.0pt;font-family:Arial;"Times New Roman"'><b> 
          Eclipse Japan Working Group</b></span></b>
      </div>
	  
      <p>The Eclipse Foundation is pleased to announce the formation of the Eclipse 
        Japan Working Group.&nbsp; This working group will be focused on developing 
        and promoting an Eclipse ecosystem within Japan.&nbsp; Fujitsu, Hitachi, 
        IBM Japan, NEC and NTT Comware have been instrumental in the creation 
        of this group and will take a lead role in its activities.&nbsp; Any Eclipse 
        Foundation member company is invited to participate in this working group.&nbsp;&nbsp; 
        Please note that all meetings of the Eclipse Japan 
        Working Group will be conducted in Japanese.<br>
        <br>
        The first general meeting of the Eclipse Japan Working Group will be held 
        in Tokyo (Makuhari) on April 25th. There will be opportunities to learn 
        more about the Eclipse Japan Working Group in addition to technical seminars 
        on RCP and JDT. Speakers include Mike Milinkovich, the Eclipse Foundation, 
        Shinichi Doyama, NTT Comware and others from Fujitsu, Hitachi , IBM and 
        NEC.</p>
      <p>Visit the <a href="http://www.c-sq.com/data/seminar/20050425.html">1st Seminar 
	  of the Eclipse Japan Working Group</a> website for 
        program details, registration information and more information about joining 
        the Working Group. </p>
      <P><br>
      </p>
    </td>
  </tr>
  </table>
  &nbsp; 
	<TABLE  width="100%" CELLSPACING=0 CELLPADDING=3>
		
  <tr> 
    <td> 
      <p>&nbsp;</p>
      <p>&nbsp;</p>
      <hr width="85%">
      <blockquote> 
        <blockquote> 
          <blockquote>
            <p><font size="1">Brand or product names are registered trademarks 
              or trademarks of their respective holders. Java and all Java-based 
              trademarks are trademarks or registered trademarks of Sun Microsystems, 
              Inc. in the United States and other countries.</font><br>
              <br>
            </p>
          </blockquote>
        </blockquote>
      </blockquote>
      <hr width="85%">
    </td>
		</tr>
        </table>&nbsp;        
&nbsp;
</body></html>
