SlideShare une entreprise Scribd logo
1  sur  30
Introduction to
        Open
   Source, Apache
  and Apache Way
           Srinath Perera Ph.D.
 Senior Software Architect, WSO2 Inc.
Member, Apache Software Foundation
Visiting Faculty, University of Moratuwa
   Research Scientist, Lanka Software
               Foundation
Outline

                                                     • Introduction to
                                                       Open Source
                                                     • What is Apache?
                                                     • Composition of a
                                                       Project
                                                     • How it work?
                                                     • Conclusion
photo by John Trainoron Flickr http://www.flickr.com/photos/trainor/2902023575/, Licensed under CC
Open Source Market Share
• Apache (60%)
• Linux (Servers 16%)
• Firefox (25%)
• Tomcat and most of
  middleware
• Android (43%)
• Even Microsoft looking
  favorably at Opensource
  projects
• There are lot of open
  source projects bundled
  inside the proprietary
                            Copyright kafka4prez and licensed for reuse under CC License
  products                    , http://www.flickr.com/photos/kafka4prez/198465913
What is Open Source?
• Most commercial software does
  not distribute the source
  code, and developed and
  managed in a closed world.
• Idea of open source is to have
  the code in the open, and to
  improve it though volunteer        “There is no delight in
  contributions using “open
  development”                         owning anything
• Idea is that the project becomes        unshared.”
  a eco-system                               Seneca (Roman
                                     philosopher, mid-1st century AD)
   – More ideas
   – More developers
   – More Testers
   – More Bug fixers
How does a Open Source Work?
• Open code repository (SVN or
  Git etc.)
• Two parts of the community
   – Developer Community
   – User Community
• Communication through
  Mailing lists / IRC Channel
   – Develop mailing list
   – User mailing list
• Bug tracking database to track
  errors (Jira, Bugzilla)
• People submit improvements
  as patches through Jira etc.
 Committers have write access to repository
 Committers review and apply patches, and when you
  submit lot of them, they will make you a committer.
History of Opensource
• 1970s – UNIX, Emacs
• 1982 - TeX
• 1984-85 - GNU project and
  Free Software Foundation
• 1990 - GNU project almost
  complete .. well not OS
• 1991 - Linus Torvalds announce
  Linux, Phython
• 1993 - Net BSD and Free BSD
• 1994-95 - Linux 1.0 released
• 1995 - Apache, KDE, PHP, Ruby
• 1997 - Genome
                                       http://www.geograph.org.uk/photo/916456
• 1999 Linux 2.2, OpenOffice       http://www.fotopedia.com/items/flickr-3320704544

• 2003 - Firefox, Android
Why People Contribute?
• As a way to improve your profile
  (looking for a Job)
• To gain experience
• To work with “like minded”
  People
• To be part of something bigger
• To be a “Geek”
• As a Job – if you a well known
  open source developer, chances
  are that you will get payed for
  contribution
• As a competitive strategy
        Copyright U. S. Fish and Wildlife Service and licensed for reuse under CC License
  , http://www.flickr.com/photos/usfwsnortheast/4754624921 and Copyright WxMom and
  licensed for reuse under CC License , http://www.flickr.com/photos/wxmom/1359996991.
• "If a tree falls in a
  forest and no one
  is around to hear
  it, does it make a
  sound?”
• “If a open source
  project was
  developed, but no
  one used it, did it
  exists?”

http://www.geograph.org.uk/photo/1842872
Why People use Open Source
                 Software?
•   It is cheaper
•   It is better
•   Because it is open source (Religiously)
•   More visibility into the code, better
    security, auditing
•   If there is a problem, I can fix it
•   More control over releases, roadmap
•   Patches become available faster
•   Easy to understand how it works
•   Can fork the code if needed
•   Not own by one person, less risk to
    depend on it.
•   Do not have to maintain the code
History of Apache
• Apache HTTP Server development started on
  1994 based on NCSA HTTP Server
• IBM Stop developing their HTTP Server and
  start using Apache
• Apache Officially established at 1999
• June 2010 – 291 Members, 2300
  committers, 75 top level projects, 400+
  mailing lists and about 2500 emails/day
What is Apache?
• It is named after “Native American Nation”
  and “A Patchy Server”
