Start your open source project
Upcoming SlideShare
Loading in...5
×
 

Like this? Share it with your network

Share

Start your open source project

on

  • 2,234 views

Start your open source project

Start your open source project

Statistics

Views

Total Views
2,234
Views on SlideShare
2,227
Embed Views
7

Actions

Likes
1
Downloads
31
Comments
0

2 Embeds 7

http://www.linkedin.com 5
http://www.brijj.com 2

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Start your open source project Presentation Transcript

  • 1. Start your open source project ● Ahmed Medhat Osman ● a.medhat.cs@gmail.com ● Software freedom day (Alexandria University) ● August 2010
  • 2. Outlines ● Introduction ● Brif History of open source software ● The cost of open source ● Barriers to open source adoption ● Open source licensing overview ● How to contribute in OSS ● How to start OSS
  • 3. Introduction ● Open Source vs. Free Software ● Many people do not understand the definition of open source ● There is no such thing as free software ● Benefits of Open Source ● The potential for cost savings is the number one motivation to use enterprise open source software – Software license costs is the most likely component where savings will occur – Cost savings in general are difficult to calculate
  • 4. Introduction (cont.) ● Benefits of Open Source ● Flexibility often turns out to be the most beneficial result of using open source software ● Enterprise open source software has cost the proprietary software industry an estimated $60 billion per year ● Many organizations do not have a formal process in place to do a comprehensive financial analysis of software commitments
  • 5. History ● The idea of open source or free software has a rich history that began in the 1960s ● 1969 - ARPANET - Advanced Research Projects Agency Network ● First operational packet switching network ● Predecessor of the Internet ● 1970s – Email (SMTP), File Transfer Protocol, Network Voice Protocol (NVP) standards developed
  • 6. History (cont.) ● 1985 – Free Software Foundation – Richard Stallman ● Universal freedom to distribute and modify computer software without restriction ● Founded to support the free software movement ● Enforcement of the General Public License ● 1992 – Linux kernel released under GPL – Linus Torvalds
  • 7. History (cont.) ● 1998 - Open Source Initiative (OSI) – Bruce Perens and Eric Raymond ● Formalized open source software and brought the model to major software companies ● Formulated the Open Source Definition to determine which licenses are actually “open source” licenses ● 1998 – Netscape Navigator releases source code ● known today as Firefox and Thunderbird ● 1999 – Sun Microsystems releases StarOffice under GPL ● later renamed OpenOffice
  • 8. The cost of open source ● “Open source” is not free ● Many open source software licenses are free, but some licenses have costs associated with them ● Many mature open source projects, especially operating systems, earn money from paid support and documentation
  • 9. There are many different types of hard costs associated with leveraging open source software for enterprise IT projects ● Software Licenses ● Referring to the licenses themselves, not legal terms and conditions ● Often offers the most potential cost savings vs. proprietary software ● Hardware ● Open source software often has reduced hardware requirements ● Support ● Often more but less mature options for support in open source projects
  • 10. Open source costs (cont.) ● Development ● Access to source code can help make development easier and less costly ● Lack of feature parity with proprietary software may create a need for more custom development ● Opportunity to give source code back to the open source community ● Professional Services ● Development, installation, and configuration costs ● Offered by many open source software vendors
  • 11. Open source hard costs (cont.) ● Training ● Offered directly by software vendor ● Through a professional training center or educational institution ● On-site or off-site, or online ● Testing ● Unit testing, performance testing, functional testing, test scripts, use-case scenarios, quality assurance costs ● Staffing ● No conclusive evidence to show that staffing open source projects is cheaper than for proprietary projects
  • 12. Open source hard costs (cont.) ● Operations (Manageability) ● Mix of labor, management and monitoring tools configuration, creation of manuals to support operations ● Open source tends to have less mature management capabilities ● Maintenance Contracts ● 15-25 percent of the license costs or equipment costs per year. ● Calculated using the list price, not the actual paid price ● Treated separate from support contracts in many open source projects ● Costs associated with patching and updating software over time ● Often free with most zero-cost open source software licenses
  • 13. Open source hard costs (cont.) ● Migration ● Especially for system replacement projects where existing data must be migrated to the new application ● Environmental ● Datacenter and hosting costs, floor space, power, bandwidth, hardware leasing ● Documentation ● Often coincides with the training category above ● Configuration ● Often captured with the development and operations categories
  • 14. Open source soft or intangible costs ● Downtime ● financial impact of system outage ● IP Risk ● Legal/litigation costs ● License Auditing Risk ● Resources required to perform a vendor-required license audit ● License Management ● Resources required to manage deployment of licenses and purchase of additional licenses as the deployment grows ● License Negotiation Overhead ● Legal costs required in negotiating the software licensing contract
  • 15. Open source soft or intangible costs (cont.) ● Planning ● Resources for planning and overhead ● Process Inefficiencies ● Lost time and costs related to process activities ● Procurement Overhead ● Purchase cost and resources required to procure the software ● Productivity ● Efficiencies from using the software ● Reliability ● Financial impact of improved system reliability and uptime ● Support Quality ● Resources required for software support
  • 16. There are a variety of business models that have proven to work for companies who want to make money using open source software ● Support Sellers (otherwise known as "Give Away the Recipe, Open A Restaurant"): ● Give away the software product ● Sell distribution, branding, and after-sale service ● This is what RedHat does. ● Loss Leader ● Give away open-source as a loss-leader and market positioner for closed software. ● Netscape, Digium (Asterisk) ● Widget Frosting ● Hardware company goes open-source in order to get better drivers and interface tools cheaper. ● Silicon Graphics (Samba), Apple (Darwin) ● Accessorizing ● Selling accessories – books, compatible hardware, complete systems with open- source software pre-installed ● O'Reilly Associates, OLPC, source: The Open Source Initiative: http://www.opensource.org/advocacy/case_for_business.php
  • 17. There are many barriers to open source adoption in IT organizations, most of which are risk related ● Open source licenses are viral ● Open source software lacks formal support and training ● Software changes too often and is difficult to keep up ● Lack of a long term road map ● Sunk costs in existing projects ● Switching costs ● De facto industry standards
  • 18. There are many different open source licenses and it can be difficult to distinguish one license from another ● Most popular ● MIT License ● GNU General Public License ● Mozilla Public License ● GNU Library or Lesser GPL ● Eclipse Public License ● Apache Software License ● Miscellaneous ● Berkeley Software Distribution ● Adaptive Public License (BSD) ● Artistic License 2.0 ● Special Purpose ● Open Software License ● Educational Community License ● Qt Public License ● NASA Open Source Agreement 1.3 ● And many more… ● Open Group Test Suite License ● http://www.opensource.org/license s/category ● http://en.wikipedia.org/wiki/Compar ison_of_free_software_licences
  • 19. Open source software licenses can range from very simple to relatively complex ● Software Licenses ● Cost of the actual license ● Many open source vendors have a dual license model ● Not the legal licensing terms or conditions ● Seen as the greatest potential for savings in an open source project ● Savings on licenses often used to offset training and professional services costs ● Can include client access licenses, desktop licenses, database license and development tools ● Based on the number of CPUs or number of users ● Every vendor has their own rules ● Makes calculating project costs difficult
  • 20. Open source software licenses can range from very simple to relatively complex (cont.) ● Dual license model ● Choose between an open source (free) license or a commercial license that costs money ● Trolltech Qt Example ● Motivated by market segregation based business models and license compatibility needs ● Open Core License model ● core is GPL: if you embed the GPL in closed source, you pay a fee ● technical support of GPL product may be offered for a fee (up for debate as to whether it must be offered) ● annual commercial subscription includes: indemnity, technical support, and additional features and/or platform support. ● Additional commercial features having viewable or closed source, becoming GPL after time bomb period are both up for debate ● professional services and training are for a fee
  • 21. Open source software licenses can range from very simple to relatively complex (cont.) ● Licensing cost comparison works for new projects, but not necessarily existing projects ● Must be estimated over the life of the project ● Zero cost open source software has caused proprietary vendors to lower their prices and this trend will continue ● An estimated $60 billion per year is lost by proprietary software vendors
  • 22. How to contribute in OSS ● Chose a project ● Organize your ideas ● Spend some time in the projectweb site ● Start with ” about ” page ● Find or ask for newbie documentation ● Look for source code and developer documentation – Observe how developers use comments – Review code style/coding guidlines
  • 23. How to contribute in OSS (cont.) ● Mailing lists are critical ● Browse the archive – You can't read evry thing – search ! ● Detrmine the key players ● Asking questions – write usefaul subject line – Show you have done your research – Waite for an answer
  • 24. How to contribute in OSS (cont.) ● Basic netquette – Chose responseple handel – Don't use text speak – Be formal in your first few postes
  • 25. How to contribute in OSS (cont.) ● Learn to love IRC (Internet Relay Chat) ● Read chanel topic ● Observe traffic ● Don't ask to ask ● Wait for answer
  • 26. How to contribute in OSS (cont.) ● You have found your tribe way to get involved ● Check the issue tacker for easy or beginner bugs ● Submit a patch
  • 27. How to contribute in OSS (cont.) ● Triage bugs ● Answer question in IRC ● Poin people to the right direction
  • 28. But Wait, I'm Not Technical (Enough) Free and Open Source Software Needs All Kinds of Contributors
  • 29. How to contribute in OSS (cont.) ● For writers ● Documentation ● Press releases and news letters ● For artists ● Logos ● Project Bannares for conferances ● Web design
  • 30. How to contribute in OSS (cont.) ● For Marketers ● Project Presentation ● Collateral: Data Sheets, Project Brochures ● Social Media ● Swag! ● For the Socially Inclined ● For Teachers ● Anyone who can share knowledge well is a teacher.
  • 31. How to start OSS
  • 32. Why Open source Reinventing the wheel vs Continuous improvment
  • 33. Why Open source Review by few Vs Review by more More correction and less bugs
  • 34. Why Open source Closed building with few guards Vs Open building with more and more guards More Security
  • 35. How to start OSS ● You need to have new idea or have another implemntation for old idea ● factors that affect the success of open source software projects ● Number of developers ● Experience of developers ● Target users type ● Programming language type ● Software type ● License type
  • 36. Hypotheses ● Hypothesis 1: Number of developers is positively associated with the success of OSS projects ● Hypothesis 2: Experience of developers is positively associated with the success of OSS projects ● Hypothesis 3: Targeting developers as users is positively associated with the success of OSS projects ● Hypothesis 4: Using a commonly used programming language is positively associated with the success of OSS projects ● Hypothesis 5: Development of application development and deployment tools is positively associated with the success of OSS projects ● Hypothesis 6: Use of non-restrictive OSS licenses is positively associated with the success of OSS projects
  • 37. What do you need ● Place to host the project on ● Revision control system ● Issue tracking system ● Continuous integration tools ● Mailing lists and IRC channel
  • 38. Place to host the project on ● Google ● http://code.google.com/ ● Sourceforge ● http://sourceforge.net/ ● Githup ● https://github.com/ ● Gitorious ● http://gitorious.org/
  • 39. Revision control system ● Client–server ● CVS ● SVN ● Distributed ● Bazaar ● GIT ● Mercurial
  • 40. Issue tracking system ● Bugzilla ● JIRA ● IBM Rational ClearQuest ● Google Code Hosting ● Zentrack
  • 41. Continuous integration tools ● Apache Gump ● Bamboo ● Hudson ● BuildBot Comparison : http://en.wikipedia.org/wiki/Comparison_of_Continuous_Integration_Software
  • 42. Mailing lists and IRC channel ● Just make a good communication environment
  • 43. Thank you for attending, please let me know if you have any questions For later questions a.medhat.cs@gmail.com