100% found this document useful (2 votes)
2K views103 pages

Open Source Technologies Syllabus: Unit - I

Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
100% found this document useful (2 votes)
2K views103 pages

Open Source Technologies Syllabus: Unit - I

Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 103

Open Source Technologies

Syllabus

Unit - I
Introduction to Open-Source: Open Source, Need and Principles of OSS, Open-Source Standards, Requirements for
Software, OSS success, Free Software, Examples, Licensing, Free Vs. Proprietary Software, Free Software Vs. Open-Source
Software, Public Domain. History of free software, Proprietary Vs Open-Source Licensing Model, use of Open
Source Software, FOSS does not mean no cost. History: BSD, The Free Software Foundation and the GNU Project, Shared
software, Shared source.

Open-Source Principles and Methodology: Open-Source History, Open-Source Initiatives, Open Standards Principles,
Methodologies, Philosophy, Software freedom, Open-Source Software Development, Licenses, Copyright vs. Copyleft,
Patents, Zero marginal cost, Income-generation Opportunities, Internationalization.

Licensing: What Is A License, How to create your own Licenses, Important FOSS Licenses (Apache, BSD, PL, LGPL), copyrights
and copy lefts, Patent.
Open Source Technologies
Syllabus

Unit - II

Open-Source projects: Starting and maintaining own Open-Source Project, Open-Source Hardware, Open-Source Design,
Open-source Teaching, Open-source media.

Collaboration: Community and Communication, Contributing to Open Source Projects Introduction to GitHub, interacting
with the community on GitHub, Communication and etiquette, testing open-source code, reporting issues, contributing code.
Introduction to Wikipedia, contributing to Wikipedia or contributing to any prominent open-source project of students choice.

Open-Source Ethics and Social Impact: Open source vs. closed source, Open-source Government, Ethics of Open-source,
Social and Financial impacts of open-source technology, Shared software, Shared source, Open Source as a Business Strategy
Open Source Technologies
Syllabus

Unit – III

Understanding Open-Source Ecosystem: Open-Source Operating Systems: GNU/Linux, Android, Free BSD,
Open Solaris. Open-Source Hardware, Virtualization Technologies, Containerization Technologies: Docker,
Development tools, IDEs, Debuggers, Programming languages, LAMP, Open-Source Database technologies

Case Studies: Example Projects: Apache Web server, BSD, GNU/Linux, Android, Mozilla (Firefox), Wikipedia,
Drupal, WordPress, Git, GCC, GDB, GitHub, Open Office, LibreOffice

Study: Understanding the developmental models, licensing, mode of funding, commercial/non-commercial


use.
Open Source Technologies
Syllabus

Define open source

The term open source refers to software whose source code — the medium in which programmers create
and modify software — is freely available on the Internet; by contrast, the source code for proprietary
commercial software is usually a closely guarded secret.

The most well-known example of open-source software is the Linux operating system, but there are open-
source software products available for every conceivable purpose.

Open-source software is distributed under a variety of licensing terms, but almost all have two things in
common: the software can be used without paying a license fee, and anyone can modify the software to add
capabilities not envisaged by its originators
Open Source Technologies

Need and Principles of OSS

• Transparency, Participation and Collaboration are the Principles of Open-source Software

• Blueprints, code and documentations are freely available to the user

• Better Quality

• Higher reliability

• More flexibility

• Low cost
Open Source Technologies
What are open standards?

An open standard is a standard that is freely available for adoption, implementation


and updates.
A few famous examples of open standards are XML, SQL and HTML.

Businesses within an industry share open standards because this allows them to bring
huge value to both themselves and to customers. Standards are often jointly managed
by a foundation of stakeholders.

There are typically rules about what kind of adjustments or updates users can make,
to ensure that the standard maintains interoperability and quality.
Open Source Technologies

The Free Software Foundation (FSF) is a nonprofit with a worldwide mission to


promote computer user freedom.