• Apache is not a group sharing a server
• It is a community of developers and users
What is Apache?
  • Framework
        – Legal
        – Social
        – Infrastructure
  • Projects
        – 97 top level projects
        – 50+ incubating Projects
        – 2500 commiters .. About
          400 members
Copyright Jeff Kubina and licensed for reuse under CC License
, http://www.flickr.com/photos/95118988@N00/416015918
What Apache Do?
• Let developers do what they do
  best
• Open source vs. source open
• Everyone is equal, a volunteer
  (no payment)
• All technical decisions are
  public
• Harder you work, louder your
  voice will be heard
• No money, donation of
  people/time and H/W
         http://suttonhoo.blogspot.com/2010/03/what-happens-when-father-of-analytical.html
Apache Project
• Code/SVN – this is the code repository
• JIRA – Record of known and fixed bugs
• Mailing list
  – Developer List
  – User List
• Automated Build
• Website / WIki
How Apache Project Works?
Apache License
• It is very “Open License”
• You can change and redistribute
• You can do anything pretty much, just keep
  the license.
• Can be used commercially
• However, ownership of the code has to be
  donated to Apache
Apache vs. GPL License
• Both allow
   – Free use and Changes (privately)
• Apache can be
  changed, combined and
  redistributed
• If GPL is changed or
  combined, results must be GPL
• Two Philosophies
   – “I need as many to use it” vs. “You
     cannot make money”
   – Business Model :Sell support vs.
     Duel License
   – I am not going to argue either way
     (at least try not to). It is your own
     decision.
                                          photo by hans s on
                    Flickr, http://www.flickr.com/photos/archeon/2359334908/
Community

• Community
    – Developer
    – User
• Community helps each
  other
    – Even new people can
      help others on how to
      install stuff etc.
• Every decision is taken in
  the mailing list              http://www.fotopedia.com/items/flickr-2548697541 ,
• More you work, louder
  you will be heard             • Diversity requirements
• Never break the build –          – People from different
  this will drive most nicest        Organizations
  developer crazy
                                   – No ganging up to
                                     beat someone
Open source vs. Source Open(Giving
            up control)
• Open source is little bit
  more than opening up
  the source.
• Initial developers has to
  be able to give up
  control and welcome
  other’s ideas and help


            http://www.flickr.com/photos/7726011@N07/4079868523/
ASF Governance structure -
   Project, PMC, Broad
Communication and taking decisions
• Rule 1: “Giving up
  control” is part of the
  deal
• Rule 2: Public Mailing
  lists. If it did not
  happened in the list, it
  did not happen. No
  private decisions.
• Rule 3: Conflicts are
  resolved through Voting
  with a “Veto”
• Rule 4: Every one is a
                                              photo by Todd Anderson on
  volunteer                  Flickr, http://www.flickr.com/photos/toddography/12034661
   – “Thanks for                                  /, Licensed under CC

     volunteering”
Voting Process
• Ask for a “Vote” in the list.
• Users vote as
   – -1 : We must not do this.
   – -0 : I do not like it, but if you really
      know what you are doing
   – 0 : Neutral
   – 0+ : I think it is a good idea
   – +1 : I support it
• Note that -1 means a veto
   – That means it cannot be done              http://misterbijou.blogspot.com/2007_03_01_archi
                                                                     ve.html
   – But veto needs explanation and
                                              • When to ask for vote?
      willingness to code an alternative
      approach                                      – Commit and review
   – Code can be vetoed, but not releases           – Review and commit
• Minimum of 3 votes + wait for 72 hours            – Decided based on the impact
Veto forces Discussion
• Idea of Veto is to
  force people to
  discuss and
  resolve




                       http://www.flickr.com/photos/novecentino/2596898279/, Licensed CC
Avoid Undue influence
• Lot of cooperate
  users/ developers
• Avoid one group
  controlling
• Achieved through
  diversity
• Oversight by the
  board and members   http://www.artelista.com/ypobra.php?o=19550
Meritocracy
• Apache does not recognize
  organizations, rather only
  individuals
   – Individuals holds Any apache
     position even when they
     change the Job etc.
