

<!--#include virtual="/doctype.html" -->
<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    
    <link href="/css/ooo.css" rel="stylesheet" type="text/css">
    
<title>Interview: Deepankar Datta, P2P</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">

    
    <script src="https://www.apachecon.com/event-images/snippet.js"></script>
  </head>
  <body>
    <!--#include virtual="/brand.html" -->
    <div id="topbara">
      <!--#include virtual="/topnav.html" -->
      <div id="breadcrumbsa"><a href="/">home</a>&nbsp;&raquo;&nbsp;<a href="/editorial/">editorial</a></div>
    </div>
    <div id="clear"></div>
      
      
    <div id="content">
      
      
<h2>Interview: Deepankar Datta, P2P Project</h2>
<p><a href="../lspintro.html">-Louis Suárez-Potts</a></p>
<p>2004-11</p>
<p>&nbsp; </p>



<p>Earlier this year, the Peer-to-Peer project, a part of the Distribution Project, came into being, spearheaded by Deepankar Datta.  We had been considering such a project for several years, but it took Deepankar's initiative and drive to get things going. All users can now safely, securely, reliably download OpenOffice.org using <a href="http://www.bittorrent.com">BitTorrent</a>.  The following interview of Deepankar was conducted via email earlier in November.  If users want to help out with the P2P effort, please visit the <a href="http://distribution.openoffice.org/P2P/bittorrent.html">BitTorrent and OpenOffice.org project</a>.</p>
<p>&nbsp;</p>
<p><em>Tell us about yourself--who you are, what you do outside of OOo.</em></p>


<p> My name is Deepankar Datta, and I help the <a href="spotlightindex.html">OpenOffice.org Newsletter</a> and <a href="http://distribution.openoffice.org/P2P/">P2P</a> projects.  Outside of OOo I am a university student in the United Kingdom, as well as keen supporter of FLOSS projects. </p>
<p>&nbsp;</p>
<p><em>How did you first get involved in OpenOffice.org (OOo)?</em></p>


<p> I first got involved in 2003, when I heard of OOo in many online technology sites.  It was a matter of visiting the site and seeing OpenOffice.org was a major contender as an office suite, with the added benefit of a FLOSS background.  After some time playing around with it I was very impressed, and it quickly became the default office suite on my machine.  I decided to volunteer some of my time towards OOo, and saw that help was needed with the newsletter project, and that's how I started to become involved with the community. </p>
<p>&nbsp;</p>
<p><em>You have taken on several key duties:  You are along with Erwin Tenhumberg the producer of the OpenOffice.org Newsletter, as well as the lead and maintainer of the P2P Project.  What is entailed in doing these things?  And.. how do you manage the time?</em></p>


<p> For the newsletter, most of the time is spent finding and archiving summaries of different stories which relate to OOo.  These include community announcements, and news from the other projects of OOo, as well as news stories or reports which reference OOo itself.  It involves a fair bit of browsing and searching through Google, although with some automation these tasks become fairly trivial.  The stories we report get archived in the newsletter mailing list, and are properly formatted, so that by the time we come round to publishing the newsletter, a lot of the stories can be pasted straight in.  This simplifies creating the newsletter and allows it to be done in a matter of hours. </p>

<p> I accidentally fell into the P2P role - I brought up some discussion at some point about using BitTorrent for the distribution of OOo, and ended up volunteering to organise the P2P project.  My role in the P2P project was to help coordinate everyone's activities so that we could have a proper BitTorrent system set up firstly, which then afterwards could be publicised.  I directly manage the web-pages for the P2P project, which link to the BitTorrent servers under the control of OOo contributor Mike!, and generally make sure links point to the correct downloads. </p>
<p>&nbsp;</p>
<p><em>What do you see as the future of OOo and P2P?  Do you think the omnipresence of pirated works in P2P networks will adversely affect the legitimate dissemination of free software via the network?</em></p>


<p> I think that a distinction needs to be made between different P2P networks to really answer this questions.  P2P is used as a catch-all term for file sharing, without identifying the characteristics of the different underlying properties of the network.  The older P2P networks (e.g. Napster in its original form) were shut down as they were a centralised system sharing mainly pirated works.  OOo currently uses BitTorrent as the primary P2P network, and although there are many sites sharing files that may not be entirely legitimate, the ability to set up your own network which can be accessed by any BitTorrent client is a huge advantage in distributing software via this method.  We can currently keep the network clean of any pirated files, and this should protect any legitimate BitTorrent networks from being associated with software piracy. </p>

<p> Currently the BitTorrent downloads are having a modest effect, but I am hoping as OOo 2.0 is released BitTorrent will be regarded as a more convenient way (but not the only way) to download software, especially for large downloads.  BitTorrent is used as a legitimate download method for many 'free software' (FLOSS) projects, but at the moment there is difficulty in automating the process of making files available for download; this has led to only the English language OOo being available from the website. In the future I am hoping that we are able to include the downloads for all other languages that OOo serves. </p>
<p>&nbsp;</p>
<p><em>How can people help you?</em></p>


<p> By volunteering.  There are a lot of tasks which need to be done, especially in the marketing project, which I am part of.  Promoting OOo is a non-stop job, again considering the upcoming 2.0 release.  On my part I would like more volunteers with the newsletter project to achieve a more regular release than the monthly bulletin that is sent out, as well as helping to connect to more of the OOo projects to allow them to publicise their efforts in the newsletter.  [<em>If people want to help, visit the <a href="http://marketing.openoffice.org/">Marketing Project</a> and post an introductory note expressing interest to <a href="mailto:marketing@openoffice.apache.org">marketing@openoffice.apache.org</a>.  Ed. </em>]</p>

<p> Again there are many other parts of the project that need help as well, as there are other projects which do not seem to get as much attention as the others, especially the <a href="http://bibliographic.openoffice.org/">Bibliographic</a> project, as well as the <a href="http://groupware.openoffice.org/">GLOW groupware</a> project.  Testing upcoming releases, helping with questions from new users, telling friends and colleagues, or even making templates which can be used by others would all help, and would not require a lot of time. [<i>For more information on testing, see the <a href="http://qa.openoffice.org/">QA Project.</a> Ed.</i>]</p>
<p>&nbsp;</p>
<p><em>And, finally, what do you see as OOo's (project, product) greatest strength? It's greatest weakness?</em></p>

<p> The strength of OOo is that it is a transparent, open project; the open standards and open source underlying the project are a benefit to anybody who wants to use it, and who can make changes if they want to modify it.  The project itself has a very strong community, in many different languages, who can finally give computer users a choice of office suites, as well as many other supporters who help develop the suite.  On top of this, OOo is free, in the sense that it can lower the cost of setting up computers in developing countries where access to this sort of equipment is difficult.  The greatest weakness I would think is probably awareness and marketing; however much we promote the product (to the point that it is quite recognised within technology circles), it is always a battle, especially compared to competing solutions where marketing budgets are so much larger. </p>




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

      
    </div>
    <!--#include virtual="/footer.html" -->
  </body>
</html>
