<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<head>
  <title>Marketing Project Press Releases</title>
  <meta name="keywords" content="Marketing, OpenOffice, OpenOffice.org" />
  <link rel="stylesheet" type="text/css" href="marketing.css" />
</head>

<body>
  <div id="MyContent">
    <div class="MyTitle">
      Press Releases
    </div>

    <p>The OpenOffice.org Marketing Project is happy to acknowledge the
    generous support of <a href="http://www.prweb.com">PRWeb</a> in helping
    us distribute and track our press releases.</p>

    <p>You can see all our Press Releases archived in our <a href=
    "http://newsrooms.prweb.com/OOo/">PRWeb Newsroom</a>.</p>

    <p><a href="http://www.prweb.com/pr/best-online-news-releases-2009.html"><img style="float:left; display:inline;" src="prwebawards.png" /></a>OpenOffice.org was delighted to be awarded the
    <a href=
    "http://www.prweb.com/releases/prweb-awards/2009-winner/prweb3342904.htm">Best Online
    News Releases Award 2009</a> for our <a href="http://www.prweb.com/releases/OOo/31/prweb2388264.htm">Press Release for the launch of OpenOffice.org 3.1</a>.</p>

<!--
    <p>Starting in October 2008, we are also grateful for the professional
    assistance of <a href="http://www.crossroadspr.com/">Crossroads Public
    Relations</a> in developing and promoting our press releases.</p><br />
    

    <div class="MySubtitle">
      2008
    </div><br />

    <table summary="Table of Press Releases in 2008">
      <tbody>
        <tr>
          <th class="alt2">Date</th>

          <th class="alt2">Title</th>

          <th class="alt2">Abstract</th>
        </tr>

        <tr class="a">
          <td>Oct 13, 2008</td>

          <td><a href=
          "http://www.prweb.com/releases/OOo/3/prweb1459364.htm">OpenOffice.org
          Community Announces Third Major Release of Its Free, Easy-to-Use
          Office Software</a></td>

          <td>OpenOffice.org 3.0 provides more flexibility and functionality
          than any other office suite on the market. Available for the first
          time as native Mac OS X application.</td>
        </tr>

        <tr class="b">
          <td>Jun 12, 2008</td>

          <td><a href=
          "http://www.prweb.com/releases/2008/6/prweb1015094.htm">OpenOffice.org
          Extends Free Support for its Free Office Software</a></td>

          <td>The OpenOffice.org Community Users' Forum has today added
          Japanese to its list of supported languages. The Forum is a free
          web-based resource for users of the OpenOffice.org office
          productivity suite, the leading free software alternative to
          Microsoft Office</td>
        </tr>

        <tr class="a">
          <td>Mar 27, 2008</td>

          <td><a href=
          "http://www.prweb.com/releases/2008/03/prweb759464.htm">OpenOffice.org
          Releases New Version of Free Software Alternative to Microsoft
          Office</a></td>

          <td>The OpenOffice.org Community announces the release of
          OpenOffice.org 2.4, a new and enhanced version of the leading
          open-source office suite. The free software package provides a
          viable alternative to Microsoft's Office 2007 product - and an
          easier upgrade path for users of legacy MicrosoftOffice
          products.</td>
        </tr>

        <tr class="b">
          <td>Jan 30, 2008</td>

          <td><a href=
          "http://www.prweb.com/releases/2008/1/prweb663824.htm">OpenOffice.org
          Offers Cash Prizes to Boost Innovation</a></td>

          <td>OpenOffice.org is looking for great ideas for enhancing its
          free software alternative to Microsoft Office, and thanks to
          sponsorship from Sun Microsystems, it's got generous cash prizes on
          offer.</td>
        </tr>
      </tbody>
    </table><br />

    <div class="MySubtitle">
      2007
    </div><br />

    <table summary="Table of Press Releases in 2007">
      <tbody>
        <tr>
          <th class="alt2">Date</th>

          <th class="alt2">Title</th>

          <th class="alt2">Abstract</th>
        </tr>

        <tr class="a">
          <td>Sep 19, 2007</td>

          <td><a href=
          "http://www.prweb.com/releases/OpenOffice.org/Everex/prweb554712.htm">
          OpenOffice.org Free Software Proves a Success at WalMart</a></td>

          <td>Delegates at the OpenOffice.org Conference today heard how
          their software - a free alternative to Microsoft Office - has
          proved a success with shoppers in US chain WalMart, thanks to a
          'Back to School' PC from Everex.</td>
        </tr>

        <tr class="b">
          <td>Sep 17, 2007</td>

          <td><a href=
          "http://www.prweb.com/releases/OpenOffice.org/2.3/prweb553586.htm">OpenOffice.org
          Releases New Version of Free Software Alternative to Microsoft
          Office</a></td>

          <td>The OpenOffice.org Community announce the release of
          OpenOffice.org 2.3, the latest version of the leading open-source
          office suite. With upgrades to its word processor, spreadsheet,
          presentations, and database software, the free software package
          provides a real alternative to Microsoft's Office 2007 product -
          and an easier upgrade path for existing Microsoft Office
          users.</td>
        </tr>

        <tr class="a">
          <td>Sep 10, 2007</td>

          <td><a href=
          "http://www.prweb.com/releases/openoffice.org/IBM/prweb552157.htm">IBM
          Joins OpenOffice.org Community</a></td>

          <td>The OpenOffice.org community - responsible for the leading free
          software alternative to Microsoft Office - today welcomed IBM as a
          community member. IBM has announced immediate code contributions
          and ongoing engineering support to the community, and will leverage
          OpenOffice.org technology in its own products</td>
        </tr>

        <tr class="b">
          <td>Jun 18, 2007</td>

          <td><a href=
          "http://www.prweb.com/releases/2007/06/prweb533468.htm">OpenOffice.org
          Announces Biggest Ever Annual Conference</a></td>

          <td>OpenOffice.org has today released the Programme for its biggest
          ever annual Conference. The Conference - to be held in Barcelona,
          Spain between 19th.-21st. September - is the main event of the year
          for developers, proponents and users of OpenOffice.org software,
          the leading free software alternative to Microsoft Office.</td>
        </tr>

        <tr class="a">
          <td>Mar 28, 2007</td>

          <td><a href=
          "http://www.prweb.com/releases/OpenOffice/Release22/prweb508436.htm">
          OpenOffice.org Releases New Version of Free Software Alternative to
          Microsoft Office</a></td>

          <td>The OpenOffice.org Community announce the release of
          OpenOffice.org 2.2, the latest version of the leading open-source
          office suite. With upgrades to its word processor, spreadsheet,
          presentations, and database software, the free software package
          provides a real alternative to Microsoft's recently-released Office
          2007 product - and an easier upgrade path for existing Microsoft
          Office users.</td>
        </tr>

        <tr class="b">
          <td>Mar 12, 2007</td>

          <td><a href=
          "http://www.prweb.com/releases/2007/03/prweb510567.htm">OpenOffice.org
          Issues an Invitation to Dell Computer Corporation</a></td>

          <td>OpenOffice.org urges Dell's CEO to respond to customer demand
          and bundle OpenOffice.org's free software alternative to Microsoft
          Office with Dell's computers</td>
        </tr>

        <tr class="a">
          <td>Feb 21, 2007</td>

          <td><a href=
          "http://www.prweb.com/releases/2007/02/prweb506529.htm">OpenOffice.org,
          the Free Competitor to Microsoft Office, Celebrates International
          Mother Language Day</a></td>

          <td>OpenOffice.org celebrates its success in supporting digitally
          endangered languages on UNESCO's International Mother Language
          Day.</td>
        </tr>
      </tbody>
    </table><br />

    <div class="MySubtitle">
      2006
    </div><br />

    <table summary="Table of Press Releases in 2006">
      <tbody>
        <tr>
          <th class="alt2">Date</th>

          <th class="alt2">Title</th>

          <th class="alt2">Abstract</th>
        </tr>

        <tr class="a">
          <td>Dec 12, 2006</td>

          <td><a href=
          "http://www.prweb.com/releases/2006/12/prweb490038.htm">Free
          Competitor to Microsoft Office Releases New Version</a></td>

          <td>The OpenOffice.org Community announce the release of
          OpenOffice.org 2.1, the latest version of the leading open-source
          office suite. With upgrades to its word processor, spreadsheet,
          presentations, and database software, the free software package
          provides a real alternative to Microsoft's recently-released Office
          2007 product.</td>
        </tr>
      </tbody>
    </table>
-->
  </div>
</body>
</html>
