<!DOCTYPE html>
<html><head>
<title>News 2001</title>
<meta HTTP-EQUIV="content-type" CONTENT="text/html; charset=UTF-8">
</head>
<body>

<h2>News 2001</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">2001</td>
  </tr> 
  <tr >
    <td rowspan="2" class="alt8"><a href="http://www.informationweek.com">Informationweek.com &nbsp; </a></td>
    <td class="alt9"><a href="http://www.informationweek.com/story/IWK20011220S0022">Panelists
        See Benefits To Open-Source Practices</a> <br>
      <i>2001 December 20</i></td>
  </tr>
  <tr >
    <td class="alt9">Eric Chabrow reports on the Carnegie Mellon University panel
      on the business of Open Source and on the intricacies of moving from a
      proprietary scheme to one predicated on Open Source techniques.</td>
  </tr>
  <!--cut here-->
  <!--cut here-->
  <!--cut here-->
  <tr >
    <td rowspan="2" class="alt8"><a href="http://news.cnet.com/">Cnet News.Com &nbsp; </a></td>
    <td width="75%" ><a href="http://news.cnet.com/news/0-1003-200-8171790.html">Sun
        saturated with StarOffice advice</a><br>
      <i>2001 December 13</i></td>
  </tr>
  <tr >
    <td class="alt9">As Stephen Shankland writes, "Sun Microsystems will cut
      off downloads of the StarOffice 6 beta software on Dec. 31 as the company
      prepares for a final release in the first half of 2002, the company said
      Wednesday."</td>
  </tr>
  <!--cut here-->
  <!--cut here-->
  <tr >
    <td rowspan="2" class="alt8"><a href="http://dailynews.yahoo.com/h/tc/?u">Yahoo!
        News (Reuters)</a> &nbsp; </td>
    <td width="75%" ><a href="http://dailynews.yahoo.com/h/nm/20011213/tc/tech_hacker_dc_3.html">U.
        S. Reaches Deal to Free Russian Programmer</a><br>
      <i>2001 December 13</i></td>
  </tr>
  <tr >
    <td class="alt9">The U.S. has agreed to free Sklyarov in exchange for his
      testimony against his company.</td>
  </tr>
  <!--cut here-->
  <!--cut here-->
  <tr >
    <td rowspan="2" class="alt8"><a href="http://www.eweek.com">eWeek</a> &nbsp; </td>
    <td width="75%" ><a href="http://www.eweek.com/article/0,3658,s%253D1884%2526a%253D19928,00.asp">Sun
        considers charging for StarOffice</a><br>
      <i>2001 December 12</i></td>
  </tr>
  <tr >
    <td class="alt9">In an important article on the state of StarOffice development,
      Peter Galli examines the issues behind Sun's possible decision to charge
      a fee for the increasingly popular office productivity suite.</td>
  </tr>
  <!--cut here-->
  <!--cut here-->
  <tr >
    <td rowspan="2" class="alt8"><a href="http://www.theregister.com">The Register</a> &nbsp; </td>
    <td width="75%" > <a href="http://www.theregister.co.uk/content/4/23280.html">Open
        source IE, license MSOffice, says rebel States' pitch</a><br>
      <i>2001 December 10</i></td>
  </tr>
  <tr >
    <td class="alt9">A trenchant analysis of the States' opposition to the &quot;settlement&quot; by
      staff writer John Lettice.</td>
  </tr>
  <!--cut here-->
  <!--cut here-->
  <tr >
    <td rowspan="2" class="alt8"><a href="http://news.cnet.com/">Cnet News.Com </a> &nbsp; </td>
    <td width="75%" > <a href="http://news.cnet.com/news/0-1003-200-8100898.html">States
        get tough in Microsoft case</a> <br>
      <i>2001 December 07</i></td>
  </tr>
  <tr >
    <td class="alt9">Joe Wilcox reports on the reluctance nine states and the
      District of Columbia have to swallowing the Bush administration's capitulation
      to Microsoft's desires.</td>
  </tr>
  <!--cut here-->
  <!--cut here-->
  <tr >
    <td rowspan="2" class="alt8"><a href="http://www.zdnet.com.au/">ZDNet Australia </a> &nbsp; </td>
    <td width="75%" > <a href="http://www.zdnet.com.au/reviews/software/business/story/0,2000023555,20262203,00.htm">StarOffice
        6.0 may outshine Office XP</a><br>
      <i>2001 December 05</i></td>
  </tr>
  <tr >
    <td class="alt9">As Jason Brooks writes, &quot;Sun's free StarOffice 6.0
      offers features that could draw firms away from Microsoft applications,
      especially in the face of Microsoft's potentially costly new licensing
      schemes.&quot;</td>
  </tr>
  <!--cut here-->
  <!--cut here-->
  <tr >
    <td rowspan="2" class="alt8"><a href="http://maccentral.macworld.com/">MacCentral</a> &nbsp; </td>
    <td width="75%" > <a href="http://maccentral.macworld.com/news/0112/06.settlement.php">Jobs
        questions Microsoft settlement proposal value</a><br>
      <i>2001 December 07</i></td>
  </tr>
  <tr >
    <td class="alt9">A soap opera with real consequence, and now Apple is chiming
      in on the egregious putative settlement between Microsoft and the Bush
      Justice department. </td>
  </tr>
  <!--cut here-->
  <!--cut here-->
  <tr >
    <td rowspan="2" class="alt8"><a href="http://www.linuxlookup.com/">LinuxLookup</a> &nbsp; </td>
    <td width="75%" ><a href="http://www.linuxlookup.com/html/reviews/software/staroffice6.html">Star
        Office 6 (Beta) Review </a><br>
      <i>2001 November 30</i></td>
  </tr>
  <tr >
    <td class="alt9">Another useful and interesting review of StarOffice 6 Beta,
      in which the reviewer (JJ) states, "This Beta version has some great improvements.
      I find Beta 6 to be very stable (so far that is) and I am actually using
      it as my default Application suite."</td>
  </tr>
  <!--cut here-->
  <tr >
    <td rowspan="2" class="alt8"><a href="http://www.sdtimes.com/index.htm">SDTimes</a> &nbsp; </td>
    <td width="75%" ><a href="http://www.sdtimes.com/cols/opensourcewatch.htm">OPEN
        SOURCE WATCH: Constant Change Is Here to Stay</a><br>
      <i>2001 August 01</i></td>
  </tr>
  <tr >
    <td class="alt9">Columnist J.D. Hildebrand examines the most interesting
      developments of the summer in Open Source.</td>
  <tr >
    <td rowspan="2" class="alt8"><a href="http://www.advogato.org/">Advogato</a> &nbsp; </td>
    <td width="75%" ><a href="http://www.advogato.org/article/378.html">Chewing
        up and spitting out our leaders</a><br>
      <i>2001 November 14</i></td>
  </tr>
  <tr >
    <td class="alt9">Advogato examines the implications of the recent resignation
      of Christoph Pfisterer from the Open Source <a href="http://fink.sourceforge.net/">Fink</a> project,
      which aims to &quot;bring the full world of Unix Open Source software to <a href="http://www.opensource.apple.com/">Darwin</a> and
      Mac OS X.&quot;</td>
  <tr >
    <td rowspan="2" class="alt8"><a href="http://consultingtimes.com/">Consulting
        Times</a> &nbsp; </td>
    <td width="75%" ><a href="http://consultingtimes.com/SOConversions.html">The
        OpenOffice Rosetta Stone</a><br>
      <i>2001 November 09</i></td>
  </tr>
  <tr >
    <td class="alt9">Erwin Zijleman &amp; Stephen E. Harris continue their favorable
      examination of OpenOffice.org.</td>
  <tr >
    <td rowspan="2" class="alt8"> <a href="http://www.adtmag.com/">ADTmag.com</a> &nbsp; </td>
    <td width="75%" ><a href="http://www.adtmag.com/article.asp?id=5647">Open
        source concerns die hard</a><br>
      <i>2001 November 05</i></td>
  </tr>
  <tr >
    <td class="alt9">Johanna Ambrosio writes about the state of the business
      of Open Source. </td>
  <tr >
    <td rowspan="2" class="alt8"> <a href="http://www.nytimes.com">The New York
        Times.com</a> &nbsp; </td>
    <td width="75%" ><a href="http://www.nytimes.com/2001/11/05/technology/05OPEN.html">Some
        I.B.M. Software Tools to Be Put in Public Domain</a><br>
      <i>2001 November 05</i></td>
  </tr>
  <tr >
    <td class="alt9">Steve Lohr of the New York Times discusses IBM's open source
      initiative, &quot;Eclipse.&quot;</td>
  <tr >
    <td rowspan="2" class="alt8"> <a href="http://news.cnet.com/news/0-1002.html?tag=hdrgf">Cnet</a> &nbsp; </td>
    <td width="75%" ><a href="http://news.cnet.com/news/0-1005-200-7739670.html?tag=tp_pr">Rival
        browsers benefiting from MSN gaffe</a><br>
      <i>2001 November 01</i></td>
  </tr>
  <tr >
    <td class="alt9">Staff writers Rachel Konrad and Sandeep Junnarkar interviewed
      Tim Berners-Lee and report that &quot;Microsoft's blockage of competing
      Web browsers from MSN.com has been good news for some plucky rivals: They
      are experiencing record traffic and downloads, and a leading Internet authority
      is heaping scorn on the software giant.&quot; </td>
  <tr >
    <td rowspan="2" class="alt8"> <a href="http://www.theregister">The Register</a> &nbsp; </td>
    <td width="75%"><a href="http://www.theregister.co.uk/content/4/22595.html">MS
        antitrust deal close - WinXP, bundling to emerge unscathed?</a><br>
      <i>2001 November 01</i></td>
  </tr>
  <tr >
    <td class="alt9">John Lettice writes on the deal being discussed by Microsoft
      and the US "Antitrust" division. </td>
  <tr >
    <td rowspan="2" class="alt8"><a href="http://www.zdnet.com.au/">ZDNet Australia</a> &nbsp; </td>
    <td class="alt9"><a href="http://www.zdnet.com.au/newstech/enterprise/story/0,2000025001,20257787-1,00.htm">Governments
        push open source</a><br>
      <i>2001 August 30</i></td>
  </tr>
  <tr >
    <td class="alt9">As Paul Festa writes, "More and more governments around
      the world are requiring their agencies to use free or open source software
      and use proprietary software only as a last resort. Microsoft is working
      overtime to quell the revolution."</td>
  <tr >
    <td rowspan="2" class="alt8"><a href="http://www.linuxorbit.com/">LinuxOrbit</a> &nbsp; </td>
    <td class="alt9"><a href="http://www.linuxorbit.com/features/slambo1.php">StarOffice
        6.0 Beta - Out of the (Cyber) Box Experience</a><br>
      <i>2001 October 30</i></td>
  </tr>
  <tr >
    <td class="alt9">Sean Lamb praises StarOffice 6 Beta for not only being able
      to view Microsoft Office documents, but for leaving him "impressed with
      its capabilities and I'm sure I'll like it more as I use it more." </td>
  <tr >
    <td rowspan="2" class="alt8"><a href="http://consultingtimes.com/">Consulting
        Times</a> &nbsp; </td>
    <td class="alt9"><a href="http://consultingtimes.com/staroffice.html">StarOffice
        6 Rises to the Desktop Challenge</a><br>
      <i>2001 October 27</i></td>
  </tr>
  <tr >
    <td class="alt9">Stephen E. Harris, publisher of Consulting Times, finds
      that "much to [his] surprise -- [StarOffice 6 beta] was a rather full feature
      office suite, based on open standards, with the best Microsoft Office compatibility
      to date." This article includes an excellent interview with Iyer Venkatesan,
      the StarOffice product manager.</td>
  <tr >
    <td rowspan="2" class="alt8"><a href="http://www.newsforge.com" target="_blank">NewsForge</a> &nbsp; </td>
    <td class="alt9"><a href="http://www.newsforge.com/article.pl?sid=01/10/21/2037202&mode=thread">OpenOffice.org:
        A little over a year and 7.5 million lines of code later</a><br>
      <i>2001 October 24</i></td>
  </tr>
  <tr >
    <td class="alt9">Grant Gross of NewsForge interviews Community Managers Zaheda
      Bhorat and Louis Su&aacute;rez-Potts for an analysis of the state of OpenOffice.org,
      one year after the release of the code.</td>
  <tr >
    <td rowspan="2" class="alt8"><a href="http://www.theregister.com/" target="_blank">The
        Register</a> &nbsp; </td>
    <td class="alt9"><a href="http://www.theregister.co.uk/content/4/22404.html">Doom
        for .NET? InterTrust opens up on the MS lawsuit </a><br>
      <i>2001 October 22</i></td>
  </tr>
  <tr >
    <td class="alt9">Mucraker Register reporter writes on the latest David fighting
      the Goliath of Software: InteTrust, who uses patent law to its (and possibly
      Open Source's) advantage.</td>
  <tr >
    <td rowspan="2" class="alt8"><a href="http://techupdate.zdnet.com/" target="_blank">ZDNet</a> &nbsp; </td>
    <td class="alt9"><a href="http://techupdate.zdnet.com/techupdate/stories/main/0,14179,2817381,00.html">StarOffice
        shaping up as true Office alternative</a><br>
      <i>2001 October 11</i></td>
  </tr>
  <tr >
    <td class="alt9">Michael P. Deignan reviews StarOffice beta 6.0 and proclaims
      it a near replacement for you-know-what.</td>
  <tr >
    <td rowspan="2" class="alt8"><a href="http://linuxtoday.com/" target="_blank">Linux
        Today </a> &nbsp; </td>
    <td class="alt9"><a href="http://linuxtoday.com/news_story.php3?ltsn=2001-10-16-013-20-OS-DT-SW">Sander
        Vesik: One Year of OpenOffice.org</a><br>
      <i>2001 October 16</i></td>
  </tr>
  <tr >
    <td class="alt9">Sander Vesik, release engineer for OpenOffice.org, writes
      about the one-year anniversary of OpenOffice.org.</td>
  <tr >
    <td rowspan="2" class="alt8"><a href="http://www.cnet.com" target="_blank">Cnet</a> &nbsp; </td>
    <td class="alt9"><a href="http://www.cnet.com/software/0-811003-8-7411744-1.html?tag=sd">StarOffice
        6.0 Beta</a><br>
      <i>2001 October 16</i></td>
  </tr>
  <tr >
    <td class="alt9">In a glowing review, Gregg Keizer praises StarOffice 6.0
      beta for being efficient and powerful.</td>
  <tr >
    <td rowspan="2" class="alt8"><a href="http://www.linuxplanet.com/" target="_blank">LinuxPlanet</a> &nbsp; </td>
    <td class="alt9"><a href="http://www.linuxplanet.com/linuxplanet/reviews/3841/1/">The
        StartX Files: Word to the Wise: Writer 638C</a><br>
      <i>2001 October 16</i></td>
  </tr>
  <tr >
    <td class="alt9">Brian Proffitt writes glowingly about OpenOffice.org 638c
      and describes how it is persuading others <i>away</i> from Microsoft XP. </td>
  <tr >
    <td rowspan="2" class="alt8"><a href="http://www.computerworld.com" target="_blank">Computerworld</a> &nbsp; </td>
    <td class="alt9"><a href="http://www.computerworld.com/cwi/community/story/0,3201,NAV65-1797_STO64689,00.html2C00.html" target="_blank">The
        Case for Open File Formats</a><br>
      <i>2001 October 12</i></td>
  </tr>
  <tr >
    <td class="alt9">Scott McNealy argues for open-file formats in this special
      piece to Computerworld.</td>
  <tr >
    <td rowspan="2" class="alt8"><a href="http://www.linuxplanet.com/" target="_blank">LinuxPlanet</a> &nbsp; </td>
    <td class="alt9"><a href="http://www.linuxplanet.com/linuxplanet/reviews/3841/1/">The
        StartX Files: Word to the Wise: Writer 638C</a><br>
      <i>2001 October 16</i></td>
  </tr>
  <tr >
    <td class="alt9">Brian Proffitt writes glowingly about OpenOffice.org 638c
      and describes how it is persuading others <i>away</i> from Microsoft XP. </td>
  <tr >
    <td rowspan="2" class="alt8"><a href="http://www.computerworld.com" target="_blank">Computerworld</a> &nbsp; </td>
    <td class="alt9"><a href="http://www.computerworld.com/cwi/community/story/0,3201,NAV65-1797_STO64689,00.html2C00.html" target="_blank">The
        Case for Open File Formats</a><br>
      <i>2001 October 12</i></td>
  </tr>
  <tr >
    <td class="alt9">Scott McNealy argues for open-file formats in this special
      piece to Computerworld.</td>
  <tr >
    <td rowspan="2" class="alt8"> <a href="http://www.eweek.com" target="_blank">eWeek</a> </td>
    <td class="alt9"><a href="http://www.eweek.com/article/0,3658,s%253D1884%2526a%253D16135,00.asp" target="_blank">Users
        swarm to StarOffice 6 beta</a><br>
      <i>2001 October 10</i></td>
  </tr>
  <tr >
    <td class="alt9">As Peter Galli, writes, &quot;The brouhaha surrounding Microsoft
      Corp.'s new volume licensing plans has apparently been good news for companies
      like Sun Microsystems Inc., which last week announced the beta release
      of its free StarOffice 6 office productivity suite.&quot;</td>
  <tr >
    <td rowspan="2" class="alt8"> <a href="http://www.linuxworld.com" target="_blank">LinuxWorld.com</a> </td>
    <td class="alt9"><a href="http://www.linuxworld.com/site-stories/2001/1005.staroffice.html" target="_blank">A
        first look at StarOffice 6.0 beta</a><br>
      <i>2001 October 09</i></td>
  </tr>
  <tr >
    <td class="alt9">Joe Barr writes that &quot;those interested in finding a
      migration plan away from the Microsoft monopolies would be well advised
      to start looking at StarOffice 6.0, since it runs not only on Windows but
      on Solaris and Linux as well.&quot;</td>
  <tr >
    <td rowspan="2" class="alt8"> <a href="http://dailynews.yahoo.com/h/tc/zd/?u" target="_blank">ZDNet
        News (Yahoo!)</a> </td>
    <td class="alt9"><a href="http://dailynews.yahoo.com/h/zd/20011009/tc/staroffice_offers_it_real_choice_1.html">StarOffice
        offers IT real choice</a><br>
      <i>2001 October 09</i></td>
  </tr>
  <tr >
    <td class="alt9">Jason Brooks, of <a href="http://www.eweek.com" target="_blank">eWeek</a>,
      writes on the new StarOffice 6 Beta and how it represents a real and usable
      alternative to Microsoft's Office.</td>
  <tr >
    <td rowspan="2" class="alt8"> <a href="http://www.theregister.com" target="_blank">The
        Register </a> </td>
    <td class="alt9"><a href="http://www.theregister.co.uk/content/4/22070.html" target="_blank">Finnish
        city plans switch from Windows to Linux</a><br>
      <i>2001 October 05</i></td>
  </tr>
  <tr >
    <td class="alt9">John Lettice reports on the proposed move by the city of
      Turku to adopt not just Linux but also OpenOffice.org.</td>
  <tr >
    <td rowspan="2" class="alt8"> <a href="http://www.theregister.com" target="_blank">The
        Register </a> </td>
    <td class="alt9"><a href="http://www.theregister.co.uk/content/4/21988.html">Sun
        unveils kinder, gentler StarOffice</a><br>
      <i>2001 October 02</i></td>
  </tr>
  <tr >
    <td class="alt9">Andrew Orlowski bites into the Beta of StarOffice 6.0, which
      is pretty much OpenOffice.org 638c.</td>
  <tr >
    <td rowspan="2" class="alt8"> <a href="http://www.theregister.com" target="_blank">The
        Register </a> </td>
    <td class="alt9"><a href="http://www.theregister.co.uk/content/4/21885.html" target="_blank">Consumer
        groups to call for defanging of WinXP</a><br>
      <i>2001 September 26</i></td>
  </tr>
  <tr >
    <td class="alt9">John Lettice reports that &quot;Four US consumer organisations
      are poised to damn Windows XP later today, and to offer their thoughts
      on the measures the courts should take to protect the public from the Beast.&quot;</td>
  <tr >
    <td rowspan="2" class="alt8"> <a href="http://maccentral.macworld.com/" target="_blank">MacCentral</a> </td>
    <td class="alt9"><a href="http://maccentral.macworld.com/news/0109/06.opensource.php" target="_blank">Open
        source, Microsoft, and Apple</a><br>
      <i>2001 September 6</i></td>
  </tr>
  <tr >
    <td class="alt9">Dennis Sellers analyzes the different approaches to Open
      Source that Microsoft and Apple have taken.</td>
  <tr >
    <td rowspan="2" class="alt8"> <a href="http://dailynews.yahoo.com/h/ts/" target="_blank">Yahoo!News-Reuters</a> </td>
    <td class="alt9"><a href="http://dailynews.yahoo.com/h/nm/20010906/ts/microsoft_justice_dc_5.html" target="_blank">U.S.
        Abandons Microsoft Breakup Effort</a><br>
      <i>2001 September 6</i></td>
  </tr>
  <tr >
    <td class="alt9">Peter Kaplan writes that the Bush Justice Department is
      no longer pursuing a break-up of Microsoft and &quot;would strive to find
      a remedy in the three-year old case 'as quickly as possible.'''</td>
  <tr >
    <td rowspan="2" class="alt8"> <a href="http://www.nwfusion.com/" target="_blank">NetworkWorldFusion</a> </td>
    <td class="alt9"><a href="http://www.nwfusion.com/news/2001/0831mslinuxw.html?nw" target="_blank">Microsoft
        casts a watchful eye on LinuxWorld</a><br>
      <i>2001 September 4</i></td>
  </tr>
  <tr >
    <td class="alt9">John Fontana analyzes Microsoft's reactions to Linux.</td>
  <tr >
    <td rowspan="2" class="alt8"><a href="http://www.idg.net" target="_blank">CNET.com</a></td>
    <td class="alt9"><a href="http://news.cnet.com/news/0-1003-200-7018328.html" target="_blank">Sun
        shows new version of StarOffice</a><br>
      <i>August 31, 2001</i> </td>
  </tr>
  <tr >
    <td class="alt9">Stephen Shankland reports from LinuxWorld that &quot;Sun
      Microsystems is showing Linux fans the next version of StarOffice, the
      most viable competition to Microsoft's Office package, and will release
      the beta version in October.&quot;</td>
  <tr >
    <td rowspan="2" class="alt8"><a href="http://www.idg.net" target="_blank">IDG.net</a></td>
    <td class="alt9"><a href="http://www.infoworld.com/tc/opensource.html" target="_blank">LinuxWorld
        Expo: Post-show impressions</a><br>
      <i>August 31, 2001</i> </td>
  </tr>
  <tr >
    <td class="alt9">Joe Barr summarizes this years LinuxWorld Expo in San Francisco.</td>
  <tr >
    <td rowspan="2" class="alt8"><a href="http://www.infoworld.com" target="_blank">InfoWorld</a></td>
    <td class="alt9"><a href="http://www.infoworld.com/tc/opensource.html" target="_blank">Test
        Center In Focus: Traveling the open-source road?</a><br>
      <i>August 30, 2001</i> </td>
  </tr>
  <tr >
    <td class="alt9">InfoWorld presents a special forum on Open Source, its state,
      economy, and promise.</td>
  <tr >
    <td rowspan="2" class="alt8"><a href="http://www.cnet.com" target="_blank">CNET.com</a></td>
    <td class="alt9"><a href="http://news.cnet.com/news/0-1003-200-7004860.html?tag=mn_hd" target="_blank">Lawyer
        Lessig raps new copyright laws</a><br>
      <i>August 29, 2001</i> </td>
  </tr>
  <tr >
    <td class="alt9">From LinuxWorld Expo in San Francisco, Stephen Shankland
      reports on noted law professor Lawrence Lessig's speech on copyright, patents,
      and why we should be concerned.</td>
  <tr >
    <td rowspan="2" class="alt8"><a href="http://www.cnet.com" target="_blank">CNET.com</a></td>
    <td class="alt9"><a href="http://news.cnet.com/news/0-1003-200-7009202.html?tag=mn_hd" target="_blank">Microsoft
        learns from its enemy--Linux</a><br>
      <i>August 29, 2001</i> </td>
  </tr>
  <tr >
    <td class="alt9">Stephen Shankland, CNET staff writer, writes on how Microsoft,
      despite its harsh words attacking Linux, Open Source, and a lot else, is
      learning from Linux.</td>
  <tr >
    <td rowspan="2" class="alt8"><a href="http://www.cnet.com" target="_blank">CNET.com</a></td>
    <td class="alt9"><a href="http://news.cnet.com/news/0-1003-200-7008296.html?tag=mn_hd" target="_blank">Making
        Linux usable tops Torvalds' list</a><br>
      <i>August 29, 2001</i> </td>
  </tr>
  <tr >
    <td class="alt9">A review of the important panel, &quot;The State of Open
      Source,&quot; at this year's LinuxWorld Convention in San Francisco, by
      Stephen Shankland. </td>
  <tr >
    <td rowspan="2" class="alt8"><a href="http://linuxtoday.com/" target="_blank">Linux
        Today</a></td>
    <td class="alt9"><a href="http://linuxtoday.com/news_story.php3?ltsn=2001-08-25-011-20-PR-BZ-CY" target="_blank">Eric
        S. Raymond: VA going proprietary? Naahhh...</a><br>
      <i>August 25, 2001</i> </td>
  </tr>
  <tr >
    <td class="alt9">Noted Open Source advocate and VA Linux board member accounts
      for VA Linux's recent strategic move.</td>
  <tr >
    <td rowspan="2" class="alt8"><a href="http://www.zdnet.com/" target="_blank">ZDNetNews</a></td>
    <td class="alt9"><a href="http://www.zdnet.com/intweek/stories/news/0,4164,2807176,00.html" target="_blank">Gnome
        Foundation Hires Timothy Ney</a><br>
      <i>August 23, 2001</i> </td>
  </tr>
  <tr >
    <td class="alt9">Charles Babcock, of Interactive Week, reports on Gnome's
      hiring of Free Software Foundation manager Timothy Ney.</td>
  </tr>
  <tr >
    <td rowspan="2" class="alt8"><a href="http://www.zdnet.com/" target="_blank">ZDNetNews</a></td>
    <td class="alt9"><a href="http://www.zdnet.com/zdnn/stories/comment/0,5859,2804416,00.html" target="_blank">Hail
        to IBM's ode to open source</a><br>
      <i>August 9, 2001</i> </td>
  </tr>
  <tr >
    <td class="alt9">AnchorDesk analyst Patrick Houston hails IBM's Open Source
      moves.</td>
  </tr>
  <tr >
    <td rowspan="2" class="alt8"><a href="http://www.zdnet.com/eweek/" target="_blank">eWeek</a></td>
    <td class="alt9"><a href="http://www.zdnet.com/eweek/stories/general/0,11011,2804315,00.html" target="_blank">IBM:
        Open standards hold key to dynamic e-busines</a>s<br>
      <i>August 14, 2001</i> </td>
  </tr>
  <tr >
    <td class="alt9">Peter Galli of eWeek reports on IBM's commitment to Open
      Source. An interesting and important document, and an insightful departure
      from Microsoft's fear of Open Source.</td>
  </tr>
  <tr >
    <td rowspan="2" class="alt8"><a href="http://dailynews.yahoo.com/h/tc/zd/?u" target="_blank">Yahoo!
        ZDNet News</a></td>
    <td class="alt9"><a href="http://dailynews.yahoo.com/h/zd/20010809/tc/sun_linux_offer_help_in_ms-kids_pc_flap_1.html" target="_blank">Sun,
        Linux offer help in MS-kids PC flap </a><br>
      <i>August 9, 2001</i> </td>
  </tr>
  <tr >
    <td class="alt9">Megan McAuliffe, ZDNet, Australia, reports on how Sun has
      (yet again) trumped Microsoft by offering to provide an Australian charity,
      PC for Kids, with free installations of StarOffice and RedHat 6.2 on its
      old PCs.</td>
  </tr>
  <tr >
    <td rowspan="2" class="alt8"><a href="http://www.theregister.com" target="_blank">The
        Register</a></td>
    <td class="alt9"><a href="http://www.theregister.co.uk/content/4/20884.html" target="_blank">.Net
        may yet close the open source movement</a><br>
      <i>August 8, 2001</i> </td>
  </tr>
  <tr >
    <td class="alt9">A characteristically trenchant analysis of the battle between
      .Net and its Free Software and Open Source opponents.</td>
  </tr>
  <tr >
    <td rowspan="2" class="alt8"><a href="http://java.sun.com/" target="_blank">JavaSun.com</a></td>
    <td class="alt9"><a href="http://java.sun.com/features/2001/07/oscon01.html?frontpage-banner" target="_blank">May
        the Best Code Win: Reaction to OSCON's Microsoft-Red Hat Debate </a><br>
      <i>July 27, 2001</i> </td>
  </tr>
  <tr >
    <td class="alt9">Kammie Kayl interviews Sun's chief Open Source advocate,
      Danese Cooper, on the debate between Microsoft's Craig Mundie and Red Hat's
      CTO Michael Tiemann. </td>
  </tr>
  <tr >
    <td rowspan="2" class="alt8"><a href="http://www.computerworld.com/cwi/" target="_blank">Computerworld</a></td>
    <td class="alt9"><a href="http://www.computerworld.com/cwi/Printer_Friendly_Version/0,1212,NAV47_STO62567-,00.html" target="_blank">Open-source
        debate rages at O'Reilly conference </a><br>
      <i>July 26, 2001</i> </td>
  </tr>
  <tr >
    <td class="alt9">Ashlee Vance, IDG News Service, writes that "Despite recent
      changes by Microsoft Corp. to its licensing strategy for some software,
      the debate between commercial software developers and the open-source community
      continued to rage on Thursday, as top executives from Microsoft and Red
      Hat Inc. met at an industry conference." writer Andrew Orlowski reports
      on the turf wars being fought among pundit Nick Petreley, Open Source maven
      Miguel de Icaza, and everyone's favorite monopoly, Microsoft over .Net
      and its free-software/Open Source equivalents.&quot;</td>
  </tr>
  <tr >
    <td rowspan="2" class="alt8"><a href="http://www.computerworld.com/cwi/" target="_blank">CNET
        News.com </a></td>
    <td class="alt9"><a href="http://news.cnet.com/news/0-1276-210-6659302-1.html?tag=bt_pr" target="_blank">Open-source
        brouhaha: Missing the point</a><br>
      <i>July 25, 2001</i> </td>
  </tr>
  <tr >
    <td width="75%"> A preview of the Microsoft-Open Source showdown by Brian
      Behlendorf, founder and president of Apache and founder and CTO of CollabNet. </td>
  </tr>
  <tr >
    <td rowspan="2" class="alt8"><a href="http://www.theregister.co.uk" target="_blank">The
        Register </a></td>
    <td class="alt9"><a href="http://www.theregister.co.uk/content/4/20616.html">BETRAYAL!
        .NET clones and GNOME in the firing line</a><br>
      <i>July 24, 2001</i> </td>
  </tr>
  <tr >
    <td class="alt9"> Staff writer Andrew Orlowski reports on the turf wars being
      fought among pundit Nick Petreley, Open Source maven Miguel de Icaza, and
      everyone's favorite monopoly, Microsoft over .Net and its free-software/Open
      Source equivalents.</td>
  </tr>
  <tr >
    <td rowspan="2" class="alt8"><a href="http://www.zdnet.com/">ZDNet News </a></td>
    <td class="alt9"><a href="http://www.zdnet.com/zdnn/stories/news/0,4586,2792690,00.html?chkpt=zdnnp1tp02" target="_blank">Linux,
        Microsoft struggle looms over .Net</a><br>
      <i>July 20, 2001</i> </td>
  </tr>
  <tr >
    <td class="alt9"> Lem Bingley reports that &quot;A fledgling effort to replicate
      Microsoft's .Net architecture on Linux, called Mono, could quickly become
      mired in intellectual property difficulties.&quot;</td>
  </tr>
  <tr >
    <td rowspan="2" class="alt8"><a href="http://www.idg.net">IDG.net</a></td>
    <td class="alt9"><a href="http://www.idg.net/ic_651013_1793_1-3921.html" target="_blank">Users
        order StarOffice, protest Microsoft licensing scheme</a><br>
      <i>July 16, 2001</i> </td>
  </tr>
  <tr >
    <td class="alt9"> As Joris Evers writes, Dutch users are fed up with Microsoft's
      profiteering and have chosen instead a better alternative, one that is
      both free and supported by Open Source technology. </td>
  </tr>
  <tr >
    <td rowspan="2" class="alt8"><a href="http://www.eweek.com">eWeek</a></td>
    <td class="alt9"><a href="http://www.zdnet.com/eweek/stories/general/0,11011,2784625,00.html" target="_blank">Open-source
        OpenOffice[.org] for OS X faces uphill battle</a><br>
      <i>July 12, 2001</i> </td>
  </tr>
  <tr >
    <td class="alt9"> Daniel Drew Turner, in a special to <i>eWeek</i>, writes
      on the work that must be done to fully develop the OS X port of OpenOffice.org.</td>
  </tr>
  <tr >
    <td rowspan="2" class="alt8"><a href="http://news.cnet.com/" target="_blank">CNET
        News.com</a></td>
    <td class="alt9"><a href="http://news.cnet.com/news/0-1003-200-6527632.html?tag=mn_hd" target="_blank">Open-source
        steps in to duplicate .Net!</a><br>
      <i>July 9, 2001</i> </td>
  </tr>
  <tr >
    <td class="alt9"> According to Stephen Shankland, &quot;Open-source fans
      announced on Monday the first steps in an effort to reproduce Microsoft's
      .Net's underpinnings so people can use the technology without Microsoft's
      involvement.&quot; </td>
  </tr>
  <tr >
    <td rowspan="2" class="alt8"><a href="http://www.dwheeler.com/" target="_blank">David
        A. Wheeler</a></td>
    <td class="alt9"><a href="http://www.dwheeler.com/" target="_blank">Why Open
        Source Software / Free Software (OSS/FS)? Look at the Numbers!</a><br>
      <i>July 9, 2001</i> </td>
  </tr>
  <tr >
    <td class="alt9"> Noted IT writer David Wheeler presents the case for Open
      Source / Free Software in the most persuasive terms possible: he uses facts
      and numbers to prove his case.</td>
  </tr>
  <tr >
    <td rowspan="2" class="alt8"><a href="http://www.salon.com" target="_blank">Salon.com</a></td>
    <td class="alt9"><a href="http://www.salon.com/tech/feature/2001/06/28/appeals_reaction/index.html">Microsoft
        wins--or does it?</a><br>
      <i>June 28, 2001</i> </td>
  </tr>
  <tr >
    <td class="alt9"> &quot;Lawrence Lessig, Tim O'Reilly, Eric Raymond and other
      experts and observers analyze the appeals court's ruling in the antitrust
      case.&quot; Presented by the Salon Technology staff.</td>
  </tr>
  <tr >
    <td rowspan="2" class="alt8"><a href="http://www.eweek.com">eWeek</a></td>
    <td class="alt9"><a href="http://www.zdnet.com/zdnn/stories/news/0,4586,2779806,00.html">StarOffice
        meet Star Wars</a><br>
      <i>June 25, 2001</i> </td>
  </tr>
  <tr >
    <td class="alt9">Peter Galli reports from the war front: &quot;In a significant
      win for open source desktop productivity suites, Sun Microsystems Monday
      announced that the U.S. Defense Information Systems Agency (DISA) would
      implement up to 25,000 units of its StarOffice 5.2 software.&quot;</td>
  </tr>
  <tr >
    <td rowspan="2" class="alt8"><a href="http://news.cnet.com/" target="_blank">CNET
        News.com</a></td>
    <td class="alt9"><a href="http://news.cnet.com/news/0-1003-200-6291224.html?tag=prntfr" target="_blank">Why
        Microsoft is Wary of Open Source</a><br>
      <i>June 18, 2001</i> </td>
  </tr>
  <tr >
    <td class="alt9">As Joe Wilcox and Stephen Shankland argue, the issue for
      Microsoft is not whether Linux and Free Software is un-American, but whether
      Linux's popularity will ultimately &quot;hinder&quot; Microsoft's quest
      to gain more control in the server market. </td>
  </tr>
  <tr >
    <td rowspan="2" class="alt8"><a href="http://public.wsj.com/" target="_blank">The
        Wall Street Journal (WSJ.com)</a></td>
    <td class="alt9"><a href="http://interactive.wsj.com/articles/SB992819157437237260.htm" target="_blank">Microsoft
        Uses Open-Source Code Despite Denying Use of Such Software</a><br>
      <i>June 18, 2001</i> </td>
  </tr>
  <tr >
    <td class="alt9">As Lee Gomes reports, Microsoft Corporation, despite its
      repeated and heated insistence, has continued to benefit from FreeBSD,
      which it has used for running elements of its HotMail system. [Registration
      required to read the article.]</td>
  </tr>
  <tr >
    <td rowspan="2" class="alt8"><a href="http://public.wsj.com/" target="_blank">The
        Wall Street Journal (WSJ.com)</a></td>
    <td class="alt9"><a href="http://interactive.wsj.com/archive/retrieve.cgi?id=SB992473322427071471.djm&template=doclink.tmpl">The
        Campaign Against Linux Is Uphill Battle for Microsoft</a><br>
      <i>June 14, 2001</i> </td>
  </tr>
  <tr >
    <td class="alt9">Lee Gomes argues that Microsoft's effort's to &quot;vilify
      Linux and other 'open source' software appears to be backfiring. [Registration
      required to read the article.]</td>
  </tr>
  <tr >
    <td rowspan="2" class="alt8"><a href="http://www.nytimes.com" target="_blank">The
        New York Times.com</a></td>
    <td class="alt9"><a href="http://www.nytimes.com/2001/06/04/technology/04NECO.html" target="_blank">New
        Economy: Open-Source Movement Advances</a><br>
      <i>May 30, 2001</i> </td>
  </tr>
  <tr >
    <td class="alt9">Laurie J. Flynn of the New York <i>Times</i> analyzes the
      state of Open Source. [Free registration required to read the article on
      the site.]</td>
  </tr>
  <tr >
    <td rowspan="2" class="alt8"><a href="http://www.zdnet.com" target="_blank">ZDNetNews</a></td>
    <td class="alt9"><a href="http://www.zdnet.com/sp/stories/news/0,4538,2766745,00.html" target="_blank">Making
        a Friendly Standard</a><br>
      <i>May 30, 2001</i> </td>
  </tr>
  <tr >
    <td class="alt9">Suzanne Deffree writes about how Sun Microsystems &quot;looks
      to open-source systems management.&quot; </td>
  </tr>
  <tr >
    <td rowspan="2" class="alt8"><a href="http://www.itworld.com/" target="_blank">ITWorld.com</a></td>
    <td class="alt9"><a href="http://www.nwfusion.com/news/2001/0530ibmnhf.html" target="_blank">IBM,
        NEC, Hitachi and Fujitsu team on Linux</a></td>
  </tr>
  <tr >
    <td class="alt9">Martyn Williams reports on the joining together of the four
      companies to strengthen Linux. </td>
  </tr>
  <tr >
    <td rowspan="2" class="alt8"><a href="http://www.zdnet.com" target="_blank">ZDNetNews</a></td>
    <td class="alt9"><a href="http://www.zdnet.com/zdnn/stories/news/0,4586,2766341,00.html?chkpt=zdhpnews01" target="_blank">Stallman
        Strikes Back at Microsoft</a><br>
      <i>May 29, 2001</i> </td>
  </tr>
  <tr >
    <td class="alt9">For Richard Stallman, Mary Jo Foley writes, software is &quot;about
      freedom, equality and liberty.&quot; For Microsoft, it &quot;is about making
      money.&quot;</td>
  </tr>
  <tr >
    <td rowspan="2" class="alt8"><a href="http://www.sdtimes.com" target="_blank">SD
        Times</a></td>
    <td width="75%"><a href="http://www.sdtimes.com/cols/opensourcewatch.htm" target="_blank">Open
        Source Watch: Weekly Columns</a> </td>
  </tr>
  <tr >
    <td class="alt9">Noted columnist Bruce Hildebrand analyzes the state of Open
      Source every week.</td>
  </tr>
  <tr>
    <td rowspan="2" class="alt8"><a href="http://maccentral.macworld.com/" target="_blank">MacCentral</a></td>
    <td class="alt9"><a href="http://maccentral.macworld.com/news/0104/11.openoffice.shtml" target="_blank">OpenOffice[.org]
        code comes to Mac OS X</a><br>
      <i>April 10, 2001</i></td>
  </tr>
  <tr>
    <td class="alt9">Dennis Sellers provides ground-breaking reportage on the
      Mac OS X port of the OpenOffice.org code. </td>
  </tr>
  <tr>
    <td rowspan="2" bgcolor="#f0f0f0" class="alt8"><a href="http://news.cnet.com/" target="_blank">CNET
        News.com</a></td>
    <td width="75%" "29" bgcolor="#f0f0f0"><a href="http://news.cnet.com/news/0-1003-201-5551386-0.html" target="_blank">Open-source
        development drives innovation</a><br>
      <i>April 10, 2001</i></td>
  </tr>
  <tr>
    <td class="alt9">One of the biggest developments in software during the past
      decade has been the growth of the open-source software movement. </td>
  </tr>
  <tr>
    <td rowspan="2" class="alt8"><a href="http://dailynews.yahoo.com/" target="_blank">Yahoo!
        News</a>: <a href="http://dailynews.yahoo.com/h/tc/zd/?u" target="_blank">ZDNet</a></td>
    <td class="alt9"><a href="http://dailynews.yahoo.com/h/zd/20010228/tc/the_gnu_gpl_and_the_american_way_1.html" target="_blank">The
        GNU GPL and the American Way</a><br>
      <i>February 28, 2001</i></td>
  </tr>
  <tr>
    <td class="alt9">Richard Stallman, who founded the GNU Project, powerfully
      argues that Open Source is anything but &quot;un-American,&quot; as Microsoft
      has asserted.</td>
  </tr>
  <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/2001/02/07/openoffice.html">Adventures
        with OpenOffice[.org] and XML</a><br>
      <i>February 5, 2001</i></td>
  </tr>
  <tr>
    <td class="alt9">Matt Sergeant examines OpenOffice.org's XML capability and
      focuses on &quot;using the XML to generate something of potential interest
      to web developers and content editors.&quot;</td>
  </tr>
  <tr>
    <td rowspan="2" class="alt8"><a href="http://abcnews.go.com/index.html">abcNEWS.com</a></td>
    <td class="alt9"><a href="http://abcnews.go.com/sections/scitech/DailyNews/linuxworld010202.html">Free
        Money: At LinuxWorld, Companies Plan to Profit From Free Software</a><br>
      <i>February 2, 2001</i></td>
  </tr>
  <tr>
    <td class="alt9">Asking, &quot;If you can get the Linux operating system
      for free, how are companies making money on it?&quot; Sascha Segan inquires
      into the profitability of Open Source. </td>
  </tr>
  <tr>
    <td rowspan="2" class="alt8"><a href="http://www.linuxpower.org/">Linuxpower</a></td>
    <td class="alt9"><a href="http://www.linuxpower.org/display.php?id=202">Talking
        with John Heard of Sun about GNOME</a><br>
      <i>January 23, 2001</i></td>
  </tr>
  <tr>
    <td class="alt9">A fascinating interview conducted by Christian Schaller
      with the manager of architecture and strategy at Sun. </td>
  </tr>
  <tr>
    <td rowspan="2" class="alt8"><a href="http://www.atstake.com/">@Stake</a></td>
    <td class="alt9"><a href="http://www.atstake.com/research/advisories/2001/a012301-1.txt">Parsing
        Overflow in Microsoft PowerPoint 2000</a><br>
      <i>January 23, 2001</i></td>
  </tr>
  <tr>
    <td class="alt9">Microsoft PowerPoint is shown to be vulnerable to malicious
      files which could take control not just of the application but also of
      the viewer's machine. As an alternative to PowerPoint, the analysts recommend
      StarOffice 5.2 and OpenOffice.org. </td>
  </tr>
  <tr>
    <td rowspan="2" class="alt8"><a href="http://www.newsforge.com/">NewsForge</a></td>
    <td class="alt9"><a href="http://www.newsforge.com/article.pl?sid=01/01/18/2117229">How
        close are we, really? [A] Review of StarOffice 5.2</a><br>
      <i>January 19, 2001</i></td>
  </tr>
  <tr>
    <td class="alt9">In this insightful review article, Tim Hanson appraises
      the state of office productivity software for Linux. </td>
  </tr>
  <tr>
    <td rowspan="2" class="alt8"><a href="http://www.eweek.com">eWeek</a></td>
    <td class="alt9"><a href="http://www.zdnet.com/eweek/stories/general/0,11011,2672703,00.html">Sun
        Makes Headway Toward StarOffice 6</a><br>
      <i>January 9, 2001</i></td>
  </tr>
  <tr>
    <td class="alt9">Sun Microsystems Inc. on Tuesday will release the latest
      draft specification of the XML file format that will be included in the
      next version of its StarOffice software suite due out later this year. </td>
  </tr>
</table>
</body>
</html>

