Open Source Software Presented by Dr Mohsen Kahani
Open Source Software Presented by: Dr. Mohsen Kahani http: //www. um. ac. ir/~kahani/
Contents l Introduction l What is OSS? l Why OSS? l OSS Economy and Governance l Famous OSS Projects l OSS repository sites l Conclusion
Introduction l Everybody likes free software l Internet has eased distribution of free Software l Licensing model for software products: – Commercial – Shareware – Open source
What is OSS? Open source doesn't just mean access to the source code l OSS is software distributed under a license which meets some criteria in general: l – – l 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 l 1979 l 1984 l 1989 l 1991 l 1998 l 98 -99 BSD license AT&T commercializes Unix Richard Stallman organizes GNU MIT X GPL Linus Torvalds releases Linux Netscape announces open source IBM, HP, Oracle, Corel Supports
Why OSS? l Quantitative Vs. Qualitative Discussion l Quantitative Measures: – Market share – Reliability – Performance – Scalability – Security – Total Cost of Ownership (TCO)
Market Share for Top Web Servers, Aug 95 – Nov. 2001 Linux is #2 Web Server OS After Windows (49% vs. 29%)
Reliability l 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 l Linux is more reliable than Windows NT/2000 l
Performance l Linux/Apache 16%-50% faster than NT/IIS l e. Week Survey: My. SQL equal performance as Oracle, outperforms others
Scalability Linux support a wider range of platforms than any other OS l OSS development processes can scale to develop large software systems l – 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 l Attrition. org's survey: l – Defaced systems: 59% Windows / 21% Linux “hacker insurance” costs 5 -15% more for Windows vs. Linux l IIS was attacked 1, 400 times more frequently than Apache in 2001 l
Total Cost of Ownership OSS costs less to initially acquire l OSS often use older hardware more efficiently l The supporting cost is nearly the same l 2001 Info. World survey: l – – 32% over $250, 000 per year 60% over $50, 000 per year
Qualitative Discussion l l l 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) l Lack of support l Lower quality software / programmers l Not ready for enterprise level operations l Not user friendly l Missing applications
Software Economy l 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 l Open Source – Reduced revenues when code is given away – Reduced costs associated with l “Alumni effect”: Freely available code gets incorporated in teaching activities, which leads new generations to adopt the same software, reducing downstream training costs. (Unix) l Customization and bug-fixing: Direct external benefit associated with parallel development and innovation l Transparency of process and functionality l Full initiative l Minimal lock-in
OSS Governance Issues Large open source projects need leadership and rules to avoid splintering l Leadership activities l – Provide a vision of the end result(s) of the project l Assemble a critical mass of initial code to demonstrate value of the project and promise for the future – Organize production modules l Components must be doable and contribute to the overall project – Attract programmers to the project l Ensure that component modules provide sufficient challenge – Hold project together l Be able to make hard-nosed decisions about which components end up being part of the “official” version of the software l Governance – Single strong leader (Torvalds with Linux) – Governance committee
OSS Commercial Strategies – Provision of complementary products and services l Documentation l Installation and configuration wizards l Support – Provision of expertise in support of open source projects – Intermediation between corporate clients and open source community l Certification l Conduit to venture capital community l Example: Collab. Net
OSS Development Strategy Release Early & Often
Who Makes OSS? l Public Sector – Everybody should use software generated from people’s money (eg. Green. Stone Digital Library) l Big Companies – Generate income from support (eg. Redhat) – Control Market, sell other products (eg. IBM) l Individual freelance programmer – Altruism – Becoming famous
Linux l l 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
l Started by patching NCSA HTTPD l The most widely used web server l Available for most platforms l Can be expanded through modules l Is supported by Apache company
l The most popular Open Source SQL-based relational database l Fast, multi-threaded l My. SQL vs My. SQL Max l Platform Independent l Newest version (V 4. 0) provides most features of expensive commercial DBMSs
l Hyper. Text Pre-Processor l HTML-embedded scripting language l Object-Oriented / Syntactically similar to C l Well suited for Web applications l Two many utilities/add-ons available l Makes development process fast and easy
Other Applications l Perl l Python l Postgre. SQL l La. Te. X l Star Office l SMTP-BIND-…
OSS future l High quality office suites available l More mission-critical applications available l Clustering / high availability l Increase in the number of service providers l Steady increase in the use of Linux
OSS Repository Sites l www. sourceforge. net lwww. freshmeat. org
Some Remarks l Stick to mature, highly visible OSS products l Too many alternatives; difficult to choose l Plan for support / education l More difficult to manage
Conclusion l OSS has become a major player in computer industry l OSS seems a better solution in many cases l Many big organization are using OSS l OSS options should be carefully considered for any project. l The future looks bright
Thanks for your Attention
- Slides: 30