Your SlideShare is downloading. ×
AusLUG2012                   DominoDefrag - How to build a                   successful OpenNTF project                   ...
AusLUG2011                                                          AusLUG2012            Agenda            •             ...
AusLUG2011                                                                                          AusLUG2012            ...
AusLUG2011                                                                                        AusLUG2012            Ab...
AusLUG2011                                                                                       AusLUG2012            Ini...
AusLUG2011                                                             AusLUG2012            Initial Concepts - OpenNTF Or...
AusLUG2011                                                                AusLUG2012            Initial Concepts - OpenNTF...
AusLUG2011                                                                          AusLUG2012            Initial Concepts...
AusLUG2011                                                           AusLUG2012            Initial Concepts – OpenNTF Valu...
AusLUG2011                                                                                          AusLUG2012            ...
AusLUG2011                                                                                          AusLUG2012            ...
AusLUG2011                                                                                     AusLUG2012            Initi...
AusLUG2011                                                                                        AusLUG2012            In...
AusLUG2011                                                                                       AusLUG2012            Ini...
AusLUG2011                                                                                       AusLUG2012            Ini...
AusLUG2011                                                                                    AusLUG2012            Initia...
AusLUG2011                                                                                          AusLUG2012            ...
AusLUG2011                                                                                         AusLUG2012            I...
AusLUG2011                                                                                          AusLUG2012            ...
AusLUG2011                                                                                            AusLUG2012          ...
AusLUG2011                                                                                                 AusLUG2012     ...
AusLUG2011                                                                                         AusLUG2012            P...
AusLUG2011                                                                                            AusLUG2012          ...
AusLUG2011                                                                                              AusLUG2012        ...
AusLUG2011                                                                                        AusLUG2012            Pr...
AusLUG2011                                                                                          AusLUG2012            ...
AusLUG2011                                                                                               AusLUG2012       ...
AusLUG2011                                                                                            AusLUG2012          ...
AusLUG2011                                                                                      AusLUG2012            Proj...
AusLUG2011                                                                                     AusLUG2012            Proje...
AusLUG2011                                                                                        AusLUG2012            Pr...
AusLUG2011                                                                                          AusLUG2012            ...
AusLUG2011                                                                                      AusLUG2012            Proj...
AusLUG2011                                                                                    AusLUG2012            Projec...
AusLUG2011                                                                                            AusLUG2012          ...
AusLUG2011                                                                                      AusLUG2012            Proj...
AusLUG2011                                                                                 AusLUG2012            Project U...
AusLUG2011                                                                                         AusLUG2012            P...
AusLUG2011                                                                                             AusLUG2012         ...
AusLUG2011                                                                                           AusLUG2012           ...
AusLUG2011                                                                                    AusLUG2012            Catalo...
AusLUG2011                                                                                           AusLUG2012           ...
AusLUG2011                                                                                         AusLUG2012            P...
AusLUG2011                                                                                 AusLUG2012            Project M...
AusLUG2011                                                                                         AusLUG2012            P...
AusLUG2011                                                                                         AusLUG2012            P...
AusLUG2011                                                                                         AusLUG2012            P...
AusLUG2011                                                                                             AusLUG2012         ...
AusLUG2011                                                                                            AusLUG2012          ...
AusLUG2011                                                                                     AusLUG2012            Stayi...
AusLUG2011                                                                                         AusLUG2012             ...
AusLUG2011                                                                                           AusLUG2012Building Bu...
AusLUG2011                                                                                       AusLUG2012Building Busine...
AusLUG2011                                                                                       AusLUG2012              B...
AusLUG2011                                                                                         AusLUG2012             ...
AusLUG2011                                                                                          AusLUG2012            ...
AusLUG2011                                                       AusLUG2012            OpenNTF Involvement – FollowMeet.Sh...
AusLUG2011                                     AusLUG2012            Questions?Meet.Share.Learn         29th & 30th March,...
Upcoming SlideShare
Loading in...5
×

DominoDefrag - How to build a successful OpenNTF project (AusLUG 2012)

9,905

Published on

The session "DominoDefrag - How to build a successful OpenNTF project" presented by Andrew Luder @ AusLUG 2012 in Melbourne.

OpenNTF content derived from:
* OpenNTF Web site @ http://openntf.org
* OpenNTF Overview Presentation Sep 2010 @ http://openntf.org/Internal/home.nsf/dx/Logos/$file/OpenNTF%20Overview%20100914.pdf
* OpenNTF Contribution Process @ http://openntf.org/Internal/home.nsf/dx/Contribution%20Process
* DominoDefrag Project @ http://dominodefrag.openntf.org

NotesTools Pty Ltd content derived from http://notestools.com.au