Free software means that the users have the freedom to run, edit, contribute to, and
share the software.

Thus, free software is a matter of liberty, not price. We have been defending the
rights of all software users for the past 35 years.
Open Source Technologies

Requirements for software

● No intentional secrets
● Availability
● patents
● No Agreements
Open Source Technologies
Free software
free software is a software that gives the freedom to
the user to run the software for a specific purpose like study or make any
changes.

Free software developed by the computer programmers or by any corporations for a


commercial or profit activity.
According to Stallman says “software is free software if people who receive a copy of
software have following freedom -
freedom 0 - Run the Program for any reason
freedom 1 - study how program work
freedom 2 redistribute and make copies study how program work
freedom 3 To improve the program and release it to public
Open Source Technologies
Licensing

An open-source license is a type of license for computer software and other products
that allows the source code, blueprint or design to be used, modified and/or shared under
defined terms and conditions. This allows end users and commercial companies to review
and modify the source code, blueprint or design for their own customization, curiosity or
troubleshooting needs. Open-source licensed software is mostly available free of charge,
though this does not necessarily have to be the case.
Open Source Technologies

Open source licenses are licenses that comply with the Open Source Definition —
in brief, they allow software to be freely used, modified, and shared. To be
approved by the Open Source Initiative (also known as the OSI), a license must go
through the Open Source Initiative's license review process.
Open Source Technologies

Popular Licenses
The following OSI-approved licenses are popular, widely used, or have strong
communities:

■ Apache License 2.0


■ BSD 3-Clause "New" or "Revised" license
■ BSD 2-Clause "Simplified" or "FreeBSD" license
■ GNU General Public License (GPL)
■ GNU Library or "Lesser" General Public License (LGPL)
■ MIT license
■ Mozilla Public License 2.0
■ Common Development and Distribution License
■ Eclipse Public License version 2.0
Open Source Technologies

Proprietary vs. Open Source: Key Differences


Proprietary refers to software that is owned by the individual or company who published it. Open source refers to
software that is available for anyone to access or change the code.

Flexibility

Open source offers more flexibility to users, which can accelerate innovation. Proprietary software is less flexible
and often comes with restrictions.

Maintenance

Open source is developed and maintained by a community. Proprietary software is developed and maintained by
the group who published it.

Support

Many people in the business world prefer to use proprietary software instead of open source software. This is due
to the misconception that proprietary software is better supported than open source software.
Open Source Technologies
Open Source Technologies
Open Source Technologies
Open Source Technologies

Examples for Open Source software are as follows: –

1. Android
2. FreeBSD (Berklee Software Distribution)
3. LibreOffice
4. Ubuntu
5. GNOME
6. Firefox
Open Source Technologies

Examples of Proprietary software are as follows: –

1. Windows
2. Microsoft
3. macOS
4. Adobe Photoshop
5. Adobe Flash Player
6. iTunes
Open Source Technologies
Open Source Technologies
Open Source Technologies

1 Open Source Operating Systems


● Learn the following open source operating system of your choice: Linux, Android, FreeBSD, Open
Solaris etc.
● Learn the installation.
● Identify the unique features of these OS.
2 Hands on with LibreOffice
● Learn it from practical view-point
● Give a brief presentation about it to the class
3 Hands on with GIMP Photo Editing Tool
● Learn it from practical view-point
● Give a brief presentation about it to the class
4 Hands on with Shotcut Video Editing Tool
● Learn it from practical view-point
● Give a brief presentation about it to the class
5 Hands on with Blender Graphics and Animation Tool
● Learn it from practical view-point
Open Source Technologies

6 Hands on with Apache Web Server


● Learn it from practical view-point
● Give a brief presentation about it to the class

7 Hands on with WordPress CMS


● Learn it from practical view-point
● Give a brief presentation about it to the class
8 Contributing to Wikipedia:
● Introduction to Wikipedia: operating model, license, how to contribute? Create your user account on Wikipedia
● Identify any topic of your choice and contribute the missing information

