360 likes | 659 Views
Open Source Software. Presented by: Dr. Mohsen Kahani http://www.um.ac.ir/~kahani/. Contents. Introduction What is OSS? Why OSS? OSS Economy and Governance Famous OSS Projects OSS repository sites Conclusion. Introduction. Everybody likes free software
E N D
Open Source Software Presented by: Dr. Mohsen Kahani http://www.um.ac.ir/~kahani/
Contents • Introduction • What is OSS? • Why OSS? • OSS Economy and Governance • Famous OSS Projects • OSS repository sites • Conclusion
Introduction • Everybody likes free software • Internet has eased distribution of free Software • Licensing model for software products: • Commercial • Shareware • Open source
What is OSS? • Open source doesn't just mean access to the source code • OSS is software distributed under a license which meets some criteria in general: • free to redistribute • source code must be freely available • modifications and derivative works allowed • no restrictions on who uses the code • Most widely used licenses: • GNU General Public License (GPL) • BSD, MIT X license, etc.
OSS License(www.opensource.org) 1. Free Redistribution 2. Source Code 3. Derived Works 4. Integrity of The Author's Source Code 5. No Discrimination Against Persons or Groups 6. No Discrimination Against Fields of Endeavor 7. Distribution of License 8. License Must Not Be Specific to a Product 9. The License Must Not Restrict Other Software
Historical Highlights • 1979 BSD license • 1984 AT&T commercializes Unix • 1984 Richard Stallman organizes GNU • 1984 MIT X • 1989 GPL • 1991 Linus Torvalds releases Linux • 1998 Netscape announces open source • 98-99 IBM, HP, Oracle, Corel Supports
Why OSS? • Quantitative Vs. Qualitative Discussion • Quantitative Measures: • Market share • Reliability • Performance • Scalability • Security • Total Cost of Ownership (TCO)
Market Share Market Share for Top Web Servers, Aug 95 – Nov. 2001 Linux is #2 Web Server OS After Windows (49% vs. 29%)
Reliability • Of the 50 sites with the highest uptimes • 92% use Apache • 50% run on OSS operating systems • IIS-based sites have more than double offline time (on average) than Apache • Linux is more reliable than Windows NT/2000
Performance • Linux/Apache 16%-50% faster than NT/IIS • eWeek Survey: MySQL equal performance as Oracle, outperforms others
Scalability • Linux support a wider range of platforms than any other OS • OSS development processes can scale to develop large software systems • Red Hat Linux 7.1, has over 30 million SLOC, representing 8,000 person-years or $1 billion
Security • Difficult to measure security with numbers • Attrition.org's survey: • Defaced systems: 59% Windows / 21% Linux • “hacker insurance” costs 5-15% more for Windows vs. Linux • IIS was attacked 1,400 times more frequently than Apache in 2001
Total Cost of Ownership • OSS costs less to initially acquire • OSS often use older hardware more efficiently • The supporting cost is nearly the same • 2001 InfoWorld survey: • 32% over $250,000 per year • 60% over $50,000 per year
Qualitative Discussion • Iterative and incremental development • Potential to revolutionize the entire software industry • No risk of single source solutions • Greater flexibility • Platform independency
Problems (perceived or real) • Lack of support • Lower quality software / programmers • Not ready for enterprise level operations • Not user friendly • Missing applications
Software Economy • Commercial • Proprietary control of code allows it to generate income, which can be used to compensate programmers. • Greater control in allocation of specific resources • Costs associated with the need for secrecy in development of code and for copy protection efforts • Open Source • Reduced revenues when code is given away • Reduced costs associated with • “Alumni effect”: Freely available code gets incorporated in teaching activities, which leads new generations to adopt the same software, reducing downstream training costs. (Unix) • Customization and bug-fixing: Direct external benefit associated with parallel development and innovation • Transparency of process and functionality • Full initiative • Minimal lock-in
OSS Governance Issues • Large open source projects need leadership and rules to avoid splintering • Leadership activities • Provide a vision of the end result(s) of the project • Assemble a critical mass of initial code to demonstrate value of the project and promise for the future • Organize production modules • Components must be doable and contribute to the overall project • Attract programmers to the project • Ensure that component modules provide sufficient challenge • Hold project together • Be able to make hard-nosed decisions about which components end up being part of the “official” version of the software • Governance • Single strong leader (Torvalds with Linux) • Governance committee
OSS Commercial Strategies • Provision of complementary products and services • Documentation • Installation and configuration wizards • Support • Provision of expertise in support of open source projects • Intermediation between corporate clients and open source community • Certification • Conduit to venture capital community • Example: Collab.Net
OSS Development Strategy Release Early & Often
Who Makes OSS? • Public Sector • Everybody should use software generated from people’s money (eg. GreenStone Digital Library) • Big Companies • Generate income from support (eg. Redhat) • Control Market, sell other products (eg. IBM) • Individual freelance programmer • Altruism • Becoming famous
Linux • Started by Linus Torvalds in 1991 as a UNIX clone • Several distributions are available: Red Hat, Debia, Suse, Mandrake … • Red Hat 9 is very reliable, easy to install and use • Special purpose distributions also available
Started by patching NCSA HTTPD • The most widely used web server • Available for most platforms • Can be expanded through modules • Is supported by Apache company
The most popular Open Source SQL-based relational database • Fast, multi-threaded • MySQL vs MySQL Max • Platform Independent • Newest version (V4.0) provides most features of expensive commercial DBMSs
HyperText Pre-Processor • HTML-embedded scripting language • Object-Oriented / Syntactically similar to C • Well suited for Web applications • Two many utilities/add-ons available • Makes development process fast and easy
Other Applications • Perl • Python • PostgreSQL • LaTeX • Star Office • SMTP-BIND-…
OSS future • High quality office suites available • More mission-critical applications available • Clustering / high availability • Increase in the number of service providers • Steady increase in the use of Linux
OSS Repository Sites • www.sourceforge.net • www.freshmeat.org
Some Remarks • Stick to mature, highly visible OSS products • Too many alternatives; difficult to choose • Plan for support / education • More difficult to manage
Conclusion • OSS has become a major player in computer industry • OSS seems a better solution in many cases • Many big organization are using OSS • OSS options should be carefully considered for any project. • The future looks bright