<!DOCTYPE html>
<html><head>
<title>OpenOffice.org 1.0 Media FAQ</title>
<meta HTTP-EQUIV="content-type" CONTENT="text/html; charset=UTF-8">
</head>
<body>
<h2>OpenOffice.org  1.0 Media FAQ</h2>
<em>2002-10-14</em> 
<p></p>
<h4> <a name="top">Contents</a> </h4>

    <ul>
      <li><a href="#1">Why is OpenOffice.org important?</a></li>
      <li><a href="#2">What are we announcing today?</a></li>
      <li><a href="#3">What is OpenOffice.org 1.0 (Product)?</a></li>
      <li><a href="#4">Who are the target customers for OpenOffice.org 1.0?</a></li>
      <li><a href="#5">What is the status of the Mac OS X port?</a></li>
      <li><a href="#6">What difference does XML make to the average user?</a></li>
      <li><a href="#7">Why is the momentum for OpenOffice.org revolutionary?</a></li>
      <li><a href="#8">What are the factors that would prevent someone from moving 
        to OpenOffice.org 1.0?</a></li>
      <li><a href="#9">What is OpenOffice.org (Project)?</a></li>
      <li><a href="#10">What does OpenOffice.org, the source project and community 
        do?</a></li>
      <li><a href="#11">What are the objectives of the OpenOffice.org project?</a></li>
      <li><a href="#12">Who will benefit from OpenOffice.org?</a></li>
      <li><a href="#13">What is Sun's role in this?</a></li>
      <li><a href="#14">What is the difference in between StarOffice [tm] 6.0 
        software and OpenOffice.org?</a></li>
      <li><a href="#15">What are the Software Freedoms offered by OpenOffice.org?</a></li>
      <li><a href="#16">Are other office productivity vendors involved in OpenOffice.org?</a></li>
      <li><a href="#17">Why was OpenOffice.org founded?</a></li>
      <li><a href="#18">How can I join OpenOffice.org?</a></li>
      <li><a href="#19">What is CollabNet's involvement with the OpenOffice.org 
        infrastructure?</a></li>
      <li><a href="#20">Where can I find more information about the OpenOffice.org 
        community?</a></li>
    </ul>
 

<hr>

<h4><a name="1">Q. Why is OpenOffice.org important ?</a></h4>
<b>A.</b> It is important for many reasons. Here are a few:

   <ul>
	<li>Total cost of ownership is favourable, the office suite is free!;</li>
	
  <li>Open file formats giving continuous file continuity over time and compatibility 
    with files generated with other suites;</li>
	<li>Multi-lingual, multi-platform - every one can standardise on it and it is ideal for mixed operating system environments;</li>
	<li>Stability and features are strong and getting stronger;</li>
	<li>Ease of use - training is not an issue, anyone who had used an office suite will find OpenOffice.org intuitive;</li>
	<li>Future modules and developments are positive:</li>
	<li class="subp2em">       <a href="http://groupware.openoffice.org/">Groupware Project,</a> working on developing functionality sufficient to make OpenOffice.org a complete replacement for Microsoft office plus MS Exchange server;</li>
	<li class="subp2em"> <a href="http://xml.openoffice.org/">XMerge</a> (plug-in Java based framework for converting documents between formats for hand held devices). Allows you to view, edit and format the original document within your handheld. Not feasible without XML;</li>
</ul>

<a href="#top">Top</a> 
<hr>

<h4><a name="2">Q. What are we announcing today?</a></h4>
<p class="subp1em">
<strong>A.</strong>  Today, we are announcing the second anniversary (Oct. 13, 2002) of the open source project, OpenOffice.org, and the release of the Beta version of OpenOffice.org 1.0 for Mac OS X.  Also, upon the anniversary the community is announcing the release of a new Developer Build of OpenOffice.org 1.0 that will be tested and eventually end up in the next user release of the code.
</p>