• Each individual are treated
  solely based on his merits to
  the project alone


 http://www.public-domain-image.com/sport-
 public-domain-images-pictures/canoeing-and-
       kayaking-pictures/lone-canoe-on-
                water.jpg.html
How to Start?
• Try things out
• Join the user list
• Read, Read ..
• Start by helping
  others
• Fix bugs and patches
• Talk, and explain      http://molenda.us/photos/hockey-2006-12-
                                    09/_DSC9580-r.html
How to Bring a Project in to Apache
• Submit a Proposal to Incubator
• If accepted, join the incubator. Will have a
  champion (who has to be an apache member)
  and mentors.
• Receive feedback and improve
• When project has matured and built a
  community around itself, it graduates.
ApacheCon, Hackathon, Roadshow
• Apache Con (generally
  every year at US and EU)
  gathering of Apache
  developers and users.
• Hackathon – developer
  gets together (F2F or
  remotely) and work on
  specific parts of the
  project. A concentrated
  effort.
• Roadshow – something
  like today’s event
This may sounds easy ..
• But it takes years and lot of
  work to build a successful
  open Source project
• It is not a dump and run for
  your code
• Community is the key ..



                              http://www.flickr.com/photos/mariachily/5250487136,
                                                   Licensed CC
Questions?




Copyright by romainguy, and licensed for reuse under CC License
    http://www.flickr.com/photos/romainguy/249370084

Contenu connexe

Tendances

Open source technology
Open source technologyOpen source technology
Open source technology
Rohit Kumar
 
Open source Software: pros and cons
Open source Software: pros and consOpen source Software: pros and cons
Open source Software: pros and cons
ygpriya
 
Opensource Powerpoint Review.Ppt
Opensource Powerpoint Review.PptOpensource Powerpoint Review.Ppt
Opensource Powerpoint Review.Ppt
Viet NguyenHoang
 
Open source technology
Open source technologyOpen source technology
Open source technology
aparnaz1
 

Tendances (20)

Open source technology
Open source technologyOpen source technology
Open source technology
 
Open source software, commercial software, freeware software, shareware softw...
Open source software, commercial software, freeware software, shareware softw...Open source software, commercial software, freeware software, shareware softw...
Open source software, commercial software, freeware software, shareware softw...
 
Informatics Practices Chapter 2 Open Source Software Concepts Class 12th
 Informatics Practices Chapter 2  Open Source Software Concepts Class 12th Informatics Practices Chapter 2  Open Source Software Concepts Class 12th
Informatics Practices Chapter 2 Open Source Software Concepts Class 12th
 
Advantages & Disadvantages (Open-Source vs. Proprietary Software)
Advantages & Disadvantages (Open-Source vs. Proprietary Software)Advantages & Disadvantages (Open-Source vs. Proprietary Software)
Advantages & Disadvantages (Open-Source vs. Proprietary Software)
 
Open source Software: pros and cons
Open source Software: pros and consOpen source Software: pros and cons
Open source Software: pros and cons
 
Students of Navgujarat College of Computer Applications, Ahmedabad felt excit...
Students of Navgujarat College of Computer Applications, Ahmedabad felt excit...Students of Navgujarat College of Computer Applications, Ahmedabad felt excit...
Students of Navgujarat College of Computer Applications, Ahmedabad felt excit...
 
Open Source Software
Open Source SoftwareOpen Source Software
Open Source Software
 
Opensource Powerpoint Review.Ppt
Opensource Powerpoint Review.PptOpensource Powerpoint Review.Ppt
Opensource Powerpoint Review.Ppt
 
Understanding and implementation of open source ecosystems final
Understanding and implementation of open source ecosystems finalUnderstanding and implementation of open source ecosystems final
Understanding and implementation of open source ecosystems final
 
Open source technology software
Open source technology softwareOpen source technology software
Open source technology software
 
Open source software development
Open source software developmentOpen source software development
Open source software development
 
A Social History of Free and Open Source Software
A Social History of Free and Open Source SoftwareA Social History of Free and Open Source Software
A Social History of Free and Open Source Software
 
Free and Open Source Software
Free and Open Source SoftwareFree and Open Source Software
Free and Open Source Software
 