9 GitHub
Create and publish your own open source project: Write any simple program using your choice of programming
language.
● Create a repository on GitHub and save versions of your project. You‟ll learn about the staging area, committing your
code, branching, and merging,
● Using GitHub to Collaborate: Get practice using GitHub or other remote repositories to share your changes with
others and collaborate on multi developer projects. You‟ll learn how to make and review a pull request on GitHub.
● Contribute to a Live Project: Students will publish a repository containing their reflections from the course and submit
a pull request.
Open Source Technologies

10 Virtualization: Open Source virtualization technologies:


● Install and configure the following: VirtualBox, Zen, KVM
● Create and use virtual machines
Open Source Technologies

Open Source Operating Systems

● Learn the following open source operating system of your choice: Linux,
Android, FreeBSD, Open Solaris etc.

● Learn the installation.

● Identify the unique features of these OS.


Open Source Technologies

Linux is one of popular version of UNIX operating System. It is open source as its source
code is freely available. It is free to use. Linux was designed considering UNIX compatibility.

Its functionality list is quite similar to that of UNIX.


Open Source Technologies

Following are some of important functions of an operating System.

● Memory Management
● Processor Management
● Device Management
● File Management
● Security
● Control over system performance
● Job accounting
● Error detecting aids
● Coordination between other software and users
Open Source Technologies
Open Source Technologies

Android is a mobile operating system based on a modified version of the Linux kernel and other
open-source software, designed primarily for touchscreen mobile devices

Android is developed by a partnership of developers known as the Open Handset Alliance and
commercially sponsored by Google.

It was disclosed in November 2007, with the first commercial Android device, the HTC Dream,
launched in September 2008.

It is free and open-source software.

Its source code is Android Open Source Project (AOSP), primarily licensed under the Apache
License.

However, most Android devices dispatch with additional proprietary software pre-installed
Open Source Technologies
Open Source Technologies
Open Source Technologies
Open Source Technologies

FreeBSD is a free and open-source UNIX OS that is developed from the


Berkeley Software Distribution (BSD). In 1993, the initial version of FreeBSD
was released.

It was the most famous open-source BSD OS in 2005, and it was responsible
for over three-quarters of all BSD systems installed with a simple and
permissive license. It may not be labeled as a UNIX OS due to legal constraints
while being compatible with UNIX internals and APIs.
Open Source Technologies
Open Source Technologies
Open Source Technologies

What is Solaris Operating System?

Solaris is the UNIX-based operating system. It was initially developed by Sun Microsystems first released in
1992.

It has initially licensed software and must obtain licenses to install it on systems.

In 2010, Oracle acquired sun microsystems, and it was renamed Oracle Solaris.

Oracle discontinues the open-source Solaris. Solaris was written in the C and C++ programming languages.
Solaris has been designed to work with the SPARC and Power PC systems.
Oracle is offering a free 90-day trial version of the software. You would have to buy a license from Oracle to
utilize Solaris as a development platform if you wanted to keep using the software after the free trial period
ended.

Oracle Solaris is considered simple to update cloud installations.

It has been used for legacy apps on the cloud by offering the highest security and performance. Over time,
Oracle has added new capabilities and additions to Solaris, including the service management facility, kernel
zones, and other services.
Open Source Technologies
Features:

● Solaris is known for its scalability. It can handle a large workload and still delivers indisputable performance
advantages for database, Web, and Java technology-based services.
● Solaris systems were known to their availability meaning that these operating systems hardly crashes at
anytime and because of its internet networking oriented design and broad scope of features it makes the job of
adding new features or fixing any problems easy.
● It is built for network computing as it provides optimized network stack and support for advanced network
computing protocols that delivers high-performance networking to most applications.
● Solaris has advanced, unique security capabilities which includes some of the world’s most advanced security
features, such as user rights management, cryptographic Framework and secure by default networking that
allows users to safely deliver new solutions.
● Provides tools to enable seamless interoperability, test new software and efficiently consolidate application
workloads.
Open Source Technologies

