SlideShare ist ein Scribd-Unternehmen logo
1 von 78
Downloaden Sie, um offline zu lesen
Contributing to
Open Source
Projects


              Francois Marier
          francois@catalyst.net.nz
I      II    III

what?   why?   how?
I
what?
1 0 1
Free
Software
Speec
        h
Proprietary Software
SUN MICROSYSTEMS, INC. ("SUN") IS WILLING TO LICENSE THE SOFTWARE IDENTIFIED BELOW TO YOU                                        10. U.S. GOVERNMENT RESTRICTED RIGHTS. If Software is being acquired by or on behalf of the U.S.
ONLY UPON THE CONDITION THAT YOU ACCEPT ALL OF THE TERMS CONTAINED IN THIS BINARY CODE                                         Government or by a U.S. Government prime contractor or subcontractor (at any tier), then the Government's rights
LICENSE AGREEMENT AND SUPPLEMENTAL LICENSE TERMS (COLLECTIVELY "AGREEMENT"). PLEASE READ                                       in Software and accompanying documentation will be only as set forth in this Agreement; this is in accordance with
THE AGREEMENT CAREFULLY. BY DOWNLOADING OR INSTALLING THIS SOFTWARE, YOU ACCEPT THE                                            48 CFR 227.7201 through 227.7202-4 (for Department of Defense (DOD) acquisitions) and with 48 CFR 2.101 and
TERMS OF THE AGREEMENT. INDICATE ACCEPTANCE BY SELECTING THE "ACCEPT" BUTTON AT THE                                            12.212 (for non-DOD acquisitions).
BOTTOM OF THE AGREEMENT. IF YOU ARE NOT WILLING TO BE BOUND BY ALL THE TERMS, SELECT THE
"DECLINE" BUTTON AT THE BOTTOM OF THE AGREEMENT AND THE DOWNLOAD OR INSTALL PROCESS WILL                                        11. GOVERNING LAW. Any action related to this Agreement will be governed by California law and controlling
NOT CONTINUE.                                                                                                                  U.S. federal law. No choice of law rules of any jurisdiction will apply.

  1. DEFINITIONS. "Software" means the identified above in binary form, any other machine readable materials                    12. SEVERABILITY. If any provision of this Agreement is held to be unenforceable, this Agreement will remain in
(including, but not limited to, libraries, source files, header files, and data files), any updates or error corrections       effect with the provision omitted, unless omission would frustrate the intent of the parties, in which case this
provided by Sun, and any user manuals, programming guides and other documentation provided to you by Sun under                 Agreement will immediately terminate.
this Agreement. "Programs" mean Java applets and applications intended to run on the Java Platform, Standard Edition
(Java SE) on Java-enabled general purpose desktop computers and servers.                                                        13. INTEGRATION. This Agreement is the entire agreement between you and Sun relating to its subject matter. It
                                                                                                                               supersedes all prior or contemporaneous oral or written communications, proposals, representations and
   2. LICENSE TO USE. Subject to the terms and conditions of this Agreement, including, but not limited to the Java            warranties and prevails over any conflicting or additional terms of any quote, order, acknowledgment, or other
Technology Restrictions of the Supplemental License Terms, Sun grants you a non-exclusive, non-transferable, limited           communication between the parties relating to its subject matter during the term of this Agreement. No modification
license without license fees to reproduce and use internally Software complete and unmodified for the sole purpose of          of this Agreement will be binding, unless in writing and signed by an authorized representative of each party.
running Programs. Additional licenses for developers and/or publishers are granted in the Supplemental License Terms.
                                                                                                                               These Supplemental License Terms add to or modify the terms of the Binary Code License Agreement. Capitalized
  3. RESTRICTIONS. Software is confidential and copyrighted. Title to Software and all associated intellectual property        terms not defined in these Supplemental Terms shall have the same meanings ascribed to them in the Binary Code
rights is retained by Sun and/or its licensors. Unless enforcement is prohibited by applicable law, you may not modify,        License Agreement. These Supplemental Terms shall supersede any inconsistent or conflicting terms in the Binary
decompile, or reverse engineer Software. You acknowledge that Licensed Software is not designed or intended for use            Code License Agreement, or in any license contained within the Software.
in the design, construction, operation or maintenance of any nuclear facility. Sun Microsystems, Inc. disclaims any
express or implied warranty of fitness for such uses. No right, title or interest in or to any trademark, service mark, logo     1. Software Internal Use and Development License Grant. Subject to the terms and conditions of this Agreement




                                                                           I Agree