<p class="subp1em">
Furthermore, the community is broadcasting the important milestones achieved in the short life of the project.  Particularly impressive is the rate of downloads of the software and the acceleration (since the version 1.0 launch in May 2002) in the growth of users, developers and marketers who are all contributing to the improvement and distribution of the code.
</p>

<a href="#top">Top</a> 
<hr>
<h4><a name="3">Q. What is OpenOffice.org 1.0?</a></h4>
<p class="subp1em">
<strong>A.</strong>  OpenOffice.org 1.0 is a full-featured office productivity suite that provides a near drop-in replacement for Microsoft Office. Users report that little or no training is required for people migrating from other office suites - everything works the way people expect.
The free office productivity software suite features key desktop applications - including word processor, spreadsheet, presentation and drawing programs - in more than 25 languages. In addition, OpenOffice.org 1.0 works transparently with a variety of file formats, enabling users to exchange documents freely with users of with other office suites, such as Microsoft Office and StarOffice [tm] 6.0 software. OpenOffice.org 1.0 software runs stably and natively on multiple platforms, including Linux, PPC Linux, Solaris [tm], Windows and many other flavors of nix.This makes it an ideal first step in a migration strategy towards completely open-source computing.
 OpenOffice.org 1.0 is the culmination of more than 18 months of collaborative 
  effort by members of the OpenOffice.org community, which is comprised of Sun 
  employees, volunteers, CollabNet, and end users, all working to create a world-class 
  international office suite that will run on all major platforms.
</p>

<p class="subp1em">
Written in C++ and with documented APIs licensed under the LGPL and SISSL Open Source licenses, OpenOffice.org allows any knowledgeable developer to benefit from the source. And, because the file format for OpenOffice.org is XML, interoperability is easy, making future development and adoption more certain.
</p>
<a href="#top">Top</a> 
<hr>
<h4><a name="4">Q. Who are the target customers for OpenOffice.org 1.0?</a></h4>
<p class="subp1em"> <strong>A.</strong> OpenOffice.org is targeted particularly 
  at users who do not need or cannot afford the security of Sun's corporate support 
  umbrell<strong>A.</strong> So the users can make the choice - Home users, educational 
  users, public sector users, non-governmental organisations, etc. are expected 
  to find OpenOffice.org an irresistible proposition. OpenOffice.org allows students 
  or employees to use world-class software in their classroom or office, and take 
  their own copies without any licence worries. For developing countries in particular, 
  this is truly empowering technology. </p>
<a href="#top">Top</a> 
<hr>
<h4><a name="5">Q. What is the status of the Mac OS X port?</a></h4>
<p class="subp1em"> <b>A.</b> We currently have several completed ports, including 
  PPC Linux and NetBSD/Sparc, and 10 in progress of which the Mac OS X port is 
  one. Since the Mac OS X port was released to the community for further development, 
  volunteers have joined the project and have been making significant progress. 
  The Mac OS X port has also gone through some updates over this period and porting 
  team have been keeping current with releases and the rapid pace of development 
  on the OpenOffice.org 1.0 office suite. The port is now fully in beta, using 
  the X11 window system and full Aqua integration will come in future stages. 
  More developers are needed with Unix or Mac OS X experience to help make this 
  port a reality and help integrate the port to Aqua. </p>

<a href="#top">Top</a> 
<hr>
<h4><a name="6">Q. What difference does XML make to the average user?</a></h4>
<p class="subp1em">
<strong>A.</strong>  OpenOffice.org 1.0's implementation of the XML file format ensures that OpenOffice.org will always be accessible to anyone in the world. It means that documents created today in OpenOffice.org 1.0 are always going to be accessible because the file format is standard, open and well-documented. For all practical purposes, files created today in OpenOffice.org 1.0 are guaranteed to be equally accessible in 100 years and beyond.
</p>

<p class="subp1em">
National, regional and local government agencies all over the world--who are especially sensitive to the issue of public access to information--are very substantial beneficiaries to the OpenOffice.org 1.0 promise of file format compatibility and continuity.
</p>