Drawbacks:

● Solaris is quite expensive since it’s an enterprise operating system. Also,


Solaris doesn’t provide updates for free.
● Solaris lacks a good graphical user interface support and is not user friendly.
● Hardware support is not nearly as good as many other operating systems.
Open Source Technologies
Open Source Technologies

Defining open standards


open standards give users permission to copy, distribute and use technology freely or at low cost.
The Government only selects open standards for software interoperability, data and document
formats that have:

● collaboration between all interested parties, not just individual suppliers


● a transparent and published decision-making process that is reviewed by subject matter
experts
● a transparent and published feedback and ratification process to ensure quality

Open standards must also be:

● well documented, publicly available and free to use to provide fair access
● mature, unless they are in the context of creating innovative solutions
● supported by the market to demonstrate the independence of platforms, applications and
vendors
Open Source Technologies

● released for use with a royalty free licence which is irrevocable unless there is a breach of
conditions
● compatible with both open source and proprietary licensed solutions

Why you should use open standards


By using the Open Standards Principles for software interoperability, data and document formats, government bodies are
supporting:

● equal access to government IT contracts for open source and proprietary software providers
● improved flexibility and ability when cooperating with other government organisations, citizens and businesses

sustainable cost for government IT projects


Open Source Technologies
In addition, open standards can be used to help:

● avoid vendor lock-in to a specific piece of technology, or supplier


● software interoperability
● reuse of software components built by others
● the sharing of data between services and systems
● reduce the overall cost of your digital service or technology programme
Open Source Technologies

Principles for selecting open standards


The government adopts open standards to use in government IT using the open standards for
government data and technology process. Anyone can suggest an open standard for adoption and
a central open standards secretariat maintains the open standards process.

There are 7 principles for selecting open standards for use in government.

1. Open standards must meet user needs.


2. Open standards must give suppliers equal access to government contracts.
3. Open standards must support flexibility and change.
4. Open standards must support sustainable cost.
5. Select open standards using well-informed decisions.
6. Select open standards using fair and transparent processes.
7. Specify and implement open standards using fair and transparent processes.
Open Source Technologies

Open Source Operating Systems

● Learn the following open source operating system of your choice:


Linux, Android, FreeBSD, Open Solaris etc.
● Learn the installation.
● Identify the unique features of these OS.

https://www.youtube.com/watch?v=x5MhydijWmc
Open Source Technologies
Open Source Technologies
Open Source Technologies
Open Source Technologies
Open Source Technologies
Open Source Technologies
Open Source Technologies
Open Source Technologies
Open Source Technologies
Open Source Technologies
Open Source Technologies
Open Source Technologies
Open Source Technologies
Open Source Technologies
Open Source Technologies
Open Source Technologies
Open Source Technologies
Open Source Technologies
Open Source Technologies
Open Source Technologies
Open Source Technologies
Open Source Technologies
Open Source Technologies
Open Source Technologies
Open Source Technologies
Open Source Technologies
Open Source Technologies
Open Source Technologies
Open Source Technologies
Open Source Technologies
Open Source Technologies
Open Source Technologies
Open Source Technologies
Open Source Technologies
Open Source Technologies
Open Source Technologies
Open Source Technologies
Open Source Technologies
Open Source Technologies
Open Source Technologies
Open Source Technologies
Open Source Technologies
Open Source Technologies
Open Source Technologies
Open Source Technologies
Open Source Technologies
Open Source Technologies
Open Source Technologies
Open Source Technologies
Open Source Technologies
Open Source Technologies
Open Source Technologies
Open Source Technologies
Open Source Technologies
Open Source Technologies
Open Source Technologies
Open Source Technologies

You might also like