OSS Fundamentals: Prof. Jayakumar Sadhasivam, Vellore Institute of Technology, Vellore
OSS Fundamentals: Prof. Jayakumar Sadhasivam, Vellore Institute of Technology, Vellore
✓ Open as in free
✓ Open as in access
✓ Open as in over time
✓ Open as in not closed
✓ Open as in reuse and change
✓ Open as in any place and for anyone
Share
Adapt
Modify
Collaborate!
Is it FREE ?? NO!
๏ Free in OSS context refers FREEDOM not the COST.
๏ Every free software is not Open Source.
๏ Every Open Source software is not free.
๏ Some software are Open Source as well as free.
GNU Project
Open Source - OS
๏ Linux — operating system kernel based on Unix
๏ GNU Project — a sufficient body of free software
๏ OpenBSD — operating system derived from Unix
๏ FreeBSD — operating system derived from Unix
๏ OpenSolaris — Unix Operating System from Sun Microsystems
๏ Symbian — real-time mobile operating system
๏ Android — operating system derived from Linux
https://en.wikipedia.org/wiki/Comparison_of_open-source_operating_systems
OS - Software Server
๏ Apache — HTTP web server
๏ Tomcat web server — web container
๏ MediaWiki — wiki server software
๏ Alfresco, TYPO3 — content management system
๏ RenovatioCMS — content management system
๏ Joomla — content management system
๏ Drupal — content management system
OS Software
✓ WordPress — blog software
✓ MongoDB — document-oriented, non-relational database
✓ Eclipse — Integrated Development Environment (IDE)
✓ Moodle — course management system or virtual learning environment
✓ openSIS — open source Student Information System.
✓ osCommerce — e-commerce
✓ Mozilla Firefox — web browser
✓ Mozilla Thunderbird — e-mail client
✓ OpenOffice.org — office suite
✓ Stockfish — chess engine series, one of the strongest chess programs
✓ 7-Zip – File Archiever
✓ PeaZip — File archiver
Prof. Jayakumar Sadhasivam, VIT, Vellore. 9
Open Source
De nition (OSD)
fi
Open Source De nition (OSD)
๏ Open source doesn't just mean access to the source code. The distribution
terms of open-source software must comply with the following criteria:
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. License Must Not Restrict Other Software
10. License Must Be Technology-Neutral
Prof. Jayakumar Sadhasivam, VIT, Vellore. 19
fi
1. Free Redistribution
✓ The license shall not restrict any party from selling or giving away
the software as a component of an aggregate software distribution
containing programs from several different sources.
✓ The license shall not require a royalty or other fee for such sale.
2. Source Code
✓ The program must include source code, and must allow distribution
in source code as well as compiled form. Where some form of a
product is not distributed with source code, there must be a well-
publicized means of obtaining the source code for no more than a
reasonable reproduction cost preferably, downloading via the
Internet without charge.
✓ The source code must be the preferred form in which a
programmer would modify the program.
Prof. Jayakumar Sadhasivam, VIT, Vellore. 20
3. Derived Works
✓ The license must allow modifications and derived works, and
must allow them to be distributed under the same terms as
the license of the original software.
4. Integrity of The Author's Source Code
✓ The license may restrict source-code from being distributed
in modified form only if the license allows the distribution of
"patch files" with the source code for the purpose of
modifying the program at build time.
✓ The license must explicitly permit distribution of software
built from modified source code.
✓ The license may require derived works to carry a different
name or version number from the original software
Prof. Jayakumar Sadhasivam, VIT, Vellore. 21
Open Source
vs
Closed Source
Open Source
๏ OSS - Open source software can be defined as software
distributed under a licensing agreement which allows the source
code (computer code) to be shared, viewed and modified by other
users and organizations.
๏ Cost
✓ Able to implement, train and support at little cost
✓ Need technical expert to manage.
✓ Increasingly charging for add-ons, additional services and
integration
Open Source
๏ Service and Support
✓ Deliver support via forums and blogs
✓ Time poor, customers suffers a lot
✓ Need to solve the problem in timely manner
✓ Low level of responsive service.
๏ Innovation
✓ flexibility to adapt the software to suit, without restriction
✓ Whether customized changes to the original source code limit
the future support and growth of the software.
Open Source
๏ Usability
✓ Highly criticized for its lack of usability
✓ developer-centric
✓ Without adequate documentation users must rely on
alternative means such as online communities, assuming they
are capable of finding them and the problem
๏ Security
✓ open source software is not always peer reviewed or
validated for use.
Closed Source
๏ Cost
✓ Depends on the complexity of the system required
✓ Base fee for software, integration and services and annual
licensing/support fees.
✓ Trusted brand that includes higher levels of security and
functionality, continuous innovation, a greater ability to scale
๏ Service and Support
✓ Service level and support structure requirements taking precedent
in favor of maximizing uptime and minimizing downtime (For
internet channel).
✓ Selling without technical expertise.
✓ Reduction in risk.
Prof. Jayakumar Sadhasivam, VIT, Vellore. 30
Closed Source
๏ Innovation
✓ Disadvantage to some, it ensures the security and reliability of
the software.
✓ Innovation comes fully tested, and is available to all users of
the software.
๏ Security
✓ Proprietary software is viewed as more secure because it is
developed in a controlled environment by a concentrated team
with a common direction.
✓ The source code may be viewed and edited by this team alone,
and is heavily audited, eliminating the risk of back door Trojans
and reducing the risk of any bugs or issues with the software.
Prof. Jayakumar Sadhasivam, VIT, Vellore. 31
Free Software
๏ Free software is a matter of the users' freedom to run, copy, distribute,
study, change and improve the software. More precisely, it refers to four
kinds of freedom, for the users of the software:
✓ The freedom to run the program as you wish, for any purpose
(freedom 0).
✓ The freedom to study how the program works, and adapt it to your
needs (freedom 1).
✓ The freedom to redistribute copies so you can help your neighbor
(freedom 2).
✓ The freedom to improve the program, and release your improvements
to the public, so that the whole community benefits (freedom 3).
๏ A program is free software if users have all of these freedoms.
Copyright
vs
Copyleft
Copyright vs Copyleft
๏ Software Copyright is commonly used by proprietary software
companies to prevent the unauthorized copying of their software.
๏ Copyleft gives the legal right to everyone to use, edit, and redistribute
programs or program's code.
๏ Copyleft is a general method for making a free software and requiring
all modified and extended versions of the program to be a free software.
๏ The concept of copyleft licensing has been around for a long time.
Some of the most popular open source development projects employ
copyleft licenses:
✓ The Linux Kernel (GPL)
✓ Mozilla Firefox (MPL, GPL and LGPL -detailed s/w licence)
✓ OpenSolaris(CDDL)
Prof. Jayakumar Sadhasivam, VIT, Vellore. 42
Copyright vs Copyleft
๏ Copyright is the most usual method of protection for software
products.
๏ In fact, open source use, copyright law.
๏ Copyright law, by default, do not allow for redistribution of
software.
๏ The only way that redistribution can be done is by granting
specific permission in a licence and that license can force the
redistributor to fulfill certain conditions. This is how open source
licenses work.
License
What is a license ?
๏ Grants permission to use a copyrighted work
๏ Can grant any or all of the rights associated with copyright
๏ Can impose other restrictions, such as type or place or usage, or
duration of the license
๏ Does not transfer ownership of the copyright
๏ The license is what determines whether software is open source.
๏ The license must be approved by the Open Source Initiative
(ww.opensource.org)
๏ All approved licenses meet their Open Source Definition.
Some License
๏ The following OSI-approved licenses are popular, widely used,
or have strong communities
✓ Apache License 2.0
✓ Berkeley Software Distribution (BSD)
✓ GNU General Public License (GPL)
✓ GNU Library or "Lesser" General Public License (LGPL)
✓ MIT License
✓ Mozilla Public License 2.0 (MPL)
✓ Common Development and Distribution License (CDDL)
✓ Eclipse Public License (EPL)
Apache License
๏ Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are
met:
✓ Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
✓ Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.
✓ The end-user documentation included with the redistribution, if any,
must include the following acknowledgment:
"This product includes software developed by the Apache Software
Foundation (http://www.apache.org/)."
Apache License
๏ Public Domain:
✓ A public-domain program is one upon which the author has
deliberately surrendered his copyright rights.
✓ It can't really be said to come with a license; it's your personal
property to use as you see fit.
✓ Because you can treat it as your personal property, you can do
what you want with a public-domain program.
✓ You can even re-license a public-domain program, removing
that version from the public domain, or you can remove the
author's name and treat it as your own work .
MIT License
๏ Massachusetts Institute of Technology (MIT)
๏ As a permissive license, it puts only very limited restriction on
reuse and has, therefore, an excellent license compatibility.
๏ The MIT license permits reuse within proprietary software
provided that all copies of the licensed software include a copy of
the MIT License terms and the copyright notice
๏ Notable projects that use one of the versions of the MIT License
include Ruby on Rails, Node.js, jQuery, and the X Window
System.
Top 20 licenses
Rank Open Source License %
1 MIT License 38%
2 GNU General Public License (GPL 2.0) 14%
3 Apache License 2.0 13%
4 ISC License (Internet Software/System Consortium) 10%
5 GNU General Public License (GNU) 3.0 6%
Linux
๏ A Linux distribution has thousands of software Free!
๏ Linux is a complete, stable and reliable operating system
๏ Linux is powerful
๏ Linux has a complete development environment
๏ Linux is an ideal environment for servers
๏ It is easily upgradable
๏ It has lots of documentation
๏ More than 90% of current Linux source code is written by other
developers.
๏ Even Microsoft Contributes to Linux Kernel Development
Linux
ank You !!
😎
Th
!