<p class="subp1em">
In addition, the OpenOffice.org 1.0 implementation of XML incorporates zip compression that's activated when files are opened and closed which makes OpenOffice.org 1.0 files size on the order of 25-60% smaller than files of the leading office suite. Therefore, the average OpenOffice.org 1.0 document file takes up significantly less space on your hard drive.
</p>

<p class="subp1em">
Further, XML as implemented by OpenOffice.org will soon allow document viewing, formatting and editing on small hand-held devices--including Palm, Pocket PC, and one day perhaps on a cell phone--without needing the Office application to run resident on the small device.
</p>

<a href="#top">Top</a> 
<hr>
<h4><a name="7">Q. Why is the momentum for OpenOffice.org revolutionary?</a></h4>
<strong>A.</strong>  Growth in the community and in the downloads have far surpassed all expectations.
<p class="subp1em">
The community is growing in large numbers and comprising of a larger user community wishing to contribute. Some numbers on OpenOffice.org will help explain this:
</p>

<table>
  <tr> 
    <th align="left">&nbsp;</th>
    <th width="15%">2001-04</th>
    <th width="15%">2001-10</th>
    <th width="15%">2002-05</th>
    <th width="15%"> 2002-10</th>
  </tr>
  <tr> 
    <th  align="left">Downloads</th>
    <td align="center">5,000</td>
    <td align="center">1 Million</td>
    <td align="center">4.5 Million </td>
    <td width="20%" align="center">8.5 Million+</td>
  </tr>
  <tr> 
    <th align="left">Mirrors</th>
    <td align="center">0</td>
    <td align="center">6</td>
    <td align="center">34</td>
    <td align="center">35+</td>
  </tr>
  <tr> 
    <th align="left">CD Distributors</th>
    <td align="center">0</td>
    <td align="center">1</td>
    <td align="center">12</td>
    <td align="center">55+</td>
  </tr>
  <tr> 
    <th align="left">Community Size</th>
    <td align="center">1,500&nbsp;</td>
    <td align="center">3,500&nbsp;</td>
    <td align="center">10,000&nbsp;</td>
    <td align="center">70,000+ </td>
  </tr>
  <tr> 
    <th align="left">Native Lang Projects</th>
    <td align="center">1</td>
    <td align="center">1</td>
    <td align="center">5</td>
    <td align="center">6 </td>
  </tr>
  <tr> 
    <th align="left">Weekly Posts</th>
    <td align="center">300</td>
    <td align="center">600</td>
    <td align="center">1500</td>
    <td align="center">2,000+</td>
  </tr>
</table><br>
<a href="#top">Top</a> 
<hr>
<h4><a name="8">Q. What are the factors that would prevent someone from moving to OpenOffice.org 1.0?</a></h4>
<p class="subp1em">
<strong>A.</strong>  We are open about this information too.
</p>


  <ul>
	
  <li>OpenOffice.org 1.0 doesn't have MS Outlook with Exchange Server capabilities 
    yet (although there are complete replacements for that combination for the 
    Linux operating system available through Ximian's Evolution and Corporate 
    Connect products);</li>
	<li>For the small percentage (estimated less than 5% ) of users who have legacy spreadsheets or files containing mission-critical macros, switching would be  expensive since macros written in the leading suite do not automatically convert when a document is opened in OpenOffice.org 1.0.</li>
