﻿<html>
<head>
<title>Interview: Davide Dozza and Riccardo Losselli, Leads, Italian Language Project</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>
<body>
<h2>Interview: Davide Dozza and Riccardo Losselli, Leads, Italian Language Project</h2>
<p><a href="../lspintro.html">-Louis Suárez-Potts</a></p>
<p>2004-11</p>
<p>&nbsp; </p>

<p>In a conversation the first full day of the OpenOffice.org conference in Berlin last September, I had the luck of meeting with Davide Dozza and Riccardo Losselli, the leads of the <a href="http://it.openoffice.org/index.html">Italian Language Project</a> (IT).  As some members of the community are aware, the IT project has worked on providing not only support for OpenOffice.org and marketing the application but also on customizing the suite for the Italian market.  The customization essentially came down to stripping the binaries of all proprietary elements, in this case Java. (OpenOffice.org does not need Java.)  This customized version of OOo was never, however, released. </p>

<p> As I learned in my discussion, the IT project has been working with several other pressing issues, which Davide and Riccardo were happy to explain to me. The following interview was conducted via e-mail late last month.</p>

<p>&nbsp;</p>

<p><i> Please tell us about what you do and how you got involved in the Italian language project.</i></p>

<p> DAVIDE:  I'm mainly involved in co-ordinating people, in advocating OpenOffice.org along the country and managing some activities like QA tests and OpenOffice.org consultants database. I usually try to lobby OpenOffice.org by binding relationships with government institutions. </p>

<p>RICCARDO: I got involved in the Italian group by Gianluca Turconi, the former Italian Group leader. The spark was an <a href="//editorial/ec12Sept.html">article</a> by him, published on the OpenOffice.org site. At the time the Italian project was VERY small, i would dare to say that there was Gianluca only. At first i was mainly involved in marketing activities, and most of them where in the global marketing project, later i joined Davide as Project co-lead. For my work i'm  in contact with small business and private customers, and of course i advocate OpenOffice.org among them; also we have some quite active Linux User Groups in northern Italy, and they often invite me to talk about OpenOffice.org. I try both to  help the project and develop relationships between the Italian group and other Native langs by participating in the most important computer fairs when possible. It's a very good opportunity to meet people, both users and the OpenOffice.org "colleagues" you have been talking (i should say e-mailing) almost daily. I'm also interested and involved in the Mac porting efforts, and i'm the Mac contact for the Italian project.</p>

<p>&nbsp;</p>

<p><i>How large is the IT project? </i></p>

<p> DAVIDE: At the moment we have about 15 people actively involved into the project. They are involved in documentation management, web mastering, mail list (ML) support, marketing, press relationship management, localization building, legal support, OpenOffice.org advocating, school support, etc., etc. On ML we have about 200 subscribers. </p>

<p>RICCARDO: .... and this translates into the Italian project being one of the most
active <a href="/projects/native-lang.html">Native Lang projects</a>.</p>

<p>&nbsp;</p>

<p><i> The IT project has gained significant importance in the Italian open-source world.  In conversation, you  mentioned that many local companies and governments have chosen to use OpenOffice.org.  Can you elaborate more on this?  Which local organizations have made the choice? </i></p>

<p> DAVIDE: The revolution begins from the bottom.  A lot of small companies and local public administrations have migrated or are migrating to OpenOffice.org. It is very difficult to count all stories because information runs better from top to bottom and not vice versa. In my experience I have heard about councils such as Argenta, Maranello, Montale, San Doligo della Valle, Ozzano dell'Emilia, San Lazzaro di Savena that have migrated  and others such as Pavia, Genova's and Bolzano Province that are starting a migration to OpenOffice.org. And many others are considering to migrate. Also in schools we have quite good successes, but there it's a little bit more difficult to migrate, because of competitors' educational policies. There are also small and medium companies that are migrating, not only for a question of money but even more often for a question of freedom. In contrast, large companies are interested in a brand so they look with interest to StarOffice. We have significant success stories like  the Carabinieri (the italian military police) and some important italian insurances and banks. </p>

<p>RICCARDO: I cannot speak for big or public companies, as i  don't have the same contacts with them as Davide has. But speaking about small companies and home users, during these four years i've seen an increasing interest and use of OpenOffice.org. Most of my small business customers after trying OpenOffice.org switched from their previous office automation suite to OpenOffice.org. The ones who didn't usually had no real technical reason for not doing so.</p>