Open source software: The infrastructure impact
Open source software: The infrastructure impactOpen source software: The infrastructure impact
Open source software: The infrastructure impact
 
Open Source Software
Open Source Software Open Source Software
Open Source Software
 
Power Point Presentation on Open Source Software
Power Point Presentation on Open Source Software Power Point Presentation on Open Source Software
Power Point Presentation on Open Source Software
 
Open source technology
Open source technologyOpen source technology
Open source technology
 
Open Source vs Proprietary
Open Source vs ProprietaryOpen Source vs Proprietary
Open Source vs Proprietary
 
Introduction to research on open source software
Introduction to research on open source softwareIntroduction to research on open source software
Introduction to research on open source software
 
Proprietary Vs Open
Proprietary Vs OpenProprietary Vs Open
Proprietary Vs Open
 

Similaire à Introduction to Open Source, Apache and Apache Way

Solr, Lucene, Apache, and You!
Solr, Lucene, Apache, and You!Solr, Lucene, Apache, and You!
Solr, Lucene, Apache, and You!
Andrew Savory
 

Similaire à Introduction to Open Source, Apache and Apache Way (20)

But we're already open source! Why would I want to bring my code to Apache?
But we're already open source! Why would I want to bring my code to Apache?But we're already open source! Why would I want to bring my code to Apache?
But we're already open source! Why would I want to bring my code to Apache?
 
But We're Already Open Source! Why Would I Want To Bring My Code To Apache?
But We're Already Open Source! Why Would I Want To Bring My Code To Apache?But We're Already Open Source! Why Would I Want To Bring My Code To Apache?
But We're Already Open Source! Why Would I Want To Bring My Code To Apache?
 
Contributing to Open Source
Contributing to Open SourceContributing to Open Source
Contributing to Open Source
 
Apache: Code, Community and Open Source
Apache: Code, Community and Open SourceApache: Code, Community and Open Source
Apache: Code, Community and Open Source
 
The Apache Way: A Proven Way Toward Success
The Apache Way: A Proven Way Toward SuccessThe Apache Way: A Proven Way Toward Success
The Apache Way: A Proven Way Toward Success
 
Open source software
Open source softwareOpen source software
Open source software
 
Guide to open source
Guide to open source Guide to open source
Guide to open source
 
Open Source & Libraries
Open Source & LibrariesOpen Source & Libraries
Open Source & Libraries
 
The Apache Way
The Apache WayThe Apache Way
The Apache Way
 
How to get started in Open Source!
How to get started in Open Source!How to get started in Open Source!
How to get started in Open Source!
 
[Workshop] Building an Integration Agile Digital Enterprise with Open Source ...
[Workshop] Building an Integration Agile Digital Enterprise with Open Source ...[Workshop] Building an Integration Agile Digital Enterprise with Open Source ...
[Workshop] Building an Integration Agile Digital Enterprise with Open Source ...
 
Using oss at an internet company and hacker culture
Using oss at an internet company and hacker cultureUsing oss at an internet company and hacker culture
Using oss at an internet company and hacker culture
 
Chalk Talk! Open: source, access, education, research, minds
Chalk Talk! Open: source, access, education, research, mindsChalk Talk! Open: source, access, education, research, minds
Chalk Talk! Open: source, access, education, research, minds
 
What every successful open source project needs
What every successful open source project needsWhat every successful open source project needs
What every successful open source project needs
 
Apache Geode - The First Six Months
Apache Geode -  The First Six MonthsApache Geode -  The First Six Months
Apache Geode - The First Six Months
 
Solr, Lucene, Apache, and You!
Solr, Lucene, Apache, and You!Solr, Lucene, Apache, and You!
Solr, Lucene, Apache, and You!
 
Intro to open source - 101 presentation
Intro to open source - 101 presentationIntro to open source - 101 presentation
Intro to open source - 101 presentation
 
Créer une communauté open source: pourquoi ? comment ?
Créer une communauté open source: pourquoi ? comment ?Créer une communauté open source: pourquoi ? comment ?
Créer une communauté open source: pourquoi ? comment ?
 
How to Contribute to Apache Flink (and Flink at the Apache Software Foundation)
How to Contribute to Apache Flink (and Flink at the Apache Software Foundation)How to Contribute to Apache Flink (and Flink at the Apache Software Foundation)
How to Contribute to Apache Flink (and Flink at the Apache Software Foundation)
 