</ul>
<a href="#top">Top</a> 
<hr>
<h4><a name="9">Q.What is OpenOffice.org?</a></h4>
<p class="subp1em">
<strong>A.</strong>  OpenOffice.org is the largest open source project with more than 7.5 million lines of code. To date  million downloads of earlier versions of OpenOffice.org 1.0 have taken place. OpenOffice.org is also the home of the open source project and its community of developers, users and marketers responsible for the on-going development of the OpenOffice.org 1.0 product. The mission of OpenOffice.org is to create, as a community, the leading international office suite that will run on all major platforms and provide access to all functionality and data through open-component based APIs and an XML-based file format. Additional ports, such as FreeBSD, IRIX and Mac OS X are in various stages of completion by developers and end-users in the OpenOffice.org community. OpenOffice.org 1.0 is written in C++ and has documented API's licensed under the GNU Lesser General Public License (LGPL) and Sun Industry Standards Source License (SISSL) open source licenses.
</p>
<a href="#top">Top</a> 
<hr>
<h4><a name="10">Q. What does OpenOffice.org, the source project and community 
  do?</a></h4>
<p class="subp1em">
<strong>A.</strong>  The OpenOffice.org project provides the necessary facilities to make this open source technology available to the  developer- and user-community. This includes the publicly accessible source code, over 31 projects and information Web site (/), and active discussion forums with over  total posts per week.
</p>
<a href="#top">Top</a> 
<hr>
<h4><a name="11">Q. What are the objectives of the OpenOffice.org project?</a></h4>
<p class="subp1em"> <strong>A.</strong> The objectives of OpenOffice.org are to: 
</p>
<ul>
	<li>Provide a free open source office suite in many languages and on many platforms;</li>
	<li>Provide open access to the source code;</li>
	<li>Establish open productivity XML-based file formats and language-independent component APIs;</li>
	<li>Enable innovation, which will build the next generation of open network productivity services.</li>
</ul>
<a href="#top">Top</a> 
<hr>
<h4><a name="12">Q. Who will benefit from OpenOffice.org?</a></h4>
<p class="subp1em">
<strong>A.</strong>Both companies, governments, and individuals will benefit. OpenOffice.org represents open sources, open language-independent APIs, open XML-based file formats, and open access. In the short run, these benefits affect source code developers, especially those in the open source community. In the long run,OpenOffice.org will also provide value for API and macro developers and of course, the end-user community, which will enjoy the benefit of new innovation, applications and the ability to maintain and exchange documents with any users.
</p>

<a href="#top">Top</a> 
<hr>
<h4><a name="13">Q. What is Sun's role in this?</a></h4>
<p class="subp1em">
<strong>A.</strong>  Sun initiated this effort, in July 2000, by donating over 7.5 million lines of the StarOffice software source code and engineering to the OpenOffice.org community. Sun engineers work on the OpenOffice.org code, giving back the contributions to the open source community. Sun's goal with the StarOffice software is simply to make it the premier branded implementation available - based on the OpenOffice.org technology.
</p>


<p class="subp1em"> Sun continues to sponsor and support the innovation in the 
  openoffice.org community and remains, as a strong supporter for the use of open 
  standards in the industry. It is critical for all of Sun's customers that there 
  be open, viable, cutting-edge office productivity software available to run 
  in the heterogeneous network and across all platforms. OpenOffice.org makes 
  it possible. Through open standards and by expanding the market for product 
  implementations based on open standards Sun can lead through hardware and related 
  services. Sun believes 'innovation happens elsewhere' and the OpenOffice.org 
  community has shown true creativity and innovation both in development and marketing 
  of OpenOffice.org 1.0. </p>

<a href="#top">Top</a> 
<hr>
<h4><a name="14">Q. What is the difference in between StarOffice [tm] 6.0 software and OpenOffice.org ?</a></h4>
<p class="subp1em">
<strong>A.</strong>  OpenOffice.org 1.0, which shares the same code base as Sun's StarOffice [tm] 6.0 software is - like StarOffice 6.0 software - a full-featured office suite that provides a near drop-in replacement for Microsoft Office. OpenOffice.org 1.0 offers software freedom, enabling a free market for service and support, while the Sun-branded product, StarOffice 6.0 software, offers 24x7 fee-based support and training for consumers and businesses, along with deployment and migration services. StarOffice 6.0 includes some proprietary code in the form of third-party licensed technology, which is not available in OpenOffice.org 1.0. Sun pays to license the third-party technology included in StarOffice and it does not have permission to open source it. Examples of this third-party technology include:
</p>


  <ul>
	<li>  Certain fonts (including, especially, Asian language fonts)</li>
	<li>Dieckmann spell checker (OpenOffice.org 1.0 has a community developed open source spellchecker)</li>
	<li>    The database component (Adabas D)</li>
	<li>   Certain file filters</li>
	<li>    Extensive clip art gallery</li>