or trade name of Sun or its licensors is granted under this Agreement. Additional restrictions for developers and/or           and restrictions and exceptions set forth in the Software "README" file incorporated herein by reference,
publishers licenses are set forth in the Supplemental License Terms.                                                           including, but not limited to the Java Technology Restrictions of these Supplemental Terms, Sun grants you a non-
                                                                                                                               exclusive, non-transferable, limited license without fees to reproduce internally and use internally the Software
  4. LIMITED WARRANTY. Sun warrants to you that for a period of ninety (90) days from the date of purchase, as                 complete and unmodified for the purpose of designing, developing, and testing your Programs.
evidenced by a copy of the receipt, the media on which Software is furnished (if any) will be free of defects in materials
and workmanship under normal use. Except for the foregoing, Software is provided "AS IS". Your exclusive remedy and               2. License to Distribute Software. Subject to the terms and conditions of this Agreement and restrictions and
Sun's entire liability under this limited warranty will be at Sun's option to replace Software media or refund the fee paid    exceptions set forth in the Software README file, including, but not limited to the Java Technology Restrictions of
for Software. Any implied warranties on the Software are limited to 90 days. Some states do not allow limitations on           these Supplemental Terms, Sun grants you a non-exclusive, non-transferable, limited license without fees to
duration of an implied warranty, so the above may not apply to you. This limited warranty gives you specific legal rights.     reproduce and distribute the Software, provided that (i) you distribute the Software complete and unmodified and
You may have others, which vary from state to state.                                                                           only bundled as part of, and for the sole purpose of running, your Programs, (ii) the Programs add significant and
                                                                                                                               primary functionality to the Software, (iii) you do not distribute additional software intended to replace any
 5. DISCLAIMER OF WARRANTY. UNLESS SPECIFIED IN THIS AGREEMENT, ALL EXPRESS OR IMPLIED                                         component(s) of the Software, (iv) you do not remove or alter any proprietary legends or notices contained in the