Management de communaute
Management de communauteManagement de communaute
Management de communaute
 

Plus de Srinath Perera

Plus de Srinath Perera (20)

Book: Software Architecture and Decision-Making
Book: Software Architecture and Decision-MakingBook: Software Architecture and Decision-Making
Book: Software Architecture and Decision-Making
 
Data science Applications in the Enterprise
Data science Applications in the EnterpriseData science Applications in the Enterprise
Data science Applications in the Enterprise
 
An Introduction to APIs
An Introduction to APIs An Introduction to APIs
An Introduction to APIs
 
An Introduction to Blockchain for Finance Professionals
An Introduction to Blockchain for Finance ProfessionalsAn Introduction to Blockchain for Finance Professionals
An Introduction to Blockchain for Finance Professionals
 
AI in the Real World: Challenges, and Risks and how to handle them?
AI in the Real World: Challenges, and Risks and how to handle them?AI in the Real World: Challenges, and Risks and how to handle them?
AI in the Real World: Challenges, and Risks and how to handle them?
 
Healthcare + AI: Use cases & Challenges
Healthcare + AI: Use cases & ChallengesHealthcare + AI: Use cases & Challenges
Healthcare + AI: Use cases & Challenges
 
How would AI shape Future Integrations?
How would AI shape Future Integrations?How would AI shape Future Integrations?
How would AI shape Future Integrations?
 
The Role of Blockchain in Future Integrations
The Role of Blockchain in Future IntegrationsThe Role of Blockchain in Future Integrations
The Role of Blockchain in Future Integrations
 
Future of Serverless
Future of ServerlessFuture of Serverless
Future of Serverless
 
Blockchain: Where are we? Where are we going?
Blockchain: Where are we? Where are we going? Blockchain: Where are we? Where are we going?
Blockchain: Where are we? Where are we going?
 
Few thoughts about Future of Blockchain
Few thoughts about Future of BlockchainFew thoughts about Future of Blockchain
Few thoughts about Future of Blockchain
 
A Visual Canvas for Judging New Technologies
A Visual Canvas for Judging New TechnologiesA Visual Canvas for Judging New Technologies
A Visual Canvas for Judging New Technologies
 
Privacy in Bigdata Era
Privacy in Bigdata  EraPrivacy in Bigdata  Era
Privacy in Bigdata Era
 
Blockchain, Impact, Challenges, and Risks
Blockchain, Impact, Challenges, and RisksBlockchain, Impact, Challenges, and Risks
Blockchain, Impact, Challenges, and Risks
 
Today's Technology and Emerging Technology Landscape
Today's Technology and Emerging Technology LandscapeToday's Technology and Emerging Technology Landscape
Today's Technology and Emerging Technology Landscape
 
An Emerging Technologies Timeline
An Emerging Technologies TimelineAn Emerging Technologies Timeline
An Emerging Technologies Timeline
 
The Rise of Streaming SQL and Evolution of Streaming Applications
The Rise of Streaming SQL and Evolution of Streaming ApplicationsThe Rise of Streaming SQL and Evolution of Streaming Applications
The Rise of Streaming SQL and Evolution of Streaming Applications
 
Analytics and AI: The Good, the Bad and the Ugly
Analytics and AI: The Good, the Bad and the UglyAnalytics and AI: The Good, the Bad and the Ugly
Analytics and AI: The Good, the Bad and the Ugly
 
Transforming a Business Through Analytics
Transforming a Business Through AnalyticsTransforming a Business Through Analytics
Transforming a Business Through Analytics
 
SoC Keynote:The State of the Art in Integration Technology
SoC Keynote:The State of the Art in Integration TechnologySoC Keynote:The State of the Art in Integration Technology
SoC Keynote:The State of the Art in Integration Technology
 

Dernier

Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 

Dernier (20)

Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu SubbuApidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024
 
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 

