<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>News 2003-04: April</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>
<body>

<h2>News 2003-04: April</h2>
<p>2003-08-19</p>
<p>The following articles represent a selection of those pertaining to OpenOffice.org,
  Open Source, or the general IT industry that may be of interest to the community.
  If you would like to share an article with the community, please send the link
  to Louis Su&aacute;rez-Potts,  editor, at <a href="mailto:marketing@openoffice.apache.org">marketing@openoffice.apache.org</a>. </p>
  <p><a href="../news.html">Back to News Index</a></p>
<hr>
<br>
<table width="100%" border="1" cellpadding="4" cellspacing="0" bordercolor="#99CCFF">
 <tr>
    <td colspan="2"  class="alt4">2003-04: April</td>
  </tr>
  
  <tr>
    <td rowspan="2" class="alt8"> <a href="http://newsforge.com/">NewsForge</a></td>
    <td  class="alt9"> <a href="http://newsforge.com/newsforge/03/04/19/2128256.shtml?tid=11">Why
        do programmers write open source software? </a> <br>
              <em>2003-04-25</em></td>
  </tr>
  <tr>
    <td  class="alt9">Robin Miller of NewsForge provides an timely analysis of
      some of the motivations prompting open-source programmers to contribute
      to projects, including OpenOffice.org. Worth a read. </td>
  </tr>
  <!--cut here-->
  <tr>
    <td rowspan="2" class="alt8"> <a href="http://www.xml.com/">XML.com</a></td>
    <td  class="alt9"> <a href="http://www.xml.com/pub/a/2003/04/23/deviant.html">At
        Microsoft's Mercy </a> <br>
              <em>2003-04-24</em></td>
  </tr>
  <tr>
    <td  class="alt9">Kendall Grant Clark, columnist, writes on the problematic
      nature of Microsoft's employment of XML in the upcoming MS Office and suggests
      that for those wanting "real XML interchange [...] they must either pony
      up for the more expensive versions of Office or, perhaps, explore alternatives
      like OpenOffice." </td>
  </tr>
  <!--cut here-->
  <tr>
    <td rowspan="2" class="alt8"> <a href="http://www.internetwk.com/">Internetweek.com</a></td>
    <td  class="alt9"> <a href="http://www.internetwk.com/breakingNews/showArticle.jhtml?articleID=8800539">XML
        Work Poses One Of Few Viable Threats To MS Desktop Dominance </a> <br>
              <em>2003-04-22</em></td>
  </tr>
  <tr>
    <td  class="alt9">Antone Gonsalves writes, "Microsoft's dominance on the
      desktop seems impenetrable, but efforts to standardize office document
      formats could one day pose a threat to one of the software giant's core
      revenue generators."</td>
  </tr>
  <!--cut here-->
  <tr>
    <td rowspan="2" class="alt8"> <a href="http://news.com.com/">c|net</a></td>
    <td  class="alt9"> <a href="http://news.com.com/2100-1012-998241.html">Microsoft
        to delay Office debut </a> <br>
              <em>2003-04-24</em></td>
  </tr>
  <tr>
    <td  class="alt9">Joe Wilcox reports that "Microsoft is preparing a new test
      version of its upcoming Office 2003 desktop software, which will delay
      the final release of the product until later this year."</td>
  </tr>
  <!--cut here-->
  <tr>
    <td rowspan="2" class="alt8"> <a href="http://www.zdnet.com/">ZDNet</a></td>
    <td  class="alt9"> <a href="http://www.zdnet.com/anchordesk/stories/story/0,10738,2913334,00.html">Microsoft
        Word: How you can live without it</a> <br>
              <em>2003-04-14</em></td>
  </tr>
  <tr>
    <td  class="alt9">David Coursey, Executive Editor of ZDNet's AnchorDesk,
      reviews OpenOffice.org 1.1beta--and likes it. In fact, "Right now, I've
      got beta versions of Microsoft Office 2003, OpenOffice.org 1.1, and Corel's
      WordPerfect Office 11 loaded on my system. My summary judgment: There are
      things to like and dislike about the word processors in each of these suites,
      but they really vary only by small degrees."</td>
  </tr>
  <!--cut here-->
  <!--cut here-->
  <tr>
    <td rowspan="2" class="alt8"> <a href="http://www.news.com.com/">c|net</a></td>
    <td  class="alt9"> <a href="http://news.com.com/2100-1012-996528.html?tag=lh">Microsoft
        limits XML in Office 2003</a> <br>
              <em>2003-04-11</em></td>
  </tr>
  <tr>
    <td  class="alt9">Joe Wilcox reports that, "A distinction that Microsoft
      is making between professional and standard versions of Office 2003 means
      that many customers may not get all the features they've been expecting,
      including broad support for Web services."</td>
  </tr>
  <!--cut here-->
  <!--cut here-->
  <tr>
    <td rowspan="2" class="alt8"> <a href="http://www.news.com.com/">c|net</a></td>
    <td  class="alt9"> <a href="http://news.com.com/1601-2-996260.html">Featured
        Video: Take an early tour of OpenOffice.org[1.1beta]</a> <br>
              <em>2003-04-09</em></td>
  </tr>
  <tr>
    <td  class="alt9">Patrick Houston, columnist for ZDNet, interviews Community
      Manager Louis Su‡rez-Potts on OpenOffice.org and OpenOffice.org 1.1beta.</td>
  </tr>
  <!--cut here-->
  <!--cut here-->
  <tr>
    <td rowspan="2" class="alt8"> <a href="http://www.infoworld.com/">InfoWorld</a></td>
    <td  class="alt9"> <a href="http://www.infoworld.com/article/03/04/01/HNlinuxdata_1.html">Ellison:
        Linux will wipe Microsoft out of data center</a> <br>
              <em>2003-04-01</em></td>
  </tr>
  <tr>
    <td  class="alt9">Stacy Cowley writes that, "At a gathering here Tuesday
      of current and potential Oracle ISV (independent software vendor) partners,
      Oracle Chairman and Chief Executive Officer Larry Ellison extolled the
      virtues of Linux and predicted that the open-source operating system will
      soon decimate Microsoft in the battle for the data center market."</td>
  </tr>
 
</table>
</body>
</html>
