<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
<title>Quotes for 3.0</title>
<meta name="keywords" content="Marketing, OpenOffice, OpenOffice.org" />
<link rel="stylesheet" type="text/css" href="marketing.css" />
</head>
<body>
<div id="MyContent">
  <h1>What people are saying about OpenOffice.org</h1>
  <h2>OpenOffice.org Version 3.3 Launch</h2>
  <p><strong>Andrew Southworth</strong> Network Coordinator, <a href="http://www.canadianlabour.ca/home">Canadian
      Labour Congress</a> </p>
  <blockquote> “It's never been just about the savings. The Canadian Labour Congress
    selected OpenOffice.org in support of what it does and how it goes about
    doing it. It's the full support of the ODF that frees us from committing
    to any one vendor. And it's the extensions, the enterprise elements and the
    open-source code that gives all those we represent and work with in Canada,
    from schools to hospitals to libraries to private sector corporations the
    freedom of real productivity — without being locked into a particular company's
    vision of how you should work. Saving money on software is great. But OpenOffice.org,
    with its support of the ODF, is more than about the bottom line. It's about
    the freedom to choose the best.” </blockquote>
  <p><strong>Lisa Maola</strong> Resource Secretary, Sarnia, Ontario, Canada</p>
  <blockquote>"Working in a no-cost walk in resource centre specializing in assisting
    persons with disabilities, OpenOffice.org has provided a high quality, reliable
    product that enables us to effectively support clients in our community.
    A true point of difference is that documents can be opened from and saved
    in any format, thus removing communication barriers and allowing users to
    maintain their competitive edge. The compatibility of OpenOffice.org to work
    with proprietary software suites provides all users with flexible options
    consequently saving time and money."</blockquote>
  <p><strong>Ramon Solé</strong> CEO at <a href="http://www.opscons.com/">OPS
      Consulting</a></p>
  <blockquote>"More and more private companys are deploying OpenOffice.org as
    their corporate office suite. Our business in consulting and support for
    OpenOffice.org at OPS Consulting [in Barcelona, Spain] has been steadily
    growing since the release of OpenOffice.org 3.0. [Note: As of the release
    of 3.3, we have seen more than192 million dowhloads of OOo 3.0 --Editor.]
    We feel the grounds of such a increasing use of OpenOffice.org in the enterprise
    field are the improved compatibility with MS Office, the incorporation of
    new features demanded by the business environment and the daily extension
    of the base of business users, creating a true business ecosystems for OpenOffice.org.
    We were eagerly expecting the new release 3.3, as we are sure it will speed
    up even more the adoption rate of the suite in more firms." </blockquote>
  <h2>OpenOffice.org Version 3.0 Launch</h2>
  <p><strong>Aslam Raffee</strong> Chief Information Officer at Department Science
    and Technology, Republic of South Africa <a href=
    "http://www.linkedin.com/in/aslamraffee">(bio)</a></p>
  <blockquote> "The South African government adopted the Open Document Format
    (ODF) as the default format for the exchange of documents. The government
    also has policy which favours free and open source software wherever possible.
    In this context, the release of OpenOffice 3.0 is a huge milestone in the
    journey to make this a practical reality.<br />
    <br />
    "The latest version of OpenOffice is a free software suite which raises the
    bar for competing open source and proprietary office software products. The
    ability to read and write ODF documents as well as all significant document
    formats, combined with the ability to run OpenOffice on all major (and minor)
    operating system platforms already places this community driven office software
    suite in a critically important position for us.<br />
    <br />
    "We applaud the efforts of the developers from around the world who have
    brought huge performance and functionality improvements in this release.
    Its an outstanding piece of software and available for free under a great
    licence. I am confident that it meet the needs of most South Africans, its
    going to be hard for me to justify a government official using any other
    office suite. I certainly can't justify paying licence fees for one. I am
    also confident that we will see more of our talented South African developer
    community contributing to the ongoing effort to ensure that OpenOffice remains
    the first choice of office suites." </blockquote>
  <p><strong>Thomas Wlodkowski</strong> Director of Accessibility at AOL <a href="http://www.linkedin.com/pub/1/b44/b25">(bio)</a></p>
  <blockquote> "As a blind consumer who uses Mac OS 10 to carry out daily office
    tasks, I was pleased to see the progress that the OpenOffice.org community
    has made in addressing compatibility with Apple's VoiceOver screen reader.
    It is reassuring to know that consumers with disabilities will be able to
    move between computer platforms and enjoy equivalent access to applications
    that are critical to basic job performance." </blockquote>
  <p><strong>Peter Korn</strong> Accessibility Architect at Sun Microsystems
    and co-chair of the OASIS OpenDocument accessibility subcommittee <a href="http://www.linkedin.com/in/peterkorn">(bio)</a></p>
  <blockquote> "Sun and the OpenOffice.org community take accessibility very
    seriously, whether in schools, in the home, in the workplace or in government
    institutions. An accessible solution for editing documents, spreadsheets,
    and creating presentations is of vital importance to the hundreds of millions
    of people worldwide with disabilities.<br />
    <br />
    "We have listened and responded to the community. Our engineering efforts
    are a direct result of the requests we've received from our user community
    and exemplifies the innovation and success of the many open source initiatives
    at Sun." </blockquote>
  <p><strong>Jim Parkinson</strong> Vice President, Developer, Tools and Services
    Sun Microsystems Inc. <a href=
    "http://www.sun.com/aboutsun/media/ceo/bio.jsp?name=Jim%20Parkinson">(bio)</a></p>
  <blockquote> "In the 25+ years in the computer industry, I don't know when
    I was as proud of a product release as I am of OpenOffice.org 3.0. The OpenOffice.org
    community teams have come together to produce a first-class product. With
    the new features in 3.0, this sets us part from all other open source productivity
    packages. One of key parts of this release is MacOSx support, all of the
    early access feedback have been extremely positive. Also we must mention
    the many strong additions to extension system for OpenOffice." </blockquote>
  <p><strong>Solveig Haugland</strong> Consultant, trainer, technical author
    and OpenOffice.org guru <a href=
    "http://www.linkedin.com/in/getopenoffice">(bio)</a></p>
  <blockquote> "3.0 shows the continuing commitment from OpenOffice.org to providing
    the features that users consider the most important. I've been impressed
    with each release, as the features that users ask me for in class keep appearing,
    and aspects of OpenOffice that I've had to teach workarounds for, keep disappearing.
    In 3.0, one example of this is the addition of the popular three-up slide
    handouts layout, with lines for notes by each slide. I've been teaching students
    how to create this themselves for years, as well as how to find and use the
    separate window where they need to specify that they want to print handouts.
    Now, I can skip that lesson entirely, since the layout is already there,
    and an easy way to print handouts is now available in the main print window.
    I actually shouted out "Yes!" when I discovered this feature; it's going
    to save time in the classroom and make slide setup and printing simpler and
    easier." </blockquote>
  <h2>OpenOffice.org Extensions</h2>
  <p><strong>Solveig Haugland</strong> Consultant, trainer, technical author
    and OpenOffice.org guru <a href=
    "http://www.linkedin.com/in/getopenoffice">(bio)</a></p>
  <blockquote> "I am extraordinarily impressed with the Adobe Acrobat-like PDF
    editing features available in <a href=
      "http://extensions.openoffice.org/project/pdfimport">Sun's PDF
    editing extension</a>. You can delete, edit, and add text; add, edit, delete,
    move, and resize graphics; add, move, and delete pages; and more. All for
    free. This is a huge benefit to anyone who produces documents for publication,
    or organizations like schools and city and state governments that produce
    documents of any length for the public." </blockquote>
</div>
</body>
</html>