Introduction to Open Source, Apache and Apache Way

  • 1. Introduction to Open Source, Apache and Apache Way Srinath Perera Ph.D. Senior Software Architect, WSO2 Inc. Member, Apache Software Foundation Visiting Faculty, University of Moratuwa Research Scientist, Lanka Software Foundation
  • 2. Outline • Introduction to Open Source • What is Apache? • Composition of a Project • How it work? • Conclusion photo by John Trainoron Flickr http://www.flickr.com/photos/trainor/2902023575/, Licensed under CC
  • 3. Open Source Market Share • Apache (60%) • Linux (Servers 16%) • Firefox (25%) • Tomcat and most of middleware • Android (43%) • Even Microsoft looking favorably at Opensource projects • There are lot of open source projects bundled inside the proprietary Copyright kafka4prez and licensed for reuse under CC License products , http://www.flickr.com/photos/kafka4prez/198465913
  • 4. What is Open Source? • Most commercial software does not distribute the source code, and developed and managed in a closed world. • Idea of open source is to have the code in the open, and to improve it though volunteer “There is no delight in contributions using “open development” owning anything • Idea is that the project becomes unshared.” a eco-system Seneca (Roman philosopher, mid-1st century AD) – More ideas – More developers – More Testers – More Bug fixers
  • 5. How does a Open Source Work? • Open code repository (SVN or Git etc.) • Two parts of the community – Developer Community – User Community • Communication through Mailing lists / IRC Channel – Develop mailing list – User mailing list • Bug tracking database to track errors (Jira, Bugzilla) • People submit improvements as patches through Jira etc.  Committers have write access to repository  Committers review and apply patches, and when you submit lot of them, they will make you a committer.
  • 6. History of Opensource • 1970s – UNIX, Emacs • 1982 - TeX • 1984-85 - GNU project and Free Software Foundation • 1990 - GNU project almost complete .. well not OS • 1991 - Linus Torvalds announce Linux, Phython • 1993 - Net BSD and Free BSD • 1994-95 - Linux 1.0 released • 1995 - Apache, KDE, PHP, Ruby • 1997 - Genome http://www.geograph.org.uk/photo/916456 • 1999 Linux 2.2, OpenOffice http://www.fotopedia.com/items/flickr-3320704544 • 2003 - Firefox, Android
  • 7. Why People Contribute? • As a way to improve your profile (looking for a Job) • To gain experience • To work with “like minded” People • To be part of something bigger • To be a “Geek” • As a Job – if you a well known open source developer, chances are that you will get payed for contribution • As a competitive strategy Copyright U. S. Fish and Wildlife Service and licensed for reuse under CC License , http://www.flickr.com/photos/usfwsnortheast/4754624921 and Copyright WxMom and licensed for reuse under CC License , http://www.flickr.com/photos/wxmom/1359996991.
  • 8. • "If a tree falls in a forest and no one is around to hear it, does it make a sound?” • “If a open source project was developed, but no one used it, did it exists?” http://www.geograph.org.uk/photo/1842872
  • 9. Why People use Open Source Software? • It is cheaper • It is better • Because it is open source (Religiously) • More visibility into the code, better security, auditing • If there is a problem, I can fix it • More control over releases, roadmap • Patches become available faster • Easy to understand how it works • Can fork the code if needed • Not own by one person, less risk to depend on it. • Do not have to maintain the code
  • 10. History of Apache • Apache HTTP Server development started on 1994 based on NCSA HTTP Server • IBM Stop developing their HTTP Server and start using Apache • Apache Officially established at 1999 • June 2010 – 291 Members, 2300 committers, 75 top level projects, 400+ mailing lists and about 2500 emails/day
  • 11. What is Apache? • It is named after “Native American Nation” and “A Patchy Server” • Apache is not a group sharing a server • It is a community of developers and users
  • 12. What is Apache? • Framework – Legal – Social – Infrastructure • Projects – 97 top level projects – 50+ incubating Projects – 2500 commiters .. About 400 members Copyright Jeff Kubina and licensed for reuse under CC License , http://www.flickr.com/photos/95118988@N00/416015918
  • 13. What Apache Do? • Let developers do what they do best • Open source vs. source open • Everyone is equal, a volunteer (no payment) • All technical decisions are public • Harder you work, louder your voice will be heard • No money, donation of people/time and H/W http://suttonhoo.blogspot.com/2010/03/what-happens-when-father-of-analytical.html
  • 14. Apache Project • Code/SVN – this is the code repository • JIRA – Record of known and fixed bugs • Mailing list – Developer List – User List • Automated Build • Website / WIki
  • 16. Apache License • It is very “Open License” • You can change and redistribute • You can do anything pretty much, just keep the license. • Can be used commercially • However, ownership of the code has to be donated to Apache
  • 17. Apache vs. GPL License • Both allow – Free use and Changes (privately) • Apache can be changed, combined and redistributed • If GPL is changed or combined, results must be GPL • Two Philosophies – “I need as many to use it” vs. “You cannot make money” – Business Model :Sell support vs. Duel License – I am not going to argue either way (at least try not to). It is your own decision. photo by hans s on Flickr, http://www.flickr.com/photos/archeon/2359334908/
  • 18. Community • Community – Developer – User • Community helps each other – Even new people can help others on how to install stuff etc. • Every decision is taken in the mailing list http://www.fotopedia.com/items/flickr-2548697541 , • More you work, louder you will be heard • Diversity requirements • Never break the build – – People from different this will drive most nicest Organizations developer crazy – No ganging up to beat someone
  • 19. Open source vs. Source Open(Giving up control) • Open source is little bit more than opening up the source. • Initial developers has to be able to give up control and welcome other’s ideas and help http://www.flickr.com/photos/7726011@N07/4079868523/
  • 20. ASF Governance structure - Project, PMC, Broad
  • 21. Communication and taking decisions • Rule 1: “Giving up control” is part of the deal • Rule 2: Public Mailing lists. If it did not happened in the list, it did not happen. No private decisions. • Rule 3: Conflicts are resolved through Voting with a “Veto” • Rule 4: Every one is a photo by Todd Anderson on volunteer Flickr, http://www.flickr.com/photos/toddography/12034661 – “Thanks for /, Licensed under CC volunteering”
  • 22. Voting Process • Ask for a “Vote” in the list. • Users vote as – -1 : We must not do this. – -0 : I do not like it, but if you really know what you are doing – 0 : Neutral – 0+ : I think it is a good idea – +1 : I support it • Note that -1 means a veto – That means it cannot be done http://misterbijou.blogspot.com/2007_03_01_archi ve.html – But veto needs explanation and • When to ask for vote? willingness to code an alternative approach – Commit and review – Code can be vetoed, but not releases – Review and commit • Minimum of 3 votes + wait for 72 hours – Decided based on the impact
  • 23. Veto forces Discussion • Idea of Veto is to force people to discuss and resolve http://www.flickr.com/photos/novecentino/2596898279/, Licensed CC
  • 24. Avoid Undue influence • Lot of cooperate users/ developers • Avoid one group controlling • Achieved through diversity • Oversight by the board and members http://www.artelista.com/ypobra.php?o=19550
  • 25. Meritocracy • Apache does not recognize organizations, rather only individuals – Individuals holds Any apache position even when they change the Job etc. • Each individual are treated solely based on his merits to the project alone http://www.public-domain-image.com/sport- public-domain-images-pictures/canoeing-and- kayaking-pictures/lone-canoe-on- water.jpg.html
  • 26. How to Start? • Try things out • Join the user list • Read, Read .. • Start by helping others • Fix bugs and patches • Talk, and explain http://molenda.us/photos/hockey-2006-12- 09/_DSC9580-r.html
  • 27. How to Bring a Project in to Apache • Submit a Proposal to Incubator • If accepted, join the incubator. Will have a champion (who has to be an apache member) and mentors. • Receive feedback and improve • When project has matured and built a community around itself, it graduates.
  • 28. ApacheCon, Hackathon, Roadshow • Apache Con (generally every year at US and EU) gathering of Apache developers and users. • Hackathon – developer gets together (F2F or remotely) and work on specific parts of the project. A concentrated effort. • Roadshow – something like today’s event
  • 29. This may sounds easy .. • But it takes years and lot of work to build a successful open Source project • It is not a dump and run for your code • Community is the key .. http://www.flickr.com/photos/mariachily/5250487136, Licensed CC
  • 30. Questions? Copyright by romainguy, and licensed for reuse under CC License http://www.flickr.com/photos/romainguy/249370084