Published in: Education, Technology, Business
1 Comment
0 Likes
Statistics
Notes
  • Chega ao mercado, uma nova empresa de Marketing Multinivel. A empresa foi inaugurada no fim de Abril de 2014.
    A Gloose surge com uma proposta parecida com muitas empresas de mmn do passado, porém com alguns diferenciais muito importantes no que diz respeito a produtos e serviços e também no quesito sustentabilidade. Ela chega oferecendo um amplo e diversificado portfólio de produtos tecnológicos, serviços online e marketing digital, direcionados para empresas dos mais variados setores.
    Comercial da empresa:
    1. Ofer.club ( http://ofer.club/ ) = Um site de Compras Coletivas, onde anunciantes fazem ofertas com preços exclusivos para o Ofer Club, pois venderá em maior quantidade, e isto garante que os preços sejam mais baixos do que encontrados no mercado tradicional. A Gloose ganha 30% sobre cada oferta vendida e ainda ganha com publicidade na página.
    2. SHOP GLOOSE ( http://shop.gloose.me/sabiar = Uma ferramenta de prova de sustentabilidade da empresa.Site de vendas de publicidade e produtos digitais, que fazem com que seu site ou blog seja mais acessado e publicidades compartilhadas. Agora você pode comprar ou vender e ser comissionado com os produtos já disponíveis.
    3. NEWS GLOOSE ( http://news.gloose.me/ ) = Um portal de Publicidade e Noticias com várias ferramentas. Noticias diárias e atuais sobre os principais assuntos da atualidade.
    4. GRIFEM/OFER SHOP ( http://grifem.com/ ) -NO AR! Loja virtual com mais de 6 mil produtos de grandes marcas, apenas originais! Você pode comprar com seu G$.
    A mais nova oportunidade do mercado, empresa realmente séria com proposta diferente, lucrativa e responsável.
    ✔6 meses de contrato (Renovação rápida garante Credibilidade e comissões pagas novamente)
    ✔Ganhos de Incentivo de 40%
    ✔Ganhos de Rede em 7 Níveis
    ✔Comissão sobre Vendas de 20% até 50%
    ✔Ganhos sobre Adesões e Upgrade
    ✔Ganhos Residuais
    ✔Ganhos por Qualificação ( Plano de Carreira )
    ✔Saque mensal...
    ✔Você pode ativar pessoas com o seu bônus
    (Para quem faz parte da ELITE GLOOSE)
    SUPORTE TOTAL + MATERIAL EXCLUSIVO + SITE RECRUTADOR PARA VOCÊ E TODA A SUA EQUIPE + CONFERENCIAS DIÁRIAS AS 21h
    Saiba tudo aqui: www.elitegloose.com/sabiar
    http://site.gloose.me/sabiar
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • Be the first to like this

No Downloads
Views
Total Views
9,905
On Slideshare
0
From Embeds
0
Number of Embeds
4
Actions
Shares
0
Downloads
0
Comments
1
Likes
0
Embeds 0
No embeds

No notes for slide
  • DominoDefrag - How to build a successful OpenNTF project Andrew Luder | Director | NotesTools Pty Ltd http://notestools.com.au
  • About Me About DominoDefrag OpenNTF Initial Concepts Project Creation Project Update Catalog Project Maintenance Project Feedback Staying Afloat Building Business OpenNTF Involvement
  • Started my business NotesTools Pty Ltd two years ago initially providing formal business support to DominoDefrag. Have expanded business to provide wider range of products (e.g. DominoClusterMate) and services. IBM R8.5 Certified Application Developer with over 15 years experience in providing Lotus Domino/Notes/Sametime infrastructure and application development services to Australian government departments - primarily Department of Defence. Currently working on a R853 application upgrade project at the Therapeutic Goods Administration (TGA) . Many years experience in providing open source solutions such as "DominoDefrag“ (2009) and "R5 Database Manager“ (2004) to the Lotus Notes community. I was given public recognition in May 2010 with "DominoDefrag" honoured by OpenNTF as project of the month, presented at Lotusphere 2011 in Orlando and is still a featured project
  • DominoDefrag v3.5 is an open source solution comprising of a R853+ C API Lotus Domino server task (DominoDefrag.exe) and a R853+ Lotus Domino server XPages mobile database called the DominoDefrag Administrator (DominoDefragAdmin.nsf – relies on the extension library from OpenNTF). See http://notestools.com.au/DominoDefragAdmin.nsf The server task uses "contig.exe" (v1.6) to defrag Domino databases on all Windows server 2003 and 2008 versions (32bit and 64bit) and will also defrag a full-text index associated with a Notes database and the Domino server’s transaction log and DAOS files. When DominoDefrag_EnterpriseSupport=1 (on), the output is recorded to CSV files and sent to the DominoDefrag Administrator for processing attached to a summary email. DominoDefrag has the added functionality of being able to compact a database prior to defragging and supports multi-processing (can load multiple times to run concurrently) and use of an indirect file (.ind) to have the same compact batch functionality. Content source: DominoDefrag @ http://dominodefrag.openntf.org/
  • The Mission of OpenNTF is to support the open source projects hosted at OpenNTF.Org. OpenNTF provides the framework to develop open source applications which may Picture source: OpenNTF @ http://openntf.org/Internal/home.nsf
  • The OpenNTF Alliance is a loose cooperation of equal members with the common goal to provide open source applications based on Notes/Domino Similar to the OpenAjax.Org model - as little bureaucracy as possible, but as much structure and as many rules as necessary to make code re-usable and the organization efficient Members are expected to contribute something (e.g. code, in kind donations, financial contributions, etc.) Steering Committee defines strategy and direction Technical Committee implements new services and web site features Picture source: OpenNTF Overview Presentation Sep 2010 @ http://openntf.org/Internal/home.nsf/dx/Logos/$file/OpenNTF%20Overview%20100914.pdf
  • > 3.000.000 page visits per year > 68.000 registered users > 10.000 downloads per month > 300 contributors > 400 projects Picture source: OpenNTF Overview Presentation Sep 2010 @ http://openntf.org/Internal/home.nsf/dx/Logos/$file/OpenNTF%20Overview%20100914.pdf Picture source: http://www.openntf.org/blogs/openntf.nsf/d6plinks/NHEF-8Q5DZM
  • Enabling groups of individuals all over the world to collaborate on IBM Lotus Notes/Domino applications and release them as open source Providing a web site for the community so that open source applications may be freely distributed, using widely accepted licensing terms Increasing the quality and quantity of templates, applications and samples that can be shared by the community Picture source: OpenNTF Overview Presentation Sep 2010 @ http://openntf.org/Internal/home.nsf/dx/Logos/$file/OpenNTF%20Overview%20100914.pdf
  • Access to a global community of like minded Lotus developers Code samples for education purposes for new and old technologies Base projects and templates to reuse/harvest/enhance for custom applications Access to base Notes/Domino templates with some of them enhanced from shipping versions A community of 'testers' for your projects Picture source: OpenNTF Overview Presentation Sep 2010 @ http://openntf.org/Internal/home.nsf/dx/Logos/$file/OpenNTF%20Overview%20100914.pdf
  • Contributors form the backbone of OpenNTF. They develop and manage project and code snippet activities. Any Contributor may apply to join an ongoing Project by sending a request to the Project Lead; or initiate a Project or Code Snippet. To contribute to a project or code snippet activity: Create an OpenNTF user account. Complete either an Individual Contributor License Agreement (“ICLA”) or Corporate Contributor License Agreement (“CCLA”) and then send an email with scanned hardcopy to the IP Manager Content source: OpenNTF Contribution Process @ http://openntf.org/Internal/home.nsf/dx/Contribution%20Process
  • Committers are the OpenNTF Release Managers. They along wit the IP-Manager handle the release process of applications into the Application Catalog described by the IP Policy. To become a Committer you must: First be a Contributor. Apply to the IP-Manager who will then organise an electronic vote of the existing Committers to accept or reject your application. Alternatively, the Steering Committee may appoint Committers. Content source: OpenNTF Contribution Process @ http://openntf.org/Internal/home.nsf/dx/Contribution%20Process
  • Outbound: Two models Apache license (version 2) Maximizes the usefulness of the code to consumers No obligation to donate back to the community GPL licenses Inbound contribution process Rights for perpetual, worldwide, non-exclusive, no-charge, royalty-free, patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the work IP is owned by contributor Contributors sign ICLAs (individual contributor license agreements) or CCLAs (corporate contributor license agreements) The OpenNTF IP manager helps with licence questions and clears project releases for the catalogs OpenNTF committers are a small subset of all contributors who verify project releases before they are added to the catalogs Content source: OpenNTF Contribution Process @ http://openntf.org/Internal/home.nsf/dx/Contribution%20Process Note: Peter Tanner the OpenNTF IP Manager posted a blog called the "Comparisons between the Apache (permissive) and GPL (restrictive) Licensing Paradigms" recently. GPL=GNU General Public License Content source: http://www.openntf.org/blogs/openntf.nsf/d6plinks/NHEF-8SFA26`
  • The Catalog consists of committed release ”Rich Client Components” (drag and drop), “Reusable Controls” and “Projects” applications. There is an Apache and GPL version of it. Uncommitted release applications have to be scanned by the IP-Manager and Committer(s) before being committed into the Catalog. Picture source: OpenNTF Overview Presentation Sep 2010 @ http://openntf.org/Internal/home.nsf/dx/Logos/$file/OpenNTF%20Overview%20100914.pdf
  • These projects can be installed by end users by drag and drop into Notes Examples Recent Contacts Widget for Twitter Inking for IBM Lotus Sametime Attachment Manager Picture source: OpenNTF Overview Presentation Sep 2010 @ http://openntf.org/Internal/home.nsf/dx/Logos/$file/OpenNTF%20Overview%20100914.pdf Example: ISW’s WildFire! which is a Drop and Drop component for the Lotus Notes 8.5 sidebar (used to update ones social network status) won the Lotusphere 2011 Lotus Awards Open Source category.
  • Reusable controls can be easily reused by application developers Examples XPages Mobile Controls XPages Tree Control XPages Voting Control XPages Business Card Controls Picture source: OpenNTF Overview Presentation Sep 2010 @ http://openntf.org/Internal/home.nsf/dx/Logos/$file/OpenNTF%20Overview%20100914.pdf Example: DominoDefrag uses the Java Charts reusable control in its XPages Administrator database.
  • Defragmentation tool for Lotus Domino Picture source: OpenNTF Overview Presentation Sep 2010 @ http://openntf.org/Internal/home.nsf/dx/Logos/$file/OpenNTF%20Overview%20100914.pdf Example: DominoDefrag was the May 2010 OpenNTF Featured Project. The Domino server THUNDERSTRUCK from domain ACDC being defragged.
  • The Project Management Interface manages the process of development through to uncommitted release of any "Rich Client Components" (drag and drop), "Reusable Controls" and Projects. This is separate from the Catalog which stores the latest application committed release. Picture source: DominoDefrag @ http://dominodefrag.openntf.org/
  • The XSnippets Code Bin allows approved OpenNTF contributors who have signed CLAs (contributor license agreements) to submit code snippets for community use Picture source: XSnippets @ http://openntf.org/XSnippets.nsf/home.xsp
  • Simply click “Create XSnippet”, insert the code, provide a meaningful Name, select the Notes language, Preview, read the “Terms of Use” and then Save. Picture source: XSnippets @ http://openntf.org/XSnippets.nsf/home.xsp
  • While any Contributor may create new Projects, it is recommended that the Project plan first be posted to the OpenNTF Forum to canvas the opinions of other users. Even if the plan is just a simply idea to start with! If there is another similar project already on OpenNTF, consider teaming up with its project member(s) so that you can get more done in less time. By creating a project, you agree to the IP Policy and to provide the full source code for the application. Content source: OpenNTF Contribution Process @ http://openntf.org/Internal/home.nsf/dx/Contribution%20Process Check the licensing compatibility of any third party components you want to use with the IP-Manager and recognise use and any licensing differences in distribution Notice file.
  • The project’s distribution file should contain full source files, all target platform binaries, release notes, licensing files and any other documentation that will ensure the usage of the product is compliant and successful. Picture source: DominoDefrag v3.5 distribution file.
  • Use free Windows Sysinternals tool called "contig.exe" on a Windows Domino server to defragment NSFs while the server was running to increase performance and not corrupt databases. Share and advance C/C++ Notes API server add-in code and build documentation with community as know-how scarce and limited to a few. Learn how to integrate a server add-in with new R85x technologies such as XPages, extension library controls, custom controls and SSJS. Build business to provide formal support to open source code.
  • Login, simply click on the Projects tab and then click on the “Creating new projects” link. Picture source: OpenNTF Projects @ http://www.openntf.org/Internal/home.nsf/projects.xsp
  • Put the name of your project simply click the Create button. Once OpenNTF has accepted in effect the “project proposal”, notification is sent the new Project Owner and the Project is added to the owner’s Project list. Picture source: OpenNTF Projects @ http://www.openntf.org/Internal/home.nsf/projects.xsp
  • Complete the Overview document fields and then click Save. Talk more about Donate button soon…. Picture source: DominoDefrag @ http://dominodefrag.openntf.org/
  • Click “Downloads / Releases” and then click “Create Release”. Picture source: DominoDefrag @ http://dominodefrag.openntf.org/
  • Complete Release fields, but leave the Status at “Do not release” and then click the Save button. This allows a final peer review of the distribution code by only other Project Contributors who have been approved by the Project Owner. Picture source: DominoDefrag @ http://dominodefrag.openntf.org/
  • This allows a final peer review of the distribution file by (only happens on first release and not subsequent) by the IP-Manager and assigned Committer who apply the following criteria: Those contributing to the Project are covered by ICLAs or CCLAs; The license under which the contribution is to be made available is compatible with either OpenNTF’s Apache or GPL licensing models; The licensing and Notice information is clearly noted; The code was entirely written by the Contributor(s) or, if there is material from third parties, that the Contributor has written permission or a license to include such material; and The Project Lead has the IP Manager's approval for any encryption code that is in the Project. There is no need for subsequent Releases to go through the Incubator stage – as long as all the five above conditions continue to be met. The now Uncommitted Release can now be accessed by everyone. Content source: OpenNTF Contribution Process @ http://openntf.org/Internal/home.nsf/dx/Contribution%20Process
  • Change the Status field to “Released” and then click the Save button to be downloaded and used by anyone through the OpenNTF website. On request OpenNTF can then perform an IP review of the Uncommitted Release’s distribution file for commitment into the Catalog (discussed later). Picture source: DominoDefrag @ http://dominodefrag.openntf.org/
  • Click “Screenshots” and then click “Create Screenshot”. Picture source: DominoDefrag @ http://dominodefrag.openntf.org/
  • Complete Screenshot fields and then click the Save button. Picture source: DominoDefrag @ http://dominodefrag.openntf.org/
  • Use the Navigator buttons to scroll through the Screenshots. Picture source: DominoDefrag @ http://dominodefrag.openntf.org/
  • Click “Documentation” and then click “Create Documentation”. Picture source: DominoDefrag @ http://dominodefrag.openntf.org/
  • Complete Documentation fields, add prepared documents and click Save. Picture source: DominoDefrag @ http://dominodefrag.openntf.org/
  • Create a News item and users subscribed to the project will receive that and other projects updates such as new Releases, Screenshots and Documentation. Users click on “Subscribe to Project (RSS)” to subscribe. Picture source: DominoDefrag @ http://dominodefrag.openntf.org/
  • Accept defaults and click “Subscribe Now”. Accept defaults in the Live Bookmark prompt box and click Subscribe. Picture source: DominoDefrag @ http://dominodefrag.openntf.org/
  • See “OpenNTF.DominoDefrag” RSS feed from Firefox Bookmarks. Picture source: DominoDefrag @ http://dominodefrag.openntf.org/
  • Click Overview and then Download latest release to obtain the of uncommitted “Project Release” distribution file. Also the latest matching Screenshots and Documentation should be available too. Picture source: DominoDefrag @ http://dominodefrag.openntf.org/
  • To initiate a Catalog Release, simply send an email to the IP-Manager requesting it. The IP-Manager and a Committer will then carry out an analysis of the uncommitted Release distribution file. Issues that are found will be posted by the IP-Manager to a Project area accessible to the Project Lead, the Project Contributors and the Project Observers. The items analysed during the IP Review : Verification that Contributors are covered by ICLAs or CCLAs; All 3rd party code accounted for in Notice files; Licenses are compatible; Documentation completed; and Code appears to run properly. Committer will then update the Catalog with the distribution file and flag in the project’s Overview document. Content source: OpenNTF Contribution Process @ http://openntf.org/Internal/home.nsf/dx/Contribution%20Process
  • DominoDefrag v3.4 started using Naveen Maurya's Java Charts custom control v1.2 to perform graphical reporting. Acknowledgement of the different GPL licensing for the third party components is required using a Notice file similar to the “Notice.txt” in the DominoDefrag distribution file. Picture source: DominoDefrag v3.5 distribution file
  • DominoDefrag v3.5 updated by the Committer into the GPL Catalog. Picture source: GPL Catalog @ http://www.openntf.org/catalogs/gplcat.nsf/Projects.xsp
  • Click “Feature Requests” and then click “Create Feature Request”. Picture source: DominoDefrag @ http://dominodefrag.openntf.org/
  • The Project Owner can then assess the feature request and then provide feedback and change the status from “Submitted” to “Investigating”, “Rejected” or “Added to app” and then click Save. Contributor notification then occurs. Picture source: DominoDefrag @ http://dominodefrag.openntf.org/
  • Click “Defects” and then click “Create Defect”. Picture source: DominoDefrag @ http://dominodefrag.openntf.org/
  • The Project Owner can then assess the defect report and then provide feedback and change the status from “Submitted” to “Investigating”, “Rejected” or “Fixed” and then click Save. Contributor notification then occurs. Picture source: DominoDefrag @ http://dominodefrag.openntf.org/
  • Click “Discussions” and then click “Create Discussion”. Picture source: DominoDefrag @ http://dominodefrag.openntf.org/
  • Discussions can be the main driver for change. This discussion with Ulrich Krause lead to DominoDefrag being rewritten to use the C API (changed from C++ API). Picture source: DominoDefrag @ http://dominodefrag.openntf.org/
  • Click “Reviews” and then click “Create Review”. Click “Rate Project” and give 1 to 5 stars – can do only once for each project and owners can’t rate their own projects from memory  Picture source: DominoDefrag @ http://dominodefrag.openntf.org/
  • DominoDefrag has received very positive feedback from bloggers and presenters like Albert Buendia and Ulrich Krause presenting it at many Lotus User Groups such as the Spanish Lotus User Group (SLUG)  Picture source: http://www.slug.es/blogslug.nsf/dx/defragging-domino-servers-v12.pdf/$file/defragging-domino-servers-v12.pdf
  • Create PayPal account and easy to get HTML generated for the Donate button. Edit the Overview document, paste the PayPal HTML code in and then click the Save button. Picture source: DominoDefrag @ http://dominodefrag.openntf.org/
  • For example, “DominoDefrag Enterprise Edition” provides formal support for “DominoDefrag”. Picture source: DominoDefrag Enterprise Edition @ https://notestools.com.au/notestools.nsf/DominoDefragEnterpriseEdition.xsp
  • For example, DominoDefrag v3.4 introduced a subset of the DominoClusterMate functionality. Picture source: DominoClusterMate @ https://notestools.com.au/notestools.nsf/DominoClusterMate.xsp
  • For example, use DominoDefrag success to leverage into completely different products like ExtractText. Picture source: ExtractText @ https://notestools.com.au/notestools.nsf/ExtractText.xsp
  • For example, publishing DominoDefrag in the "IBM Lotus and WebSphere Portal Business Solutions Catalog" @ the Lotus Greenhouse site. Picture source: DominoDefrag @ https://greenhouse.lotus.com
  • For example, registered NotesTools Pty Ltd in the IBM PartnerWorld program and then got DominoDefrag published to the “Global Solutions Directory”. Picture source: DominoDefrag @ http://www-304.ibm.com/partnerworld/gsd/solutiondetails.do?solution=46143
  • OpenNTF success depends on contributions from the community Contribute code Provide feedback in the project area and the blog Comments in blog Defects Requests Reviews and ratings Discussions Send feedback via email Help the Technical Committee Use code from OpenNTF Become a member [Note that all types of participation require an OpenNTF user account] Picture source: OpenNTF Overview Presentation Sep 2010 @ http://openntf.org/Internal/home.nsf/dx/Logos/$file/OpenNTF%20Overview%20100914.pdf Note: There are also the competitions to encourage participation such as the XPages Development Contest @ http://xpages.info
  • Blog Web: http://www.openntf.org/blog Feed: http://blog.openntf.org/blogs/openntf.nsf/stories.xml Mobile: http://openntf.org Twitter: http://twitter.com/openntf YouTube: http://www.youtube.com/openntf Widget: http://www.openntf.org/project/OpenNTF Widget Projects Web: http://www.openntf.org/project/[ProjectName ] e.g. http://www.openntf.org/project/XPages Mobile Controls Feed: http://www.openntf.org/Projects/pmt.nsf/rss.xml?OpenView&restricttocategory=[ProjectName]&count=100 e.g. http://www.openntf.org/Projects/pmt.nsf/rss.xml?OpenView&restricttocategory=XPages%20Mobile%20Controls&count=100 Source: OpenNTF Overview Presentation @ Sep 2010 http://openntf.org/Internal/home.nsf/dx/Logos/$file/OpenNTF%20Overview%20100914.pdf
  • Transcript of "DominoDefrag - How to build a successful OpenNTF project (AusLUG 2012)"

    1. 1. AusLUG2012 DominoDefrag - How to build a successful OpenNTF project Andrew Luder | Director | NotesTools Pty Ltd http://notestools.com.auMeet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
    2. 2. AusLUG2011 AusLUG2012 Agenda • About Me • About DominoDefrag • OpenNTF Initial Concepts • Project Creation • Project Update • Catalog • Project Maintenance • Project Feedback • Staying Afloat • Building Business • OpenNTF InvolvementMeet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
    3. 3. AusLUG2011 AusLUG2012 About Me • Started my business NotesTools Pty Ltd two years ago initially providing formal business support to DominoDefrag. Have expanded business to provide wider range of products (e.g. DominoClusterMate) and services. • IBM R8.5 Certified Application Developer with over 15 years experience in providing Lotus Domino/Notes/Sametime infrastructure and application development services to Australian government departments - primarily Department of Defence. Currently working on a R853 application upgrade project at the Therapeutic Goods Administration (TGA) . • Many years experience in providing open source solutions such as "DominoDefrag“ (2009) and "R5 Database Manager“ (2004) to the Lotus Notes community. I was given public recognition in May 2010 with "DominoDefrag" honoured by OpenNTF as project of the month, presented at Lotusphere 2011 in Orlando and is still a featured project.Meet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
    4. 4. AusLUG2011 AusLUG2012 About DominoDefrag • DominoDefrag v3.5 is an open source solution comprising of a R853+ C API Lotus Domino server task (DominoDefrag.exe) and a R853+ Lotus Domino server XPages mobile database called the DominoDefrag Administrator (DominoDefragAdmin.nsf relies on the extension library from OpenNTF). See http://notestools.com.au/DominoDefragAdmin.nsf • The server task uses "contig.exe" (v1.6) to defrag Domino databases on all Windows server 2003 and 2008 versions (32bit and 64bit) and will also defrag a full-text index associated with a Notes database and the Domino server’s transaction log and DAOS files. When DominoDefrag_EnterpriseSupport=1 (on), the output is recorded to CSV files and sent to the DominoDefrag Administrator for processing attached to a summary. • DominoDefrag has the added functionality of being able to compact and add space to a database prior to defragging and supports multi- processing (can load multiple times to run concurrently) and use of an indirect file (.ind) to have the same compact batch functionality.Meet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
    5. 5. AusLUG2011 AusLUG2012 Initial Concepts - OpenNTF Mission • The Mission of OpenNTF is to support the open source projects hosted at OpenNTF.Org. OpenNTF provides the framework to develop open source applications which may be freely distributed.Meet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
    6. 6. AusLUG2011 AusLUG2012 Initial Concepts - OpenNTF OrganizationMeet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
    7. 7. AusLUG2011 AusLUG2012 Initial Concepts - OpenNTF StatisticsMeet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
    8. 8. AusLUG2011 AusLUG2012 Initial Concepts - OpenNTF Devoted To • “OpenNTF is devoted to getting groups of organizations and individuals all over the world to collaborate on IBM Lotus Notes/Domino applications and release them as open source”Meet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
    9. 9. AusLUG2011 AusLUG2012 Initial Concepts – OpenNTF ValueMeet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
    10. 10. AusLUG2011 AusLUG2012 Initial Concepts – Becoming a Contributor • Contributors form the backbone of OpenNTF. They develop and manage project and code snippet activities. Any Contributor may apply to join an ongoing Project by sending a request to the Project Lead; or initiate a Project or Code Snippet. • To contribute to a project or code snippet activity:  Create an OpenNTF user account.  Complete either an Individual Contributor License Agreement (“ICLA”) or Corporate Contributor License Agreement (“CCLA”) and then send an email with scanned hardcopy to the IP-Manager • IBM Champion Declan Lynch contributes to Blogsphere V4, fileSendr, iWatch X, jQuery Extension Library, Signature Capture Control, XPages Sliding Login Custom Control, XPages System Alerts, xTalk Discussion Forums...... (stop now - this guys a machine!)Meet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
    11. 11. AusLUG2011 AusLUG2012 Initial Concepts – Becoming a Committer • Committers are the OpenNTF Release Managers. They along wit the IP-Manager handle the release process of applications into the Application Catalog described by the IP Policy. • To become a Committer you must:  First be a Contributor.  Apply to the IP-Manager who will then organise an electronic vote of the existing Committers to accept or reject your application. Alternatively, the Steering Committee may appoint Committers.  IBM Champion Declan Lynch was a committer for DominoDefragMeet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
    12. 12. AusLUG2011 AusLUG2012 Initial Concepts – Intellectual Property Model • Note: Peter Tanner the OpenNTF IP Manager posted a blog called the "Comparisons between the Apache (permissive) and GPL (restrictive) Licensing Paradigms" recently. GPL=GNU General Public LicenseMeet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
    13. 13. AusLUG2011 AusLUG2012 Initial Concepts - Catalog • The Catalog consists of committed release ”Rich Client Components” (drag and drop), “Reusable Controls” and “Projects” applications. There is an Apache and GPL version of it. • Uncommitted release applications have to be scanned by the IP- Manager and Committer(s) before being committed into the Catalog.Meet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
    14. 14. AusLUG2011 AusLUG2012 Initial Concepts - Drag and Drop Components • Example: ISW’s WildFire! which is a Drop and Drop component for the Lotus Notes 8.5 sidebar (used to update ones social network status) won the Lotusphere 2011 Lotus Awards Open Source category.Meet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
    15. 15. AusLUG2011 AusLUG2012 Initial Concepts - Reusable Controls • Example: DominoDefrag uses the Java Charts reusable control in its XPages Administrator database.Meet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
    16. 16. AusLUG2011 AusLUG2012 Initial Concepts – Projects • Example: DominoDefrag was the May 2010 OpenNTF Featured Project. The Domino server THUNDERSTRUCK from domain ACDC being defragged.Meet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
    17. 17. AusLUG2011 AusLUG2012 Initial Concepts - Project Management Interface • The Project Management Interface manages the process of development through to uncommitted release of any "Rich Client Components" (drag and drop), "Reusable Controls" and Projects. This is separate from the Catalog which stores the latest application committed release.Meet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
    18. 18. AusLUG2011 AusLUG2012 Initial Concepts – XSnippets Code Bin • The XSnippets Code Bin allows approved OpenNTF contributors who have signed CLAs (contributor license agreements) to submit code snippets for community use.Meet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
    19. 19. AusLUG2011 AusLUG2012 Initial Concepts – Creating a XSnippet • Simply click “Create XSnippet”, insert the code, provide a meaningful Name, select the Notes language, Preview, read the “Terms of Use” and then Save.Meet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
    20. 20. AusLUG2011 AusLUG2012 Project Creation – Considerations • While any Contributor may create new Projects, it is recommended that the Project plan first be posted to the OpenNTF Forum to canvas the opinions of other users. Even if the plan is just a simply idea to start with! • If there is another similar project already on OpenNTF, consider teaming up with its project member(s) so that you can get more done in less time. • By creating a project, you agree to the IP Policy and to provide the full source code for the application. • Check the licensing compatibility of any third party components you want to use with the IP-Manager and recognise use and any licensing differences in distribution Notice file.Meet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
    21. 21. AusLUG2011 AusLUG2012 Project Creation – Considerations Cont.… • The project’s distribution file should contain full source files, all target platform binaries, release notes, licensing files and any other documentation that will ensure the usage of the product is compliant and successful.Meet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
    22. 22. AusLUG2011 AusLUG2012 Project Creation - DominoDefrag Goals • Use free Windows Sysinternals tool called "contig.exe" on a Windows Domino server to defragment NSFs while the server was running to increase performance and not corrupt databases. • Share and advance C/C++ Notes API server add-in code and build documentation with community as know-how scarce and limited to a few. • Learn how to integrate a server add-in with new R85x technologies such as XPages, custom controls, extension library controls and SSJS. • Build business to provide formal support to open source code.Meet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
    23. 23. AusLUG2011 AusLUG2012 Project Creation – Find and Create Projects • Login, simply click on the Projects tab and then click on the “Creating new projects” link.Meet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
    24. 24. AusLUG2011 AusLUG2012 Project Creation – Create New Project • Put the name of your project simply click the Create button. • Once OpenNTF has accepted in effect the “project proposal”, notification is sent the new Project Owner and the Project is added to the owner’s ProjectMeet.Share.Learn list. 29th & 30th March, Melbourne, Victoria, Australia
    25. 25. AusLUG2011 AusLUG2012 Project Update – Complete Overview • Complete the Overview document fields and then click Save. • Talk more about Donate button soon….Meet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
    26. 26. AusLUG2011 AusLUG2012 Project Update – Create Release • Click “Downloads / Releases” and then click “Create Release”.Meet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
    27. 27. AusLUG2011 AusLUG2012 Project Update – Incubator Release (Code) • Complete Release fields, but leave the Status at “Do not release” and then click the Save button. This allows a final peer review of the distribution code by only other Project Contributors who have been approved by the Project Owner.Meet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
    28. 28. AusLUG2011 AusLUG2012 Project Update – Incubator Release (License) • This allows a final peer review of the distribution file by (only happens on first release and not subsequent) by the IP-Manager and assigned Committer who apply the following criteria:  Those contributing to the Project are covered by ICLAs or CCLAs;  The license under which the contribution is to be made available is compatible with either OpenNTF’s Apache or GPL licensing models;  The licensing and Notice information is clearly noted;  The code was entirely written by the Contributor(s) or, if there is material from third parties, that the Contributor has written permission or a license to include such material; and  The Project Lead has the IP Managers approval for any encryption code that is in the Project. • There is no need for subsequent Releases to go through the Incubator stage – as long as all the five above conditions continue to be met. The now Uncommitted Release can now be accessed by everyone.Meet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
    29. 29. AusLUG2011 AusLUG2012 Project Update – Uncommitted Release • Change the Status field to “Released” and then click the Save button to be downloaded and used by anyone through the OpenNTF website. On request OpenNTF can then perform an IP review of the Uncommitted Release’s distribution file for commitment into the Catalog (discussed later).Meet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
    30. 30. AusLUG2011 AusLUG2012 Project Update – Create Screenshot • Click “Screenshots” and then click “Create Screenshot”.Meet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
    31. 31. AusLUG2011 AusLUG2012 Project Update – Complete Screenshots • Complete Screenshot fields and then click the Save button.Meet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
    32. 32. AusLUG2011 AusLUG2012 Project Update –Screenshots Displayed • Use the Navigator buttons to scroll through the Screenshots.Meet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
    33. 33. AusLUG2011 AusLUG2012 Project Update – Create Documentation • Click “Documentation” and then click “Create Documentation”.Meet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
    34. 34. AusLUG2011 AusLUG2012 Project Update – Complete Documentation • Complete Documentation fields, add prepared documents and click Save.Meet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
    35. 35. AusLUG2011 AusLUG2012 Project Update – News • Create a News item and users subscribed to the project will receive that and other projects updates such as new Releases, Screenshots and Documentation. Users click on “Subscribe to Project (RSS)” to subscribe.Meet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
    36. 36. AusLUG2011 AusLUG2012 Project Update – Subscribe to Project • Accept defaults and click “Subscribe Now”. • Accept defaults in the Live Bookmark prompt box and click Subscribe.Meet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
    37. 37. AusLUG2011 AusLUG2012 Project Update – RSS Bookmark Feed • See “OpenNTF.DominoDefrag” RSS feed from Firefox Bookmarks.Meet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
    38. 38. AusLUG2011 AusLUG2012 Project Update – Ready To Go! • Click Overview and then Download latest release to obtain the of uncommitted “Project Release” distribution file. Also the latest matching Screenshots and Documentation should be available too.Meet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
    39. 39. AusLUG2011 AusLUG2012 Catalog – Process • To initiate a Catalog Release, simply send an email to the IP-Manager requesting it. The IP-Manager and a Committer will then carry out an analysis of the uncommitted Release distribution file. Issues that are found will be posted by the IP-Manager to a Project area accessible to the Project Lead, the Project Contributors and the Project Observers. • The items analysed during the IP Review :  Verification that Contributors are covered by ICLAs or CCLAs;  All 3rd party code accounted for in Notice files;  Licenses are compatible;  Documentation completed; and  Code appears to run properly.  Committer will then update the Catalog with the distribution file and flag in the project’s Overview document.Meet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
    40. 40. AusLUG2011 AusLUG2012 Catalog – Third Party Components • DominoDefrag v3.4 started using Naveen Mauryas Java Charts custom control v1.2 to perform graphical reporting. Acknowledgement of the different GPL licensing for the third party components is required using a Notice file similar to the “Notice.txt” in the DominoDefrag distribution file.Meet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
    41. 41. AusLUG2011 AusLUG2012 Catalog – Committed Release • DominoDefrag v3.5 updated by the Committer into the GPL Catalog.Meet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
    42. 42. AusLUG2011 AusLUG2012 Project Maintenance - Create Feature Request • Click “Feature Requests” and then click “Create Feature Request”.Meet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
    43. 43. AusLUG2011 AusLUG2012 Project Maintenance – Processing Request • The Project Owner can then assess the feature request and then provide feedback and change the status from “Submitted” to “Investigating”, “Rejected” or “Added to app” and then click Save. Contributor notification then occurs.Meet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
    44. 44. AusLUG2011 AusLUG2012 Project Maintenance - Create Defect • Click “Defects” and then click “Create Defect”.Meet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
    45. 45. AusLUG2011 AusLUG2012 Project Maintenance – Processing Defect • The Project Owner can then assess the defect report and then provide feedback and change the status from “Submitted” to “Investigating”, “Rejected” or “Fixed” and then click Save. Contributor notification then occurs.Meet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
    46. 46. AusLUG2011 AusLUG2012 Project Feedback – Create Discussion • Click “Discussions” and then click “Create Discussion”.Meet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
    47. 47. AusLUG2011 AusLUG2012 Project Feedback – Processing Discussion • Discussions can be the main driver for change. This discussion with Ulrich Krause lead to DominoDefrag being rewritten to use the C API (changed from C++ API).Meet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
    48. 48. AusLUG2011 AusLUG2012 Project Feedback – Reviews and Ratings • Click “Reviews” and then click “Create Review”. • Click “Rate Project” and give 1 to 5 stars – can do only once for each project and owners can’t rate their projects from memory Meet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
    49. 49. AusLUG2011 AusLUG2012 Project Feedback – Outside OpenNTF • DominoDefrag has received very positive feedback from bloggers and presenters like Albert Buendia and Ulrich Krause presenting it at many Lotus User Groups such as the Spanish Lotus User Group (SLUG) .Meet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
    50. 50. AusLUG2011 AusLUG2012 Staying Afloat– PayPal Donation Button • Create PayPal account and easy to get HTML generated for the Donate button. • Edit the Overview document, paste the PayPal HTML code in and then click the Save button.Meet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
    51. 51. AusLUG2011 AusLUG2012 Staying Afloat - Providing Formal Support • For example, “DominoDefrag Enterprise Edition” provides formal support for “DominoDefrag”.Meet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
    52. 52. AusLUG2011 AusLUG2012Building Business - Leveraging into similar products • For example, DominoDefrag v3.4 introduced a subset of the DominoClusterMate functionality.Meet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
    53. 53. AusLUG2011 AusLUG2012Building Business- Leveraging into different Products • For example, use DominoDefrag success to leverage into completely different products like ExtractText.Meet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
    54. 54. AusLUG2011 AusLUG2012 Building Business - Lotus Greenhouse • For example, publishing DominoDefrag in the "IBM Lotus and WebSphere Portal Business Solutions Catalog" @ the Lotus Greenhouse site.Meet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
    55. 55. AusLUG2011 AusLUG2012 Building Business – Global Solutions Directory • For example, registered NotesTools Pty Ltd in the IBM PartnerWorld program and then got DominoDefrag published to the Global Solutions DirectoryMeet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
    56. 56. AusLUG2011 AusLUG2012 OpenNTF Involvement– 5 Ways to Participate • There is also competitions to encourage participation such as the XPages Development Contest @ http://xpages.infoMeet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
    57. 57. AusLUG2011 AusLUG2012 OpenNTF Involvement – FollowMeet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia
    58. 58. AusLUG2011 AusLUG2012 Questions?Meet.Share.Learn 29th & 30th March, Melbourne, Victoria, Australia

    ×