</ul>


<p class="subp1em"> OpenOffice.org offers numerous additional ports and supports 
  23 different languages, developed as a community, with many more languages and 
  ports in progress. The two office suites complement each other, meeting the 
  varying needs of consumers, open source advocates and enterprise customers. 
</p>
<a href="#top">Top</a> 
<hr>

<h4><a name="15">Q. What are the Software Freedoms offered by OpenOffice.org?</a></h4>
<p class="subp1em">
<strong>A.</strong>  from www.gnu.org (the Free Software Foundation website)
These are:
</p>
<ul>
     <li>The freedom to run the program, for any purpose (freedom 0);</li>
     <li>The freedom to study how the program works, and adapt it to your needs (freedom 1). Access to the source code is a precondition for this;</li>
     <li>The freedom to redistribute copies so you can help your neighbor (freedom 2);</li>
     
  <li>The freedom to improve the program, and release your improvements to the 
    public, so that the whole community benefits (freedom 3). Access to the source 
    code is a precondition for this.</li>
</ul>
<a href="#top">Top</a> 
<hr>
<h4><a name="16">Q. Are other office productivity vendors involved in OpenOffice.org?</a></h4>
<p class="subp1em">
<strong>A.</strong>  OpenOffice.org invites everybody to join us in this journey to free and open office productivity. By combining an open community and the dual licensing model so that anyone can participate in this endeavor freely.
</p>
<a href="#top">Top</a> 
<hr>
<h4><a name="17">Q. Why was OpenOffice.org founded?</a></h4>
<p class="subp1em"> A. The OpenOffice.org community was founded to create the 
  leading international office suite that will run on all major platforms and 
  provide access to all functionality and data through open-component based APIs 
  and an XML-based file format. The Community was established in Oct 2000 with 
  Sun's donation of the StarOffice 5.2 source code. </p>

<a href="#top">Top</a> 
<hr>
<h4><a name="18">Q. How can I join OpenOffice.org?</a></h4>
<p class="subp1em">
A. Anyone can join the OpenOffice.org community by simply registering <a href="//servlets/Join">here</a>. Once you have registered, you may join particular projects, file issues, bugs, patches, or comment on already filed issues. If you want to be informed of future announcements to make sure you don't miss out send an email to: <a href="mailto:announce-subscribe@openoffice.apache.org">announce-subscribe@openoffice.apache.org</a>.
</p>

<a href="#top">Top</a> 
<hr>
<h4><a name="19">Q. What is CollabNet's involvement with the OpenOffice.org infrastructure?</a></h4>
<p class="subp1em">
A. CollabNet's SourceCast application enables both centralized and geographically distributed software development teams to collaborate. SourceCast is the premier Web-based collaboration environment, which includes an integrated set of software development applications and tools.</p>

<a href="#top">Top</a> 
<hr>
<h4><a name="20">Q. Where can I find more information about the OpenOffice.org community?</a></h4>
<p class="subp1em">
A. You can find more information about OpenOffice.org on the Website, /. Take a look at the site <a href="../faq.html">FAQ</a> or the <a href="presskit.html">media resources kit</a> for more information.
</p>

<p>
Sun, Sun Microsystems, the Sun logo, StarOffice, Solaris and "The
Network Is The Computer" are trademarks or registered trademarks of Sun
Microsystems, Inc. in the United States and other countries.
</p>
<a href="#top">Top</a> 
<hr>
</body>
</html>