CONDITIONS, REPRESENTATIONS AND WARRANTIES, INCLUDING ANY IMPLIED WARRANTY OF                                                  Software, (v) you only distribute the Software subject to a license agreement that protects Sun's interests
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NON-INFRINGEMENT ARE DISCLAIMED,                                          consistent with the terms contained in this Agreement, and (vi) you agree to defend and indemnify Sun and its
EXCEPT TO THE EXTENT THAT THESE DISCLAIMERS ARE HELD TO BE LEGALLY INVALID.                                                    licensors from and against any damages, costs, liabilities, settlement amounts and/or expenses (including
                                                                                                                               attorneys' fees) incurred in connection with any claim, lawsuit or action by any third party that arises or results from
  6. LIMITATION OF LIABILITY. TO THE EXTENT NOT PROHIBITED BY LAW, IN NO EVENT WILL SUN OR ITS                                 the use or distribution of any and all Programs and/or Software.
LICENSORS BE LIABLE FOR ANY LOST REVENUE, PROFIT OR DATA, OR FOR SPECIAL, INDIRECT,
CONSEQUENTIAL, INCIDENTAL OR PUNITIVE DAMAGES, HOWEVER CAUSED REGARDLESS OF THE THEORY                                            3. Java Technology Restrictions. You may not create, modify, or change the behavior of, or authorize your
OF LIABILITY, ARISING OUT OF OR RELATED TO THE USE OF OR INABILITY TO USE SOFTWARE, EVEN IF SUN                                licensees to create, modify, or change the behavior of, classes, interfaces, or subpackages that are in any way
HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. In no event will Sun's liability to you, whether in                       identified as "java", "javax", "sun" or similar convention as specified by Sun in any naming convention designation.
contract, tort (including negligence), or otherwise, exceed the amount paid by you for Software under this Agreement.
The foregoing limitations will apply even if the above stated warranty fails of its essential purpose. Some states do not        4. Source Code. Software may contain source code that, unless expressly licensed for other purposes, is
allow the exclusion of incidental or consequential damages, so some of the terms above may not be applicable to you.           provided solely for reference purposes pursuant to the terms of this Agreement. Source code may not be
                                                                                                                               redistributed unless expressly provided for in this Agreement.
  7. TERMINATION. This Agreement is effective until terminated. You may terminate this Agreement at any time by
destroying all copies of Software. This Agreement will terminate immediately without notice from Sun if you fail to            # Third Party Code. Additional copyright notices and license terms applicable to portions of the Software are set
comply with any provision of this Agreement. Either party may terminate this Agreement immediately should any                  forth in the THIRDPARTYLICENSEREADME.txt file. In addition to any terms and conditions of any third party
Software become, or in either party's opinion be likely to become, the subject of a claim of infringement of any               opensource/freeware license identified in the THIRDPARTYLICENSEREADME.txt file, the disclaimer of warranty
intellectual property right. Upon Termination, you must destroy all copies of Software.                                        and limitation of liability provisions in paragraphs 5 and 6 of the Binary Code License Agreement shall apply to all
                                                                                                                               Software in this distribution.
  8. EXPORT REGULATIONS. All Software and technical data delivered under this Agreement are subject to US export
control laws and may be subject to export or import regulations in other countries. You agree to comply strictly with all      # Termination for Infringement. Either party may terminate this Agreement immediately should any Software
such laws and regulations and acknowledge that you have the responsibility to obtain such licenses to export, re-export,       become, or in either party's opinion be likely to become, the subject of a claim of infringement of any intellectual
or import as may be required after delivery to you.                                                                            property right.

  9. TRADEMARKS AND LOGOS. You acknowledge and agree as between you and Sun that Sun owns the SUN,                             # Installation and Auto-Update. The Software's installation and auto-update processes transmit a limited amount of
SOLARIS, JAVA, JINI, FORTE, and iPLANET trademarks and all SUN, SOLARIS, JAVA, JINI, FORTE, and iPLANET-                       data to Sun (or its service provider) about those specific processes to help Sun understand and optimize them. Sun
related trademarks, service marks, logos and other brand designations ("Sun Marks"), and you agree to comply with the          does not associate the data with personally identifiable information. You can find more information about the data
Sun Trademark and Logo Usage Requirements currently located at http://www.sun.com/policies/trademarks. Any use                 Sun collects at http://java.com/data/.
you make of the Sun Marks inures to Sun's benefit.
4
freedoms
1. use
2. copy
      1. use
2. copy   3. modify
      1. use
4. contribute
2. copy   3. modify
      1. use
4. contribute
2. copy   3. modify
      1. use
“The licence gives
    users these rights   ”
“It's also a
   code of conduct
               for developers   ”
Source
  Copy of                Share
                code
the licence              alike
              included
II
why?
Professional

       Porfolio
Get work experience with some of the World's best developers
You'll learn heaps of

         skills
      that

         employers
                  are looking for
Solving your
  own problems



                 choosing
               what you work on
III
how?
Contribute to an
existing project
Start a new project
An existing project has:




           users           developers
Joining an established
development team can be hard...
Expected transition between the two roles:




           user            developer
user   power   developer
        user
Start with familiar projects:
Maybe something you use everyday
Start a blog and write
about these projects
Look for low hanging fruit
   on the bug tracker
Try to reproduce
the problem
Ask users for
more information
(or clarifications)
Attach patches
to the bug tracker
Fix a problem directly
     affecting you
Start with a piece of software you care about


    Download source




                             Fix a bug



       Send patch
      to developers
Profit!
A new project
   starts with
     3 things
Idea
Apache
 BSD
 *GPL
Putting together
    a tarball
&
source
     data
INSTALL
README
©
COPYING
Public Release
?
useful
to me
(homepage)
clear
 concise
description
Download hosting
Code hosting
Taking care of
the community
Responsive
Serious problems
4 useful tools
Keep track of problems




             in a bug tracker
Store your
documentation
in a wiki
“Individual's economic security
is based upon their skills
and reputation”
                    Netflix CEO
To learn more...

http://www.ubuntu.com/community/participate

http://wiki.debian.org/GetInvolved-Beta

http://tinyurl.com/startingproject
http://tinyurl.com/gettinginvolved
Photo credits:

Lightbulb: http://flickr.com/photos/ppdigital/2329201379/
Lego: http://flickr.com/photos/mn_francis/134291765/
Telephone: http://flickr.com/photos/aoneill/27718289/
Screenshot: http://flickr.com/photos/emmajane/2865747544/
Helping students: http://flickr.com/photos/berzowska/320877733/
House fire: http://www.flickr.com/photos/ohnoitsstevo/1417710651/
Writing: http://www.flickr.com/photos/witheyes/121527260/
Training wheels: http://www.flickr.com/photos/qwrrty/141718410/
Keep calm and carry on: http://www.flickr.com/photos/croma/557971148/
Hand up: http://www.flickr.com/photos/seandreilinger/2326448445/
Clown: http://flickr.com/photos/cyrilcavalie/2762629623/
Beer bottles: http://flickr.com/photos/16038409@N02/2326310839/
Bars: http://flickr.com/photos/edutorres81/2686571658/
Initiation: http://flickr.com/photos/jcmaco/227943123/
LCA Dunk Tank: http://lwn.net/Articles/66665/
Linux forecast:: http://tinyurl.com/5p5cqh
Linux Kernel Map: http://en.wikipedia.org/wiki/File:Linux_kernel_map.png
Tux: http://commons.wikimedia.org/wiki/File:Tux.png
Name tag: http://www.flickr.com/photos/stevegarfield/833593377/

Weitere ähnliche Inhalte

Was ist angesagt?

Backburner install guide
Backburner install guideBackburner install guide
Backburner install guidedandyg1220
 
Oracle Cloud Resource Model Api
Oracle Cloud Resource Model ApiOracle Cloud Resource Model Api
Oracle Cloud Resource Model Apijucaab
 
Ccdp cisco internetwork design study guide
Ccdp cisco internetwork design study guideCcdp cisco internetwork design study guide
Ccdp cisco internetwork design study guidethibeau
 
Modulo di iscrizione
Modulo di iscrizioneModulo di iscrizione
Modulo di iscrizioneLuca Derosa
 
Smart viewreporter
Smart viewreporterSmart viewreporter
Smart viewreportersagarsethi87
 
Wmp Firefox Plugin License
Wmp Firefox Plugin LicenseWmp Firefox Plugin License
Wmp Firefox Plugin Licensejyimbo
 

Was ist angesagt? (9)

Credits
CreditsCredits
Credits
 
La nw e
La nw eLa nw e
La nw e
 
Backburner install guide
Backburner install guideBackburner install guide
Backburner install guide
 
Oracle Cloud Resource Model Api
Oracle Cloud Resource Model ApiOracle Cloud Resource Model Api
Oracle Cloud Resource Model Api
 
Ccdp cisco internetwork design study guide
Ccdp cisco internetwork design study guideCcdp cisco internetwork design study guide
Ccdp cisco internetwork design study guide
 
Modulo di iscrizione
Modulo di iscrizioneModulo di iscrizione
Modulo di iscrizione
 
Smart viewreporter
Smart viewreporterSmart viewreporter
Smart viewreporter
 
Wmp Firefox Plugin License
Wmp Firefox Plugin LicenseWmp Firefox Plugin License
Wmp Firefox Plugin License
 
Wmp eula
Wmp eulaWmp eula
Wmp eula
 

Ähnlich wie Contributing to Open Source (20)

License en
License enLicense en
License en
 
Eula En
Eula EnEula En
Eula En
 
Eula
EulaEula
Eula
 
Mslt
MsltMslt
Mslt
 
Storage manager
Storage managerStorage manager
Storage manager
 
License msxml6 enu
License msxml6 enuLicense msxml6 enu
License msxml6 enu
 
Wmp firefox plugin license
Wmp firefox plugin licenseWmp firefox plugin license
Wmp firefox plugin license
 
Wmp eula (5)
Wmp eula (5)Wmp eula (5)
Wmp eula (5)
 
Wmp eula
Wmp eulaWmp eula
Wmp eula
 
Wmp eula
Wmp eulaWmp eula
Wmp eula
 
Wmp eula
Wmp eulaWmp eula
Wmp eula
 
Wmp eula
Wmp eulaWmp eula
Wmp eula
 
Vh sto dvd4ug
Vh sto dvd4ugVh sto dvd4ug
Vh sto dvd4ug
 
Vh sto dvd4ug
Vh sto dvd4ugVh sto dvd4ug
Vh sto dvd4ug
 
License
LicenseLicense
License
 
License
LicenseLicense
License
 
License
LicenseLicense
License
 
License
LicenseLicense
License
 
Eula.3082.txt
Eula.3082.txtEula.3082.txt
Eula.3082.txt
 
Eula
EulaEula
Eula
 

Mehr von Francois Marier

Security and Privacy settings for Firefox Power Users
Security and Privacy settings for Firefox Power UsersSecurity and Privacy settings for Firefox Power Users
Security and Privacy settings for Firefox Power UsersFrancois Marier
 
Getting Browsers to Improve the Security of Your Webapp
Getting Browsers to Improve the Security of Your WebappGetting Browsers to Improve the Security of Your Webapp
Getting Browsers to Improve the Security of Your WebappFrancois Marier
 
Hardening Firefox for Security and Privacy
Hardening Firefox for Security and PrivacyHardening Firefox for Security and Privacy
Hardening Firefox for Security and PrivacyFrancois Marier
 
Security and Privacy on the Web in 2016
Security and Privacy on the Web in 2016Security and Privacy on the Web in 2016
Security and Privacy on the Web in 2016Francois Marier
 
Privacy and Tracking Protection in Firefox
Privacy and Tracking Protection in FirefoxPrivacy and Tracking Protection in Firefox
Privacy and Tracking Protection in FirefoxFrancois Marier
 
Security and Privacy on the Web in 2015
Security and Privacy on the Web in 2015Security and Privacy on the Web in 2015
Security and Privacy on the Web in 2015Francois Marier
 
Integrity protection for third-party JavaScript
Integrity protection for third-party JavaScriptIntegrity protection for third-party JavaScript
Integrity protection for third-party JavaScriptFrancois Marier
 
Integrity protection for third-party JavaScript
Integrity protection for third-party JavaScriptIntegrity protection for third-party JavaScript
Integrity protection for third-party JavaScriptFrancois Marier
 
Supporting Debian machines for friends and family
Supporting Debian machines for friends and familySupporting Debian machines for friends and family
Supporting Debian machines for friends and familyFrancois Marier
 
Outsourcing your webapp maintenance to Debian
Outsourcing your webapp maintenance to DebianOutsourcing your webapp maintenance to Debian
Outsourcing your webapp maintenance to DebianFrancois Marier
 
Easy logins for Ruby web applications
Easy logins for Ruby web applicationsEasy logins for Ruby web applications
Easy logins for Ruby web applicationsFrancois Marier
 
Easy logins for JavaScript web applications
Easy logins for JavaScript web applicationsEasy logins for JavaScript web applications
Easy logins for JavaScript web applicationsFrancois Marier
 
You're still using passwords on your site?
You're still using passwords on your site?You're still using passwords on your site?
You're still using passwords on your site?Francois Marier
 
Killing Passwords with JavaScript
Killing Passwords with JavaScriptKilling Passwords with JavaScript
Killing Passwords with JavaScriptFrancois Marier
 
Securing the Web without site-specific passwords
Securing the Web without site-specific passwordsSecuring the Web without site-specific passwords
Securing the Web without site-specific passwordsFrancois Marier
 
Easy logins for PHP web applications
Easy logins for PHP web applicationsEasy logins for PHP web applications
Easy logins for PHP web applicationsFrancois Marier
 
Persona: a federated and privacy-protecting login system for the whole Web
Persona: a federated and privacy-protecting login system for the whole WebPersona: a federated and privacy-protecting login system for the whole Web
Persona: a federated and privacy-protecting login system for the whole WebFrancois Marier
 
Taking the pain out of signing users in
Taking the pain out of signing users inTaking the pain out of signing users in
Taking the pain out of signing users inFrancois Marier
 

Mehr von Francois Marier (20)

Security and Privacy settings for Firefox Power Users
Security and Privacy settings for Firefox Power UsersSecurity and Privacy settings for Firefox Power Users
Security and Privacy settings for Firefox Power Users
 
Getting Browsers to Improve the Security of Your Webapp
Getting Browsers to Improve the Security of Your WebappGetting Browsers to Improve the Security of Your Webapp
Getting Browsers to Improve the Security of Your Webapp
 
Hardening Firefox for Security and Privacy
Hardening Firefox for Security and PrivacyHardening Firefox for Security and Privacy
Hardening Firefox for Security and Privacy
 
Security and Privacy on the Web in 2016
Security and Privacy on the Web in 2016Security and Privacy on the Web in 2016
Security and Privacy on the Web in 2016
 
Privacy and Tracking Protection in Firefox
Privacy and Tracking Protection in FirefoxPrivacy and Tracking Protection in Firefox
Privacy and Tracking Protection in Firefox
 
Security and Privacy on the Web in 2015
Security and Privacy on the Web in 2015Security and Privacy on the Web in 2015
Security and Privacy on the Web in 2015
 
Integrity protection for third-party JavaScript
Integrity protection for third-party JavaScriptIntegrity protection for third-party JavaScript
Integrity protection for third-party JavaScript
 
URL to HTML
URL to HTMLURL to HTML
URL to HTML
 
Integrity protection for third-party JavaScript
Integrity protection for third-party JavaScriptIntegrity protection for third-party JavaScript
Integrity protection for third-party JavaScript
 
Supporting Debian machines for friends and family
Supporting Debian machines for friends and familySupporting Debian machines for friends and family
Supporting Debian machines for friends and family
 
Outsourcing your webapp maintenance to Debian
Outsourcing your webapp maintenance to DebianOutsourcing your webapp maintenance to Debian
Outsourcing your webapp maintenance to Debian
 
URL to HTML
URL to HTMLURL to HTML
URL to HTML
 
Easy logins for Ruby web applications
Easy logins for Ruby web applicationsEasy logins for Ruby web applications
Easy logins for Ruby web applications
 
Easy logins for JavaScript web applications
Easy logins for JavaScript web applicationsEasy logins for JavaScript web applications
Easy logins for JavaScript web applications
 
You're still using passwords on your site?
You're still using passwords on your site?You're still using passwords on your site?
You're still using passwords on your site?
 
Killing Passwords with JavaScript
Killing Passwords with JavaScriptKilling Passwords with JavaScript
Killing Passwords with JavaScript
 
Securing the Web without site-specific passwords
Securing the Web without site-specific passwordsSecuring the Web without site-specific passwords
Securing the Web without site-specific passwords
 
Easy logins for PHP web applications
Easy logins for PHP web applicationsEasy logins for PHP web applications
Easy logins for PHP web applications
 
Persona: a federated and privacy-protecting login system for the whole Web
Persona: a federated and privacy-protecting login system for the whole WebPersona: a federated and privacy-protecting login system for the whole Web
Persona: a federated and privacy-protecting login system for the whole Web
 
Taking the pain out of signing users in
Taking the pain out of signing users inTaking the pain out of signing users in
Taking the pain out of signing users in
 

Kürzlich hochgeladen

"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr LapshynFwdays
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clashcharlottematthew16
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfRankYa
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
Vector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector DatabasesVector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector DatabasesZilliz
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 

Kürzlich hochgeladen (20)

"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clash
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdf
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
Vector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector DatabasesVector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector Databases
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 

Contributing to Open Source

  • 1. Contributing to Open Source Projects Francois Marier francois@catalyst.net.nz
  • 2.
  • 3. I II III what? why? how?
  • 7. Speec h
  • 8.
  • 10. SUN MICROSYSTEMS, INC. ("SUN") IS WILLING TO LICENSE THE SOFTWARE IDENTIFIED BELOW TO YOU 10. U.S. GOVERNMENT RESTRICTED RIGHTS. If Software is being acquired by or on behalf of the U.S. ONLY UPON THE CONDITION THAT YOU ACCEPT ALL OF THE TERMS CONTAINED IN THIS BINARY CODE Government or by a U.S. Government prime contractor or subcontractor (at any tier), then the Government's rights LICENSE AGREEMENT AND SUPPLEMENTAL LICENSE TERMS (COLLECTIVELY "AGREEMENT"). PLEASE READ in Software and accompanying documentation will be only as set forth in this Agreement; this is in accordance with THE AGREEMENT CAREFULLY. BY DOWNLOADING OR INSTALLING THIS SOFTWARE, YOU ACCEPT THE 48 CFR 227.7201 through 227.7202-4 (for Department of Defense (DOD) acquisitions) and with 48 CFR 2.101 and TERMS OF THE AGREEMENT. INDICATE ACCEPTANCE BY SELECTING THE "ACCEPT" BUTTON AT THE 12.212 (for non-DOD acquisitions). BOTTOM OF THE AGREEMENT. IF YOU ARE NOT WILLING TO BE BOUND BY ALL THE TERMS, SELECT THE "DECLINE" BUTTON AT THE BOTTOM OF THE AGREEMENT AND THE DOWNLOAD OR INSTALL PROCESS WILL 11. GOVERNING LAW. Any action related to this Agreement will be governed by California law and controlling NOT CONTINUE. U.S. federal law. No choice of law rules of any jurisdiction will apply. 1. DEFINITIONS. "Software" means the identified above in binary form, any other machine readable materials 12. SEVERABILITY. If any provision of this Agreement is held to be unenforceable, this Agreement will remain in (including, but not limited to, libraries, source files, header files, and data files), any updates or error corrections effect with the provision omitted, unless omission would frustrate the intent of the parties, in which case this provided by Sun, and any user manuals, programming guides and other documentation provided to you by Sun under Agreement will immediately terminate. this Agreement. "Programs" mean Java applets and applications intended to run on the Java Platform, Standard Edition (Java SE) on Java-enabled general purpose desktop computers and servers. 13. INTEGRATION. This Agreement is the entire agreement between you and Sun relating to its subject matter. It supersedes all prior or contemporaneous oral or written communications, proposals, representations and 2. LICENSE TO USE. Subject to the terms and conditions of this Agreement, including, but not limited to the Java warranties and prevails over any conflicting or additional terms of any quote, order, acknowledgment, or other Technology Restrictions of the Supplemental License Terms, Sun grants you a non-exclusive, non-transferable, limited communication between the parties relating to its subject matter during the term of this Agreement. No modification license without license fees to reproduce and use internally Software complete and unmodified for the sole purpose of of this Agreement will be binding, unless in writing and signed by an authorized representative of each party. running Programs. Additional licenses for developers and/or publishers are granted in the Supplemental License Terms. These Supplemental License Terms add to or modify the terms of the Binary Code License Agreement. Capitalized 3. RESTRICTIONS. Software is confidential and copyrighted. Title to Software and all associated intellectual property terms not defined in these Supplemental Terms shall have the same meanings ascribed to them in the Binary Code rights is retained by Sun and/or its licensors. Unless enforcement is prohibited by applicable law, you may not modify, License Agreement. These Supplemental Terms shall supersede any inconsistent or conflicting terms in the Binary decompile, or reverse engineer Software. You acknowledge that Licensed Software is not designed or intended for use Code License Agreement, or in any license contained within the Software. in the design, construction, operation or maintenance of any nuclear facility. Sun Microsystems, Inc. disclaims any express or implied warranty of fitness for such uses. No right, title or interest in or to any trademark, service mark, logo 1. Software Internal Use and Development License Grant. Subject to the terms and conditions of this Agreement I Agree or trade name of Sun or its licensors is granted under this Agreement. Additional restrictions for developers and/or and restrictions and exceptions set forth in the Software "README" file incorporated herein by reference, publishers licenses are set forth in the Supplemental License Terms. including, but not limited to the Java Technology Restrictions of these Supplemental Terms, Sun grants you a non- exclusive, non-transferable, limited license without fees to reproduce internally and use internally the Software 4. LIMITED WARRANTY. Sun warrants to you that for a period of ninety (90) days from the date of purchase, as complete and unmodified for the purpose of designing, developing, and testing your Programs. evidenced by a copy of the receipt, the media on which Software is furnished (if any) will be free of defects in materials and workmanship under normal use. Except for the foregoing, Software is provided "AS IS". Your exclusive remedy and 2. License to Distribute Software. Subject to the terms and conditions of this Agreement and restrictions and Sun's entire liability under this limited warranty will be at Sun's option to replace Software media or refund the fee paid exceptions set forth in the Software README file, including, but not limited to the Java Technology Restrictions of for Software. Any implied warranties on the Software are limited to 90 days. Some states do not allow limitations on these Supplemental Terms, Sun grants you a non-exclusive, non-transferable, limited license without fees to duration of an implied warranty, so the above may not apply to you. This limited warranty gives you specific legal rights. reproduce and distribute the Software, provided that (i) you distribute the Software complete and unmodified and You may have others, which vary from state to state. only bundled as part of, and for the sole purpose of running, your Programs, (ii) the Programs add significant and primary functionality to the Software, (iii) you do not distribute additional software intended to replace any 5. DISCLAIMER OF WARRANTY. UNLESS SPECIFIED IN THIS AGREEMENT, ALL EXPRESS OR IMPLIED component(s) of the Software, (iv) you do not remove or alter any proprietary legends or notices contained in the CONDITIONS, REPRESENTATIONS AND WARRANTIES, INCLUDING ANY IMPLIED WARRANTY OF Software, (v) you only distribute the Software subject to a license agreement that protects Sun's interests MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NON-INFRINGEMENT ARE DISCLAIMED, consistent with the terms contained in this Agreement, and (vi) you agree to defend and indemnify Sun and its EXCEPT TO THE EXTENT THAT THESE DISCLAIMERS ARE HELD TO BE LEGALLY INVALID. licensors from and against any damages, costs, liabilities, settlement amounts and/or expenses (including attorneys' fees) incurred in connection with any claim, lawsuit or action by any third party that arises or results from 6. LIMITATION OF LIABILITY. TO THE EXTENT NOT PROHIBITED BY LAW, IN NO EVENT WILL SUN OR ITS the use or distribution of any and all Programs and/or Software. LICENSORS BE LIABLE FOR ANY LOST REVENUE, PROFIT OR DATA, OR FOR SPECIAL, INDIRECT, CONSEQUENTIAL, INCIDENTAL OR PUNITIVE DAMAGES, HOWEVER CAUSED REGARDLESS OF THE THEORY 3. Java Technology Restrictions. You may not create, modify, or change the behavior of, or authorize your OF LIABILITY, ARISING OUT OF OR RELATED TO THE USE OF OR INABILITY TO USE SOFTWARE, EVEN IF SUN licensees to create, modify, or change the behavior of, classes, interfaces, or subpackages that are in any way HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. In no event will Sun's liability to you, whether in identified as "java", "javax", "sun" or similar convention as specified by Sun in any naming convention designation. contract, tort (including negligence), or otherwise, exceed the amount paid by you for Software under this Agreement. The foregoing limitations will apply even if the above stated warranty fails of its essential purpose. Some states do not 4. Source Code. Software may contain source code that, unless expressly licensed for other purposes, is allow the exclusion of incidental or consequential damages, so some of the terms above may not be applicable to you. provided solely for reference purposes pursuant to the terms of this Agreement. Source code may not be redistributed unless expressly provided for in this Agreement. 7. TERMINATION. This Agreement is effective until terminated. You may terminate this Agreement at any time by destroying all copies of Software. This Agreement will terminate immediately without notice from Sun if you fail to # Third Party Code. Additional copyright notices and license terms applicable to portions of the Software are set comply with any provision of this Agreement. Either party may terminate this Agreement immediately should any forth in the THIRDPARTYLICENSEREADME.txt file. In addition to any terms and conditions of any third party Software become, or in either party's opinion be likely to become, the subject of a claim of infringement of any opensource/freeware license identified in the THIRDPARTYLICENSEREADME.txt file, the disclaimer of warranty intellectual property right. Upon Termination, you must destroy all copies of Software. and limitation of liability provisions in paragraphs 5 and 6 of the Binary Code License Agreement shall apply to all Software in this distribution. 8. EXPORT REGULATIONS. All Software and technical data delivered under this Agreement are subject to US export control laws and may be subject to export or import regulations in other countries. You agree to comply strictly with all # Termination for Infringement. Either party may terminate this Agreement immediately should any Software such laws and regulations and acknowledge that you have the responsibility to obtain such licenses to export, re-export, become, or in either party's opinion be likely to become, the subject of a claim of infringement of any intellectual or import as may be required after delivery to you. property right. 9. TRADEMARKS AND LOGOS. You acknowledge and agree as between you and Sun that Sun owns the SUN, # Installation and Auto-Update. The Software's installation and auto-update processes transmit a limited amount of SOLARIS, JAVA, JINI, FORTE, and iPLANET trademarks and all SUN, SOLARIS, JAVA, JINI, FORTE, and iPLANET- data to Sun (or its service provider) about those specific processes to help Sun understand and optimize them. Sun related trademarks, service marks, logos and other brand designations ("Sun Marks"), and you agree to comply with the does not associate the data with personally identifiable information. You can find more information about the data Sun Trademark and Logo Usage Requirements currently located at http://www.sun.com/policies/trademarks. Any use Sun collects at http://java.com/data/. you make of the Sun Marks inures to Sun's benefit.
  • 13. 2. copy 1. use
  • 14. 2. copy 3. modify 1. use
  • 15. 4. contribute 2. copy 3. modify 1. use
  • 16. 4. contribute 2. copy 3. modify 1. use
  • 17. “The licence gives users these rights ”
  • 18. “It's also a code of conduct for developers ”
  • 19. Source Copy of Share code the licence alike included
  • 21. Professional Porfolio
  • 22.
  • 23.
  • 24. Get work experience with some of the World's best developers
  • 25. You'll learn heaps of skills that employers are looking for
  • 26. Solving your own problems choosing what you work on
  • 27.
  • 30. Start a new project
  • 31. An existing project has: users developers
  • 32. Joining an established development team can be hard...
  • 33.
  • 34.
  • 35. Expected transition between the two roles: user developer
  • 36. user power developer user
  • 37. Start with familiar projects:
  • 38. Maybe something you use everyday
  • 39. Start a blog and write about these projects
  • 40. Look for low hanging fruit on the bug tracker
  • 42. Ask users for more information (or clarifications)
  • 43. Attach patches to the bug tracker
  • 44.
  • 45. Fix a problem directly affecting you
  • 46. Start with a piece of software you care about Download source Fix a bug Send patch to developers
  • 48. A new project starts with 3 things
  • 49. Idea
  • 50.
  • 52.
  • 53. Putting together a tarball
  • 54. & source data
  • 58.
  • 63.
  • 66.
  • 67. Taking care of the community
  • 70.
  • 72.
  • 73.
  • 74. Keep track of problems in a bug tracker
  • 76. “Individual's economic security is based upon their skills and reputation” Netflix CEO
  • 78. http://tinyurl.com/gettinginvolved Photo credits: Lightbulb: http://flickr.com/photos/ppdigital/2329201379/ Lego: http://flickr.com/photos/mn_francis/134291765/ Telephone: http://flickr.com/photos/aoneill/27718289/ Screenshot: http://flickr.com/photos/emmajane/2865747544/ Helping students: http://flickr.com/photos/berzowska/320877733/ House fire: http://www.flickr.com/photos/ohnoitsstevo/1417710651/ Writing: http://www.flickr.com/photos/witheyes/121527260/ Training wheels: http://www.flickr.com/photos/qwrrty/141718410/ Keep calm and carry on: http://www.flickr.com/photos/croma/557971148/ Hand up: http://www.flickr.com/photos/seandreilinger/2326448445/ Clown: http://flickr.com/photos/cyrilcavalie/2762629623/ Beer bottles: http://flickr.com/photos/16038409@N02/2326310839/ Bars: http://flickr.com/photos/edutorres81/2686571658/ Initiation: http://flickr.com/photos/jcmaco/227943123/ LCA Dunk Tank: http://lwn.net/Articles/66665/ Linux forecast:: http://tinyurl.com/5p5cqh Linux Kernel Map: http://en.wikipedia.org/wiki/File:Linux_kernel_map.png Tux: http://commons.wikimedia.org/wiki/File:Tux.png Name tag: http://www.flickr.com/photos/stevegarfield/833593377/