Open Source - Not just for IT anymore

1,308 views
1,234 views

Published on

Presented at the Open Repositories Conference, this presentation describes the Lessons Learned in the Open Source Movement that can be used outside of the traditional IT environment.

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
1,308
On SlideShare
0
From Embeds
0
Number of Embeds
9
Actions
Shares
0
Downloads
0
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Open Source - Not just for IT anymore

  1. 1. Open Source:It’s just not forIT anymore!J i m J a g i e l s k i | | @ j i m j a g
  2. 2. This work is licensed under a Creative Commons Attribution 3.0 Unported License.AgendaIntroductionWhat is the ASFWhat exactly is “Open Source”The Lessons Learned by the ASF
  3. 3. This work is licensed under a Creative Commons Attribution 3.0 Unported License.IntroductionJim JagielskiLongest still-active developer/contributorCo-founder of the ASFMember, Director and PresidentDirector: Outercurve and OSISr. Consulting Engineer with Red Hat
  4. 4. This work is licensed under a Creative Commons Attribution 3.0 Unported License.The ASFASF == The Apache Software FoundationBefore the ASF there was “The ApacheGroup”The ASF was incorporated in 1999
  5. 5. This work is licensed under a Creative Commons Attribution 3.0 Unported License.The ASFNon-profit corporation founded in 1999501( c )3 charityVolunteer organizationVirtual world-wide organizationExists to provide the organizational, legal,and financial support for various OSSprojects
  6. 6. This work is licensed under a Creative Commons Attribution 3.0 Unported License.Structure of theASF - legalMember-based corporation - individuals onlyMembers nominate and elect new membersMembers elect a board - 9 seatsSemi-annual meetings via IRCEach PMC has a Chair - eyes and ears of theboard (oversight only)
  7. 7. This work is licensed under a Creative Commons Attribution 3.0 Unported License.ASF “Org Chart”Development AdministrativeUsersPatchers/BuggersContributorsCommittersPMC MembersMembersOfficersBoard
  8. 8. This work is licensed under a Creative Commons Attribution 3.0 Unported License.Issues with DualStacksDespite clear differentiation, sometimes thereare leakseg: PMC chair seen as “lead” developerSometimes officers are assumed to have toomuch power if they venture into developmentissues“hats”
  9. 9. This work is licensed under a Creative Commons Attribution 3.0 Unported License.The ASF’s MissionProvide open source software to the publicfree of chargeProvide a foundation for open, collaborativesoftware development projects by supplyinghardware, communication, and businessinfrastructureCreate an independent legal entity to whichcompanies and individuals can donateresources and be assured that those resourceswill be used for the public benefit
  10. 10. This work is licensed under a Creative Commons Attribution 3.0 Unported License.The ASF’s MissionProvide a means for individual volunteers to besheltered from legal suits directed at theFoundation’s projectsProtect the ‘Apache’ brand, as applied to itssoftware products, from being abused by otherorganizationsProvide legal and technical infrastructure foropen source software development and toperform appropriate oversight of such software
  11. 11. This work is licensed under a Creative Commons Attribution 3.0 Unported License.Vision StatementThe Apache Software Foundation providessupport for the Apache community of open-source software projects. The Apache projectsare characterized by a collaborative,consensus based development process, anopen and pragmatic software license, and adesire to create high quality software thatleads the way in its field. We considerourselves not simply a group of projectssharing a server, but rather a community ofdevelopers and users.
  12. 12. This work is licensed under a Creative Commons Attribution 3.0 Unported License.Vision Statement,Take 2Community created codeOur code should be exceptional
  13. 13. This work is licensed under a Creative Commons Attribution 3.0 Unported License.Why Open Source?Access to the source codeAvoid vendor lock-in (or worse!)Much better softwareBetter security record (more eyes)Much more nimble development - frequentreleasesDirect user input
  14. 14. This work is licensed under a Creative Commons Attribution 3.0 Unported License.The draw of OpenSourceHaving a real impact in the development anddirection of ITPersonal satisfaction: I wrote that!Sense of membership in a communitySense of accomplishment - very quickturnaround timesDevelopers and engineers love to tinker -huge opportunity to do so
  15. 15. This work is licensed under a Creative Commons Attribution 3.0 Unported License.Open Source FUDNo quality or quality controlPrevents or slows developmentHave to “give it away for free”No real innovation
  16. 16. This work is licensed under a Creative Commons Attribution 3.0 Unported License.What is OpenSource?Open Source LicensingOSI ApprovedFree SoftwareAs in Free Speech, not Free BeerOpen Source Methodology (secondary)ala, the Apache Software Foundation
  17. 17. This work is licensed under a Creative Commons Attribution 3.0 Unported License.What is OpenSource?Basically, it’s a “new” way to develop, licenseand distribute codeActually, there was “open source” even beforeit was called thatThe key technologies behind the Internet andthe Web and the Cloud are all Open Sourcebased
  18. 18. This work is licensed under a Creative Commons Attribution 3.0 Unported License.True Open SourceFor software to be Open Source, it must beunder an OSI approved Open SourceLicenseAt last count, over 25 exist
  19. 19. This work is licensed under a Creative Commons Attribution 3.0 Unported License.Open SourceLicensesGive Me CreditAL, BSD, MITGive Me Fixes(L)GPL, EPL, MPLGive Me EverythingGPL- Dave Johnsonhttp://rollerweblogger.org/page/roller?entry=gimme_credit_gimme_fixes_gimmem
  20. 20. This work is licensed under a Creative Commons Attribution 3.0 Unported License.The Apache License(AL)A liberal open source software license - BSD-likeBusiness friendlyRequires attributionIncludes Patent GrantEasily reused by other projects &organizations
  21. 21. This work is licensed under a Creative Commons Attribution 3.0 Unported License.Give Me FixesMPL / EPL / (L)GPLUsed mostly with platforms or librariesProtects the licensed code, but allows largerderivative works with different licensingStill very business friendly
  22. 22. This work is licensed under a Creative Commons Attribution 3.0 Unported License.Give Me EverythingGPL (copyleft)Derivative works also under GPLLinked works could also be under GPLViral nature may likely limit adoptionGPL trumps all others or else incompatible
  23. 23. This work is licensed under a Creative Commons Attribution 3.0 Unported License.License DifferencesMainly involve the licensing of derivativeworksOnly really applies during (re)distribution ofworkWhere the “freedom” should be mostlyfocused: the user or the code itself
  24. 24. This work is licensed under a Creative Commons Attribution 3.0 Unported License.One True LicenseThere is no such thingLicensing is selected to address what you aretrying to doIn general, Open Standards do better withAL-like licenseIf wide adoption is important to you: againAL.
  25. 25. This work is licensed under a Creative Commons Attribution 3.0 Unported License.The Apache WayAlthough the term is deprecated, “TheApache Way” relates to how the ASF (and itsprojects) work and operateBasically, the least common denominators onhow PMCs operate
  26. 26. This work is licensed under a Creative Commons Attribution 3.0 Unported License.Why focus on ASF ?http://webmink.com/essays/#OBRhttp://www.zdnet.com/blog/open-source/oracle-gives-openoffice-to-apache/9035
  27. 27. This work is licensed under a Creative Commons Attribution 3.0 Unported License.Basic MemesMeritocracyPeer-basedConsensus decision makingCollaborative developmentResponsible oversight
  28. 28. This work is licensed under a Creative Commons Attribution 3.0 Unported License.Meritocracy“Govern by Merit”Merit is based on what you doMerit never expiresThose with merit, get more responsibilityProvides incentive to Do More
  29. 29. This work is licensed under a Creative Commons Attribution 3.0 Unported License.Peer-basedDevelopers represent themselves - individualsMutual trust and respectAll votes hold the same weight (no BDFL)Community created codeHealthy communities create healthy codePoisonous communities don’tFeel as part of a community
  30. 30. This work is licensed under a Creative Commons Attribution 3.0 Unported License.Why Community ->CodeSince we are all volunteers, people’s time andinterests changeA healthy community is “warm and inviting”and encourages a continued influx ofdevelopersPoisonous people/communities turn peopleoff, and the project will dieEnd result - better code, long-term code
  31. 31. This work is licensed under a Creative Commons Attribution 3.0 Unported License.Consensus decisionmakingKey is the idea of voting+1 - yes+0 - no real comment-1 - vetoSometimes you’ll also see stuff like -0, -0.5,etc...
  32. 32. This work is licensed under a Creative Commons Attribution 3.0 Unported License.VotingThe main intent is to gauge developeracceptanceVetos must be justifiable and have soundtechnical meritIf valid, Vetos cannot be overruledVetos are very rare
  33. 33. This work is licensed under a Creative Commons Attribution 3.0 Unported License.Commit ProcessReview Then Commit (RTC)A patch is submitted to the project forinclusionIf at least 3 +1s and no -1s, code iscommittedGood for stable branchesEnsures enough “eyes on the code” on adirect-to-release path
  34. 34. This work is licensed under a Creative Commons Attribution 3.0 Unported License.Commit ProcessCommit Then Review (CTR)A patch is committed directly to the codeReview Process happens post commitGood for development branchesDepends on people doing reviews after thefactAllows very fast development
  35. 35. This work is licensed under a Creative Commons Attribution 3.0 Unported License.Commit ProcessLazy Consensusvariant of RTC“I plan on committing this in 3 days”Provides opportunity for oversight, butwith known “deadline”As always, can be vetoed after the fact
  36. 36. This work is licensed under a Creative Commons Attribution 3.0 Unported License.CollaborativeDevelopmentCode is developed by the communityVoting ensures at least 3 active developersDevelopment done online and on-listIf it didn’t happen on-list, it didn’t happen
  37. 37. This work is licensed under a Creative Commons Attribution 3.0 Unported License.CollaborativeDevelopmentMailing lists are the preferred methodArchivedAsynchronousAvailable to anyone - public list
  38. 38. This work is licensed under a Creative Commons Attribution 3.0 Unported License.CollaborativeDevelopmentOther methods are OK, if not primaryWikisIRCF2FAlways bring back to the list
  39. 39. This work is licensed under a Creative Commons Attribution 3.0 Unported License.ResponsibleOversightEnsure license complianceTrack IPQuality codeQuality community
  40. 40. This work is licensed under a Creative Commons Attribution 3.0 Unported License.Look Familiar?These concepts are not new or uniqueBest practices regarding how the Scientificand Health community works
  41. 41. This work is licensed under a Creative Commons Attribution 3.0 Unported License.Publish or PerishIn Open Source, frequent releases indicatehealthy activityWhat is collaborative s/w development otherthan peer review?Think how restrictive research would be w/oopen communication
  42. 42. This work is licensed under a Creative Commons Attribution 3.0 Unported License.The ApacheIncubatorEntry point for all new projects andcodebasesIndoctrinates the Apache Way to the podlingEnsures and tracks IP
  43. 43. This work is licensed under a Creative Commons Attribution 3.0 Unported License.Contributor LicenseAgreementaka: iCLA (for individual)Required of all committersGuarantees:The person has the authority to commit thecodeThat the ASF can relicense the codeDoes NOT assign copyright
  44. 44. This work is licensed under a Creative Commons Attribution 3.0 Unported License.Success Stories -HTTPDApache HTTP Server (“Apache”)Reference implementation of HTTPMost popular web server in existanceFound in numerous commercial webserversOracle, IBM,...Influenced countless more
  45. 45. This work is licensed under a Creative Commons Attribution 3.0 Unported License.Success Stories -HTTPDBy having a “free” and open source referenceimplementation, the drive to create a separateproprietary version was reduced.“Why spend time and money, when we canuse this”This allowed HTTP (and the Web) to growand STAY usable (compare to the oldbrowser wars)
  46. 46. This work is licensed under a Creative Commons Attribution 3.0 Unported License.Success Stories -TomcatApache Tomcat (Servlet Container)The default standard servlet containerEach version maps to a specific spec.Bundled with numerous Java apps outthereLikely a major influence on the diminishingrelevance of JEE
  47. 47. This work is licensed under a Creative Commons Attribution 3.0 Unported License.Success Stories -OthersApache Geronimo (Server Framework -JEE )Not “just” a JEE serverApache Maven (Java project build/management tool)Another industry standardApache Logging, Axis, Struts, ...
  48. 48. This work is licensed under a Creative Commons Attribution 3.0 Unported License.Internal UsageAdvantagesMuch tighter communitybetter communication (esp. with “users”)tighter feedback loopReady made audienceDon’t need to “sell” the aspects of OpenSource which scare/confuse IT people
  49. 49. This work is licensed under a Creative Commons Attribution 3.0 Unported License.Usage GotchasTrust and Merit are earned, which impliestimeThe available pool might be relatively smallHow to encourage external involvement“scratching your own itch”Mentoring: lurking on lists vs. directinvolvement
  50. 50. This work is licensed under a Creative Commons Attribution 3.0 Unported License.Some ConcludingThoughtsTrust your developers AND your usersCommunication is keyOpen Source is NOT the GoodHousekeeping Seal Of ApprovalBut don’t believe in all the FUD eitherSuccess is not measured in market share, butin adoption
  51. 51. This work is licensed under a Creative Commons Attribution 3.0 Unported License.Some ConcludingThoughtsOpen Source should have a viable business oremotional reason - be realistic in expectationsGive some thought to licensing earlyMake it easier for developers and users to“join”Give them a reason to
  52. 52. This work is licensed under a Creative Commons Attribution 3.0 Unported License.Helpful linksThe Apache Software Foundationwww.apache.orgRed Hat, Inc (my employer)www.redhat.comWant to help a great organization?www.marylandstateboychoir.org
  53. 53. This work is licensed under a Creative Commons Attribution 3.0 Unported License.That’s ItThank you!Any questions?@jimjagjim@jaguNET.com

×