<p>&nbsp;</p>

<p><i> And, as a follow up, why did they (choose OpenOffice.org)?</i> </p>

<p>DAVIDE:  In general the cost is the most attractive feature. Definitely. But, especially public administrations and large accounts, look to OpenOffice.org as a choice of freedom; a freedom that will last. In fact by adopting free (as in thought) formats like the OpenOffice.org OASIS format, people are given permanent free access  to information contained in documents without the worry about licenses and patents.</p>

<p>RICCARDO: Most of them (chose OpenOffice.org) because of costs, at least at first. It's not uncommon for a small company to have just one license , or even no licenses at all for the most common program it uses. Piracy is a crime, and it is being addressed as such, every year with more and more strength. People are starting to understand that using pirated software will in the end cost money, instead of saving. It will either cost in fees, or lack of support, or result in programs being discontinued. Using pirated software in the first place hurts the ones who use it. On the other hand, i can understand that for a small company it's not easy to spend in software two or three times what it's spent in hardware. OpenOffice.org gives them the possibility to have what they need, and even more, without spending money on licenses, and keeping it legal. Unfortunately, the really important part, which is the freedom of data formats, is something that's usually no caught by them, at least until you have some very serious problems that lead you to being unable to use your last 10 years of data.</p>

<p>&nbsp;</p>

<p><i> You also discussed that large companies, regional and state governments have been reluctant too utilize OpenOffice.org.  Why?  What has been the obstacle? </i></p>

<p> DAVIDE:  I think the main obstacle for large accounts is who takes the responsibility. In my experience OpenOffice.org migration is always conducted under the supervision of a person who accepts to be liable for the activity. But it is not always the case that people have the courage to take these step and they prefer to rely on a brand. Another one is the effort that a large company has to make for personnel re-training [and technical refining], in order to guarantee  that their works are fully interoperability with the rest of the world. These activities are quite expensive and difficult to evaluate without professional support. </p>

<p>RICCARDO: Again, i cannot speak for big companies, but for the small ones. There are few reasons that can be summarized by the fact that for some companies switching is a troubled process. It doesn't matter what you switch, it's simply seen as a trouble. They wouldn't just switch to OpenOffice.org, as they do not switch to any new version of Microsoft Office too, or Microsoft Windows, and not for technical or economical reason. It's not even a software related problem, you get the same problem when you change hardware (or a fax or a photocopier). Some companies use poorly designed third-party software that relies heavily on the presence of a specific version of Microsoft Office, and this makes it impossible to switch, even to a different version of Microsoft Office.  Lastly, there are those few situations where OpenOffice.org still cannot address their needs, like an MS Access substitute. [<i>Editor: OpenOffice.org 2.0 includes an MS-Access substitute.</i>]</p>

<p> I'm happy to say that it's very uncommon to find problems when switching to OpenOffice.org, and usually the problems are limited to the small differences in OpenOffice.org menus and interface compared to the previous software. Nothing that cannot be solved by a question via e-mail though. </p>

<p>&nbsp;</p>

<p> <i>How can the OpenOffice.org overall project help you here? For instance, what marketing efforts can we contribute to? </i></p>

<p> DAVIDE:  Marketing should stress the formats and freedom not the cost savings. Marketing has to strongly support the idea that "information is value" and "information property resides into free formats". This is especially so with companies that make their business on citizens' information. Unfortunately, gratuity is often exchanged as weakness. Marketing should also insist on success stories by providing best practices. </p>

<p>RICCARDO:  I completely agree with Davide on this one.</p>

<p>&nbsp;</p>

<p><i> Any other points you feel it is important to bring up?</i> </p>

<p>DAVIDE:  It's very difficult to compete with companies that have a lot of resources for lobbying. And lobbying is our biggest problem with central administration. This is also harder when you can't present yourself as an entity. I think it should be very useful to try to aggregate people around a recognized foundation/association. This would be very helpful for lobbying the suite. </p>

<p>RICCARDO: Again, i agree with Davide.... i would also add, that not having such an entity makes very difficult for us to manage some situations (like donations, collaborations and so on) in a smooth way. </p>

<p>&nbsp; </p>
<p><a href="index.html">Back to Editorial Index</a></p>
</body>
</html>
