<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> eclipseCon sponsors</font><br>
      <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">Press release</font></b></td>
  </tr>
  <tr> 
    <td> <br>
      <h1 ALIGN="CENTER"><b><span style='font-size:16.0pt;font-family:Arial;"Times New Roman"'><b> 
        EclipseCon 2005 Announces Gold-Level Sponsors</b></span></b></h1>
      <ul>
        <li>Accelerated Technology, Actuate, Agitar, Borland, HP and IBM Named 
          Gold Sponsors </li>
      </ul>
      <P>OTTAWA, ONTARIO, CANADA - December 9, 2004 - The Eclipse Foundation announced 
        the Gold-level sponsors for EclipseCon 2005, the annual gathering of the 
        Eclipse community to be held February 28 through March 3, 2005, at the 
        Hyatt Regency, Burlingame, CA, United States. Six leading technology companies, 
        Accelerated Technology, Inc. a Mentor Graphics Division, Actuate Corporation, 
        Agitar Software, Borland Software Corporation, HP and IBM will be the 
        key sponsors of the conference.</p>
      <P> &quot;Eclipse is enjoying a tremendous amount of success and popularity 
        in a number of different markets, including enterprise Java development, 
        embedded, testing, business intelligence and enterprise IT,&quot; explained 
        Mike Milinkovich, executive director of Eclipse Foundation, Inc. &quot;This 
        diversity is reflected in our ability to attract leading vendors from 
        these markets to act as Gold-level sponsors for EclipseCon. We are honored 
        to have these companies offer their significant sponsorship for our conference.&quot;</p>
      <P>The EclipseCon technical program will appeal to beginners through advanced 
        users, developers of Eclipse-based applications, enterprise architects 
        and other technology decision makers. The program consists of more than 
        twenty tutorials and three days of sessions. Please visit <a href="http://www.eclipsecon.org/?prgold" target="_blank">www.eclipsecon.org</a> 
        for additional information about the program.<br>
      </p>
      <P><b>Registration and Hotel Information</b><br>
        Registration and hotel information is available at <a href="http://www.eclipsecon.org/?prgold" target="_blank">www.eclipsecon.org</a>. 
        Conference fee discounts are offered for those registering before January 
        31, 2005.<br>
      </p>
      <P><b>Information for Press and Analyst Organizations</b><br>
        Members of the press and analyst community are encouraged to attend EclipseCon 
        2005. Registration information is available at <a href="http://www.eclipsecon.org/?prgold" target="_blank">www.eclipsecon.org</a>.<br>
        <br>
        <b>Information for Exhibitors</b><br>
        Additional sponsorship and exhibiting opportunities are still available. 
        Organizations interested in exhibiting at EclipseCon 2005 are invited 
        to visit <a href="http://www.eclipsecon.org/?prgold" target="_blank">www.eclipsecon.org</a> 
        for more information. Interested parties should also email <a href="mailto:eclipsecon2005exhibitor@eclipse.org">eclipsecon2005exhibitor@eclipse.org</a>. 
        <br>
      </p>
      </td>
  </tr>
  </table>
<table width="100%" cellspacing=0 cellpadding=3 align=center>
		<tr bgcolor="#999999">
		
    <td align="left" valign="top" bgcolor="#0080C0"><b><font color="#FFFFFF" face="Arial,Helvetica">About the Eclipse Foundation</font></b></td>
		</TR>
		<TR>
		<td align=left>
		<TABLE  width="100%" CELLSPACING=0 CELLPADDING=3>
		<tr>
		  <td> 
            <P> The Eclipse Foundation is a not-for-profit member-supported corporation 
              that hosts community based open source projects. Eclipse creates 
              royalty-free technology and a universal platform for development 
              tools integration, modeling, testing and functionally-rich application 
              construction. Eclipse-based offerings give developers freedom of 
              choice in a multi-language, multi-platform, multi-vendor supported 
              environment. Eclipse delivers a dynamic plug-in based framework 
              that makes it easier to create and integrate technology, saving 
              time and money. By collaborating and sharing core integration technology, 
              providers can concentrate and focus on areas of expertise and differentiation. 
              The Eclipse Platform is written in the Java language and comes with 
              extensive plug-in construction toolkits and examples. It has already 
              been deployed on a range of development workstations including Linux, 
              QNX, Mac OS X and Windows-based systems. Full details of the Eclipse 
              Foundation and white papers documenting the design of the Eclipse 
              Platform are available at <a href="http://www.eclipse.org" target="_top">www.eclipse.org</a>.</p>
            </td>
		</tr>
        </table></table>&nbsp;
	<table width="100%" cellspacing=0 cellpadding=3 align=center>
		<tr bgcolor="#999999">
    <td align="left" valign="top" bgcolor="#0080C0"><b><font color="#FFFFFF" face="Arial,Helvetica">Media 
      contact</font></b></td>
		</TR>
		</table>
		
<table width="100%" border="0" cellspacing="5">
  <tr>
    <td > 
      <div align="center">Barbara Stewart <br>
        Patterson & Associates <br>
        barbara@patterson.com <br>
        480.488.6909 </div>
    </td>
  </tr>
</table>
		<TABLE  width="100%" CELLSPACING=0 CELLPADDING=3>
		<tr>
		  <td> 
            <hr width="85%">
      <P>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.<br>
      </P>
<hr width="85%">
    </td>
		</tr>
        </table>&nbsp;        
&nbsp;
</body></html>
