Ost Notes (I, II, IV & V)
Ost Notes (I, II, IV & V)
UNIT- I
Introduction – Why Open Source – Open Source –Principles, Standards Requirements, Successes – Free
Software – FOSS – Internet Application Projects
INTRODUCTION:
➢ A software whose source code is freely distributed with a license to study, change and further
distributed to anyone for any purpose is called open-source software (OSS) or open source (OS).
➢ Dedicated programmers improve upon the source code and share the changes within the
community.
➢ OSS is different from proprietary software. In OS, the source code in the software is available to
anyone to examine, evaluate, and adapt.
➢ The OS definition is a bill of rights for the computer user. It defines certain rights that a software
license must grant you to be certified as Open source.
✓ Linux
✓ Apache
✓ BSD
✓ Wikipedia
✓ Mozilla
➢ The right to make copies of the program, and distribute those copies.
➢ The right to have access to the software’s source code, a necessary preliminary before you can
change it.
➢ The right to make improvements to the program.
✓ Security
✓ Affordability
✓ Transparent
✓ Interoperable on multiple platforms
✓ Flexible due to customizations
✓ Localization is possible
The distribution terms of open source software must comply with the following criteria:
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. Deliberately obfuscated source code is not allowed.
Intermediate forms such as the output of a preprocessor or translator are not allowed.
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.
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.
The license must not discriminate against any person or group of persons.
The license must not restrict anyone from making use of the program in a specific field of endeavour.
For example, it may not restrict the program from being used in a business, or from being used for
genetic research.
7. Distribution of License
The rights attached to the program must apply to all to whom the program is redistributed without the
need for execution of an additional license by those parties.
The rights attached to the program must not depend on the program’s being part of a particular software
distribution. If the program is extracted from that distribution and used or distributed within the terms
of the program’s license, all parties to whom the program is redistributed should have the same rights as
those that are granted in conjunction with the original software distribution.
Open source licenses are designed to be technology – neutral, meaning they do not favour any specific
technology stack or platform.
This ensures that open source software can be integrated into a wide range of technological
environments.
The Criteria
To comply with the Open Standards Requirement, an “open standard” must satisfy the following criteria.
If an “open standard” does not meet these criteria, it will be discriminating against open source
developers.
1. No Intentional Secrets: The standard MUST NOT withhold any detail necessary for
interoperable implementation. As flaws are inevitable, the standard MUST define a process
for fixing flaws identified during implementation and interoperability testing and to
incorporate said changes into a revised version or superseding version of the standard to be
released under terms that do not violate the OSR.
2. Availability: The standard MUST be freely and publicly available (e.g., from a stable web
site) under royalty-free terms at reasonable and non-discriminatory cost.
4. No Agreements: There MUST NOT be any requirement for execution of a license agreement,
NDA, grant, click-through, or any other form of paperwork to deploy conforming
implementations of the standard.
➢ “Free software” means software that respects users' freedom and community.
➢ Free software means that the users have the freedom to run, copy, distribute, study, change and
improve the software. Thus, “free software” is a matter of liberty, not price.
➢ Free software is also known as “Software Libre”, “free, libre and open-source software
(FLOSS)”, and “free and open source software (FOSS)”.
➢ Free software is distinct from freeware; freeware is proprietary software made available free of
charge. One can use, but not study, modify or redistribute freeware.
A program is free software if the program's users have the four essential freedoms:
Freedom 1: The freedom to study how the program works, and adapt it to your needs
Freedom 3: The freedom to improve the program, and release your improvements to the public, so
that, the whole community gets benefits.
➢ “Free software” does not mean “non-commercial.” On the contrary, a free program must be
available for commercial use, commercial development, and commercial distribution.
Software plays a significant role in people's daily All software is the same. It has no definite
2.
lives. ethical implications.
Social freedom is correlated with software Ethics should be connected to people, not
3.
freedom. to software.
A value that is more significant than any financial The idea of freedom is not unqualified.
4.
benefit is freedom. Freedom ought to be granted, not forced.
Open source – Initiatives, Principles, Methodologies, Philosophy, Platform, Freedom, OSSD, Licenses –
Copy right, Copy left, Patent, Zero Marginal Technologies, Income generation opportunities,
Internalization
OPEN-SOURCE INITIATIVES:
➢ The Open Source Initiative (OSI) is a non-profit corporation whose goal is to promote the use of
open source software in the commercial world. T
➢ o accomplish this goal, OSI maintains and promotes the Open Source Definition and offers the
OSI Certified Open Source Software Certification Mark and Program.
➢ To be OSI certified, the software must be distributed under a license that guarantees the right to
read, redistribute, modify, and use the software freely.
➢ Open source is a development method for software that harnesses the power of distributed peer
review and transparency of process.
➢ The promise of open source is better quality, higher reliability, more flexibility, lower cost, and an
end to predatory vendor lock-in.
An Open Standard is more than just a specification. The principles behind the standard, and the practice
of offering and operating the standard, are what make the standard Open.
1. Availability
Open Standards are available for all to read and implement. Thus:
1. The best practice is for the standards text and reference implementation to be available for free
download via the Internet.
2. Any software project should be able to afford a copy without undue hardship. The cost should not
far exceed the cost of a college textbook.
3. Licenses attached to the standards documentation must not restrict any party from implementing
the standard using any form of software license.
4. The best practice is for software reference platforms to be licensed in a way that is compatible
with all forms of software licensing, both Free Software (Open Source) and proprietary. However,
see Predatory Practices regarding license restrictions that may be appropriate for a software
reference platform.
Open Standards create a fair, competitive market for implementations of the standard. Thus:
1. They must allow a wide range of implementations, by businesses, academia, and public projects.
2. They must support a range of pricing from very expensive to zero-price.
3. No Royalty
Open Standards are free for all to implement, with no royalty or fee. Certification of compliance by the
standards organization may have a fee. Thus:
4.No Discrimination
Open Standards and the organizations that administer them do not favor one implementor over another
for any reason other than the technical standards compliance of a vendor's implementation. Certification
organizations must provide a path for low and zero-cost implementations to be validated, but may also
provide enhanced certification services. Thus:
1. A standards organization that wishes to support itself through certification branding should
establish a premium track and a low-cost or zero-cost track. Generally, the premium track will
provide a certification lab outside of the vendor's facility to verify a vendor's implementation and
enhanced branding: a certification mark that indicates a greater certainty of verification and
financial support of the standard. The low or zero-cost track would provide self-certification by
the vendor and baseline branding.
5. Extension or Subset
Implementations of Open Standards may be extended, or offered in subset form. However, certification
organizations may decline to certify subset implementations, and may place requirements upon extensions
(see Predatory Practices).
6. Predatory Practices
Open Standards may employ license terms that protect against subversion of the standard by embrace-
and-extend tactics. The license may require the publication of reference information and an license to
create and redistribute software compatible with the extensions. It may not prohibit the implementation
of extensions.
1. The standards organization may wish to apply an agreement similar to the Sun Industry Standards
Source License to the standard documentation and its accompanying reference implementation.
The Sun agreement requires publication of a reference implementation (not the actual commercial
implementation) for any extensions to the standard. This makes it possible for a standards
organization to actively preserve interoperability without stifling innovation.
7. Modularity:
It entails making things available as early as possible. This includes not only the software but also plans
and design. Applying the principle means putting an imperfect version out earlier rather than keeping
something back until it is more polished.
Many open source projects achieve the early and often using a couple of common methods:
• Source code availability
• Milestones builds
• Nightly builds
METHODLOGIES:
We have to build high quality software with finite number of resources with a predicted schedule.
• Engineering software:
2. It stats at system level and passes through analysis, design, coding, testing and
maintenance.
1. Feasibility Study:
The main goal of this phase is to determine whether it would be financially and technically feasible to
develop the software. The feasibility study involves understanding the problem and then determiningthe
various possible strategies to solve the problem. These different identified solutions are analysed based
on their benefits and drawbacks, The best solution is chosen and all the other phases are carried out as per
this solution strategy.
The aim of the requirement analysis and specification phase is to understand the exact requirements of
the customer and document them properly. This phase consists of two different activities.
3.Design:
The goal of this phase is to convert the requirements acquired in the SRS into a format that can be coded
in a programming language. It includes high-level and detailed design as well as the overall software
architecture. A Software Design Document is used to document all of this effort (SDD)
In the coding phase software design is translated into source code using any suitable programming
language. Thus, each designed module is coded. The aim of the unit testing phase is to check whether
each module is working properly or not.
Integration of different modules are undertaken soon after they have been coded and unit tested.
Integration of various modules is carried out incrementally over a number of steps. During each
integration step, previously planned modules are added to the partially integrated system and the resultant
system is tested. Finally, after all the modules have been successfully integrated and tested, the full
working system is obtained and system testing is carried out on this. System testing consists of three
different kinds of testing activities as described below:
6.Maintenance:
Maintenance is the most important phase of a software life cycle. The effort spent on maintenance is
60% of the total effort spent to develop a full software.
▪ Interaction prototype: This is a software prototype that helps how to interact with software system.
▪ Subset function prototype: It provides subset of software functionality.
▪ Existing program: This prototype gives entire functionality of software. Features can be added later
at development stage.
▪ A throwaway prototype: This is may be usable software program, but is not suitable as the final
software, for various reasons such as poor performance, maintainability or overall quality
The objectives are determined jointly with the customer. At the same time, possible alternatives are
discussed and the framework conditions get specified (for example, operating systems, environments, and
programming languages).
Potential risks are identified and evaluated. The alternatives in question are also evaluated. The risks are
recorded, assessed, and then reduced using prototypes, simulations, and analysis software. In this cycle,
several prototypes exist as design templates or functional components.
The prototypes are further expanded and functionalities are added. The actual code is written, tested, and
migrated to a test environment several times until the software can be implemented in a productive
environment.
The next cycle is planned at the end of each cycle. If errors occur, solutions are looked for, and if an
alternative is a better solution, it is preferred in the next cycle
The most important driving force of the spiral model is the risk analysis and assessment. Any risk that
threatens the project should be identified from the beginning. The progress of the project is decisively
dependent on how risks can be eliminated. The project is considered successful only once there are no
risks. The purpose of the cycle is to produce a continuously improving product. The software or
application is constantly refined. The spiral model is incremental, but not necessarily iterative. Iterations
occur only when risks, errors or conflicts threaten the project. Then the product has to go through one
cycle again, called an iteration.
PHILOSOPHY: (Write Points in the Open-Source Introduction)
Open-source software development (OSSD) is the process by which open-source software, or similar
software whose source code is publicly available, is developed by an open-source software project. These
are software products available with its source code under an open-source license to study, change, and
improve its design. Examples of some popular open-source software products are Mozilla Firefox, Google
Chromium, Android, LibreOffice and the VLC media player.
Model:
Open-source software development can be divided into several phases. The phases specified here are
derived from Sharma et al. A diagram displaying the process-data structure of open-source software
development is shown on the right. In this picture, the phases of open-source software development are
displayed, along with the corresponding data elements. This diagram is made using the meta-
modelling and meta-process modelling techniques.
1. An individual who senses the need for a project announces the intent to develop a project in public.
2. A developer working on a limited but working codebase, releases it to the public as the first version
of an open-source program.
Eric Raymond observed in his essay The Cathedral and the Bazaar that announcing the intent for a project
is usually inferior to releasing a working project to the public.
It's a common mistake to start a project when contributing to an existing similar project would be more
effective. To start a successful project, it is very important to investigate what's already there. The process
starts with a choice between the adopting of an existing project, or the starting of a new project. If a new
project is started, the process goes to the Initiation phase. If an existing project is adopted, the process
goes directly to the Execution phase.
1. Communication channels
Developers and users of an open-source project are not all necessarily working on the project in proximity.
They require some electronic means of communications. Email is one of the most common forms of
communication among open-source developers and users. Often, electronic mailing lists are used to make
sure e-mail messages are delivered to all interested parties at once. This ensures that at least one of the
members can reply to it. In order to communicate in real time, many projects use an instant
messaging method such as IRC. Web forums have recently become a common way for users to get help
with problems they encounter when using an open-source product. Wikis have become common as a
communication medium for developers and users.
In OSS development the participants, who are mostly volunteers, are distributed amongst
different geographic regions so there is need for tools to aid participants to collaborate in the
development of source code.
During early 2000s, Concurrent Versions System (CVS) was a prominent example of a source
code collaboration tool being used in OSS projects. CVS helps manage the files and codes of
a project when several people are working on the project at the same time. CVS allows several
people to work on the same file at the same time. This is done by moving the file into the users’
directories and then merging the files when the users are done. CVS also enables one to easily
retrieve a previous version of a file. During mid 2000s, The Subversion revision control
system (SVN) was created to replace CVS. It is quickly gaining ground as an OSS project
version control system.
Many open-source projects are now using distributed revision control systems, which scale
better than centralized repositories such as SVN and CVS. Popular examples are git, used by
the Linux kernel, and Mercurial, used by the Python programming language.
➔ Bug Trackers and Task Lists
Most large-scale projects require a bug tracking system to keep track of the status of various
issues in the development of the project.
3. Testing Tools
Since OSS projects undergo frequent integration, tools that help automate testing during system
integration are used. An example of such tool is Tinderbox. Tinderbox enables participants in an
OSS project to detect errors during system integration. Tinderbox runs a continuous build process
and informs users about the parts of source code that have issues and on which platform(s) these
issues arise.
A debugger is a computer program that is used to debug (and sometimes test or optimize) other
programs. GNU Debugger (GDB) is an example of a debugger used in open-source software
development. This debugger offers remote debugging, what makes it especially applicable to open-
source software development.
A memory leak tool or memory debugger is a programming tool for finding memory
leaks and buffer overflows. A memory leak is a particular kind of unnecessary memory
consumption by a computer program, where the program fails to release memory that is no longer
needed. Examples of memory leak detection tools used by Mozilla are the XPCOM Memory Leak
tools. Validation tools are used to check if pieces of code conform to the specified syntax. An
example of a validation tool is Splint.
4. Package Management
5. Automated Tests
Most open-source software is either command line or alternatively APIs and as such is very easy
to test automatically.
LICENSES:
➢ A license is the permission or right granted to engage in some act without which the act might be
otherwise unlawful.
➢ The term “license” also refers to the document that specifically describes these permissions and
rights.
➢ The license must be automatic, no signature required, however, this argument considers the license
in the body of contract law, which some argue that it should be considered as copyright law, where
there is one precedent for no-signature license.
➢ Open source licenses define the privileges and restrictions a licensor must follow in order to use,
modify or redistribute the open source software.
➢ Open source software includes software with source code in the public domain and software
distributed under an open source license.
➔ Public domain includes works that are not restricted by copyright and can be used, modified,
and distributed without restriction.
➔ This can happen when a copyright has expired or when the creator chooses to give up their
rights to the work.
➔ The main difference between the two is that open-source has a license that sets rules for usage,
while public domain has no restrictions at all.
➔ Both concepts promote sharing and collaboration, but open source provides a more structured
framework for it.
• You have free access to the source code and should be able to build a working version of the
software.
• You can run it without paying anyone.
• You can modify it for your own use.
• You can distribute your modified version. There may be restrictions on how you can do it.
• You can distribute software of your own creation which incorporates the code. Again, there may
be restrictions.
1. If you plan to contribute to an open-source community, the easiest way is to choose the license
used by the community. Doing so the project you contribute to the community would fit in
perfectly since not all licenses are compatible with one another. Also, some communities restrict
the use to only particular licenses. For example, WordPress is released under GPLv2 and that's the
only license you can use if you want to contribute to the WordPress community.
2. If you want to make your code as reusable and shareable as possible, to secure the reciprocity you
should choose GNU GPLv3. This way others can do almost anything they want with the code
apart from distributing closed-source versions.
3. If you want to make it easy and permissive, to let people do with your code whatever they want,
including publishing the derived work as proprietary, you should opt for an MIT license.
1) Apache License:
The Apache license was released by Apache Software Foundation (ASF). As a permissive license, it grants
developers the flexibility to distribute their work under any preferred license, as long as they credit the
initial one and carefully document all modifications made to it. You have the option to keep some of your
materials as a closed source and can obtain licenses that allow you to monetize them or even secure a
patent. Some famous software solutions protected by Apache license are Kubernetes, PDF.js, and Swift.
2) BSD Licenses:
Berkeley Software Distribution (BSD) license grants developers’ similar rights to distribute the work
without source code and under different license terms, but asks to include the copyright notice and license
text in the copy of the software.
There are several BSD license versions with BSD 3-Clause license being the most popular. It contains a
non-endorsement clause that prohibits developers from using the name of the original creators to endorse
their modifications.
3) GPL or GNU:
GNU GPL is one of the first open-source software licenses and is also among the most popular copyleft
ones. It belongs to strong copyleft licenses as it requires users to share any modifications they make to the
software and to make the source code of their modifications available to the public. Even if the GPL code
takes just a small percentage of the new software, the source code of the whole new software has to be
available under the same GPL license.
There are several versions of GPL licenses with differences that make them more or less applicable and
compatible with other licenses. All the details can be found on the GNU website. For example, GIMP and
Bash use this license type.
4) LGPL:
The GNU Lesser General Public License (LGPL) is a copyleft license that is similar to the GPL but allows
users to link the software with another one without requiring them to share the source code of the
proprietary software. As such, it falls somewhere between strong and weak copyleft.
COPYRIGHT:
Why Do We Have Copyright?
➔ Compared to other legal concepts, copyright is a relatively new invention in human history.
➔ While granting exclusive private rights to authors or copyright holders has been considered as
a way of encouraging human creative activity, copyright law also claims recognize the larger
public interest, particularly with respect to education, research and access to information.
➔ Copyright applies to the expression of ideas in different forms, including literary, dramatic,
musical, artistic, and other intellectual works.
➔ The ideas expressed in such works are themselves not copyrightable.
Logo of Copyright:
Scope:
➔ Copyright does not cover ideas or information themselves, only the form or manner in which
they are expressed.
Exclusive Rights:
➔ To produce copies or reproductions of the work and to sell those copies(including typically,
electronic copies)
➔ To import or export the work.
➔ To create derivative works (works that adapt the original work)
➔ To perform or display the work publicly.
➔ To sell or assign these rights to others.
➔ To transmit or display by radio or video.
COPYLEFT:
➔ Copyleft is a play on the word copyright and is the practice of using copyright law to remove
restrictions on distributing copies and modified versions of a work for others and requiring
that the same freedoms be preserved in modified versions.
➔ Copyleft is a form of licensing and may be used to modify copyrights for works such as
computer software, documents, music, and art.
➔ In general, copyright law allows an author to prohibit others from reproducing, adapting, or
distributing copies of the author’s work.
➔ In contrast, an author may, through a copyleft licensing scheme, give every person who
receives a copy of a work permission to reproduce, adapt or distribute the works as long as
same copyleft licensing scheme also binds any resulting copies or adaptations.
➔ A widely used and originating copyleft license is the GNU General Public License.
➔ Copyleft licenses are also known as viral or reciprocal licenses.
What is Copyleft?
➔ It is a general method for making a program or other work free, and requiring all modified and
extended versions of the program to be free as well.
➔ The simplest way to make program free software is to put it in the public domain,
uncopyrighted.
➔ This allows people to share the program and their improvements, if they are so minded. But it
also allows uncooperative people to convert the program into proprietary software.
➔ They can make changes, many or few, and distribute the result as a proprietary product.
➔ People who receive the program in that modified form do not have the freedom that the original
author gave them; the middleman has stripped it away.
Logo of Copyleft:
Applying copyleft:
➔ Common practice for using copyleft is to modify the copying terms for a work with a license.
➔ Any such license typically gives each person possessing a copy of the work the same freedoms
as the author, including:
1. The freedom to use and study the work
2. The freedom to copy and share the work with others,
3. The freedom to modify the work
4. And the freedom to distribute modified and therefore derivative works.
➔ The freedoms do not ensure that a derivative work will be distributed under the same liberal
terms.
➔ In order for the work to be truly copyleft, the license has to ensure that the author of a derived
work can only distribute such works under the same or equivalent license.
Types of copyleft:
➔ Partial copyleft, by contrast, exempts some parts of the work from the copyleft provisions,
permitting distribution of some modifications under terms other than the copyleft license, or
in some other way does not impose all the principles of copylefting on the work.
Share-alike
The "share-alike" condition in some licenses imposes the requirement that any freedom that is granted
regarding the original work must be granted on exactly the same or compatible terms in any derived work.
This implies that any copyleft license is automatically a share-alike license but not the other way around,
as some share-alike licenses include further restrictions such as prohibiting commercial use.
Copyright is the right that enable Whereas Copyleft is a method using which you can
1. you to prevent unauthorized modify the software or documentation and
copying or selling of your work. distribute it back to the open-source community.
In Copyright the work is original On the other hand Copyleft comes with an idea of
2.
and not the copy of other. collaboration.
Copyrights protects you original While Copyleft allows you to make changes to
3.
ideas from others access. other ideas and give them back.
else wants to make its sequel, he commercial operating system. Users are free to
has to buy copyright from you. modify and redistribute the source code but they
are not allowed to resell it.
PATENT:
➢ A patent is a set of exclusive rights granted by a state to an inventor or his assignee for a fixed
period of time in exchange for a disclosure of an invention.
➢ The term “patent” usually refers to a right granted to anyone who invents or discovers any new
and useful process, machine, article of manufacture, or composition or matter, or any new and
useful improvement thereof.
Law:
1. Effects
2. Enforcement
3. Ownership
4. Governing laws
5. Application
6. Economics
7. History
➔ At the heart of the economics of FOSS is the zero marginal cost of goods in a digital
environment.
➔ In this respect, the emergence of FOSS represents a confirmation of classical microeconomic
price theory - that an equilibrium price in a perfect market approximates the marginal cost.
➔ From this perspective, FOSS can be understood as a pioneer in reaching what can be
understood as an evolutionarily stable dynamic Nash equilibrium in truly free market.
➔ Marginal cost is the term used in the science of economics and business to refer to the increase
in total production cost resulting from producing one additional unit of the item.
INCOME-GENERATION OPPORTUNITIES:
While contributing time and effort in developing, enhancing and documenting FOSS does not provide any
direct income, the development of expertise in FOSS provides a broad range of income-generating
opportunities - from generating in-house savings from enhancements to FOSS to consulting opportunities
in installing, training, customizing and the provision of technical support for FOSS installations. In Part
I: The Networked Information Economy of The Wealth of Networks: How Social Production Transforms
Markets and Freedom (Yale University Press, 2006), Yochai Benkler provides an excellent analysis - with
IBM's strategy as a key example - of ways that income and wealth are being generated through open
source and open content strategies.
First it should be noted that the commercial software industry is one of the largest and most important
industries in the world. The rise of the Open-Source movement does not necessarily spell the end of the
commercial software industry. On the contrary, many people argue that commercial software can be
strengthen by the use of open-source techniques. Commercial software is designed to provide a product
worth paying for and most of it is (that's why the industry is so big). Despite its price tag, commercial
software is often far from perfect.
Commercial products will be updated frequently in order to reflect the fluctuating demands of the market
and customer needs. These needs can lead to software practices that rearrange and rewrite the software
too frequently, or release beta versions as commercial endeavours resulting in high rates of bugs in early
versions. Some commercial programs are over designed and written in sloppy code leading to bloated,
slow, running programs. Open Source by contrast is driven by the needs of the end users. The skills of the
coders is in taking personal pride in what they do, not rushing to meet artificially imposed deadlines
(except their own). Thereby their code is often of a superior calibre than that of programmers in the
commercial environment. There is also usually a very extensive degree of feedback as the programmers
test their products within a wide network of people.
Another problem with traditional commercial software is its closed nature. There is usually no or limited
freedom to tamper with the copyrighted product. Also, companies often force users to follow upgrade
paths that they may not wish to follow. Open source software enables the individual to customize the
software to his end needs in all freedom. Another heavily criticised aspect of commercial software is that
customers are frequently locked-in to a product because to keep using data files you are often forced to
continue to use the same program. If you wish to share files with users that have upgraded, you often have
to upgrade yourself or be written off as irrelevant. Since open source software allows competing programs
to share different data file types, there is no reason to be trapped into any one program. If a newer version
has a new file format, then there often are converters that allow users of older versions to keep up their
data files up to date. Another problem with traditional commercial software is its closed nature. There is
usually no or limited freedom to tamper with the copyrighted product. Also, companies often force users
to follow upgrade paths that they may not wish to follow. Open source software enables the individual to
customize the software to his end needs in all freedom. Another heavily criticised aspect of commercial
software is that customers are frequently locked-in to a product because to keep using data files you are
often forced to continue to use the same program. If you wish to share files with users that have upgraded,
you often have to upgrade yourself or be written off as irrelevant. Since open source software allows
competing programs to share different data file types, there is no reason to be trapped into any one
program. If a newer version has a new file format, then there often are converters that allow users of older
versions to keep up their data files up to date.
INTERNATIONALIZATION:
The open nature of Open-Source Software allows for extensive internationalization of software. OS's can
be modified for any language, for example recently a version of Linux was translated into Welsh (spoken
in Wales). While many major commercial projects are provided in multiple languages, it is often too
expensive to translate them into more than 3 or 4 languages. Many FOSS projects are available in 10 or
more languages, as the translation can be done by a programmer who wants the package to be available
in his or her native tongue.
Software localization:
It is a process of translating software user interfaces from one language to another and adapting it to suit
a foreign culture.
Open Source Project –Starting, Maintaining –Open Source – Hardware, Design, Teaching & Media.
To Start a Project:
Project Management:
Version Numbers:
➔ Many new users find the FOSS projects often use strange version numbering systems.
➔ Generally, FOSS projects break their version numbers into 3 pieces:
1. Major version. – it is the first number in the version number; it is rare to see a free software
project have a major version greater than 2.
2. Minor update – it is the second number. A change in the number often signifies a significant
update of the program.
3. Point release – the third number generally indicates a small update to fix a bug, or security
problem. These numbers get very high, often over 30 or 40 overtime. When a software project
is well established most of their updates will come in the form of point releases.
➔ when a software project changes the major version number, this generally indicates a complete re-
write of the software, or at least an extensive over haul.
➢ Open source hard ware refers to computer and electronic hardware that is designed in the same
fashion as free and open source software.
➢ Open source hardware is part of the open source culture that takes the open source ideas to fields
other than software. An example of this is the Computer project.
➢ Some of the impetus for the development of open source hardware was initiated in 2002 through
the Challenge to Silicon Valley issued by Kofi Annan.
➢ Because the nature of hardware is different than software, and because the concept of open source
hardware is relatively new, no exact definition of open source hardware has emerged.
➢ Because hardware has direct variable costs associated with it, no open source software definition
can directly be applied without modification.
➢ Instead, the term open source hardware has primarily been used to reflect the use of free/open
source software with the hardware and the free release of information regarding the hardware,
often including the release of schematics, design, sizes and other information about the hardware.
➢ In anyway, it includes the hardware design and element distribution on the motherboard.
➢ With the rise of reconfigurable logic devices, the sharing of logic designs is also a form of open
source hardware.
➢ Instead of sharing the schematics, HDL code is shared. This is different from free/open software.
HDL descriptions are commonly used to set up SoC systems either in FPGAs or directly in ASIC
designs.
➢ HDL modules, when distributed, are called semiconductor intellectual property cores, or IP cores.
Open design is the application of open source methods to the creation of physical products, machines and
systems.
Definition:
The word “software” refers to both to source code and executables, while the words ‘hardware’ and
‘hardware design’ clearly refer to two different things. Using the word “hardware” as short hand for both
design and physical object is a recipe for confusion.
It refers to a design which can be freely copies, distributed, modified, and manufactured. It does not imply
that the design cannot also be sold, or that any hardware implementation of the design will be free of cost.
Perhaps the easiest way to define it is by looking at what it is not – by looking at current commercial
design practice.
➢ Libre hardware design refers to the same class of design as free hardware design, but tries to
make it clear that the word free refers to freedom, not price.
➢ Open-source hardware refers to hardware for which all the design information is made available
to the general public. Open source hardware may be based on a free hardware design, or the design
on which it is based may be restricted in someway.
➢ Open Hardware is a trademark of the open hardware specification program. It is a limited form
of open source hardware, for which the requirement is that:
➔ Sufficient documentation on the device must be available for a competent systems programmer to
write a device-driver.
➔ Only a limited amount of information about the design need be available; possible not enough, for
example, to attempt a repair.
➢ Free Hardware is a term occasionally used as a synonym for open source hardware.
Business Models:
Open source hardware has a set of business models that include the following:
1. Design distribution: companies can pack sets of designs and sell the distribution. Ex: CD-ROM
2. Design technical support: experts can give support for open designs.
3. Design implementation: companies can implement the designs, sell them and pay royalties to
original designers, according to their release license.
4. Releasing: the release of open designs under the control of GPL- compatible licenses can occur
whenever a silicon implementation is considered commercially.
The open source hardware roadmap can be divided into three main stages as follows:
1. Phase I (Primary)
2. Phase II (Advanced)
3. Phase III (Runtime Configuration)
Open source can help build a high-tech base in these regions due to the following considerations:
1. Open source hardware is an open resource for industrial and academic fields.
2. Lack of high-tech activities and firms.
3. Lack of expertise in the high-tech field.
4. Open source allows interaction with a wide spectrum of experts in high-tech fields all over the
world.
5. HDL designs that address programmable logic device-based implementation platforms can be
affordable, as chip manufacturing is beyond economic capabilities.
6. Open source might help focus the spot light on high-tech talents and qualifications in developing
countries that are hidden due to market constraints.
There are problems that face designers and prevent them from developing open source hardware:
OPEN-SOURCE TEACHING(OST):
➢ OST is a platform that utilizes emerging technologies to facilitate shared learning and the
development of communities.
➢ OST redefines the relationship between learners by eliminating the barriers of time and distance.
➢ OST provides learners with simultaneously real-time and time-independent access to the ideas of
people with varying degrees of experience, expertise, points of view, knowledge and skills.
➢ OST provides new strategies and opportunities for individuals to engage in the shard investigation
of common challenges.
➢ These methods are applied using emerging communication platforms and generally include
components of the following:
➔ Shared communication using an open source web space, available to all users, including the direct
archiving and tracking of individual comments by all users.
➔ An open source induction and user agreement, outlining the fundamental truths for communication
within each shared web space.
➔ Archived record of communication and dialogue, providing a common basis for learning and
discussion among all users, including the direct tracking of files, which are accessed.
➔ The investigation of relevant research, current events, challenges, and case studies related to the
academic, professional, or social challenge.
Delivery of Courses:
An institution, company or individual can set up a delivery system to use any of the material on the website
as they see fit, completely free of charge, subject only to copyleft conditions. How material is delivered;
how much is used or what value is added depends on the purpose the end user has in mind. They can only
charge for the value added and the costs of delivery. Any changes to the original material must be
acknowledged.
Learning Objects:
➢ It is the basic unit that teaches a single idea or skill. It is a collection of just about any type of files
and each file is called an atom. Each atom shows something and they are linked together to produce
an overall multimedia effect.
➢ A learning object can have hyperlinks to other learning objects, data, help files or external sites to
reference other examples and materials.
➢ Each learning object must have a main atom as a starting or entry point and currently this is an
Internet document (.html or .htm)
➢ Initially, the Charter Group will build a Resource Bank of suitable materials to make the site of
sufficient interest to “pump prime” the whole process.
➢ The Open Learning Server has a public area outside the firewall to which everyone is invited to
contribute.
➢ This area contains bulletin boards, news groups, theme conferences, help lines, web links, etc.
➢ The charter group will sift through these areas and are able to promote good material to the
resource bank.
➢ These open areas are also a resource, but only the resource bank is stable and subject to strict
quality control.
➢ The promotion of material is a mark of excellence.
➢ The charter group has a significant task to:
➔ Edit the material
➔ Apply quality control
➔ Ensure that material fits into the index system
➔ Keep control of revisions and version changes.
➢ The open university would sell these materials as a training pack or build it into one or more
courses.
➢ In this case the value added could include:
➔ Tutorials
➔ Readers, guides and other teaching material
➔ Conferences
➔ Assignments
➔ Assessment
➔ Award of qualification
➢ If it is a teaching lab environment, then in this case the value added could be
➔ Tutorials
➔ Assignments
➔ Assessment
➔ Provision of rooms and computer equipment
➔ Award of qualification
➢ Industry or commerce could trailer it to specific training needs. It this case the value added could
be:
➔ Training
➔ Services to other departments or companies
Driving Forces:
➢ Of approbation by peers
➢ Being part of a centre of excellence can make an individual more productive than working done
➢ It provides access to a source of good practice and material
➢ It leads to a work load reduction
➢ It provides a kite mark for courses for Teaching Quality Assessment
➢ They wish to contribute to a self-organizing community that may change the system.
Citation Index:
It is essential to build a prominent ‘citation index’ into the materials index so that recognitions of
contributions is obvious to all. This provides recognition, benefit and further motivation to contributors.
The user can select a set of required learning objects from the resource bank index by viewing the object
directly or by scanning through the Meta Files.
The meta files contain the following data for each object:
➔ Name
➔ Caption describing the ideas or skills to be learned
➔ Previous knowledge required
➔ Level
➔ Learning outcomes
➔ Next suitable objects to study
➔ Locations
➔ Files list
➔ Source
➔ Author(s) name
It is a startup company founded in 2004 by mystery writer, screenwriter and blogger Roger L.Simon, and
Charles Johnson of Little Green Footballs “with the intention of aggregating blogs to increase corporate
advertising and creating our own professional news service”
1. Freely Accessible: Available to stream, or download without a fee. Should be available via direct
download and P2P media, so it is not behind a gateway.
2. Freely available: Permanently available without DRM, or release windows. the end user able to
share the work without restriction.
3. Freely viewable: available in multiple formats, and to be converted freely.
4. Giving source files: source media, such as rushes and raw graphics files should be archived and
available for other creators to work with.
5. Allowing remixing: materials should be licenses explicitly to allow derivative work for at least
non-commercial/artistic purposes. Creative commons and other licenses are available for flexible
copyrighting. Open plus adds more opportunities for participation and involvement in the work
whether as a creator, or as part of what used to be called “the audience”.
6. Reveal the process: allowing access to not only the final source media, but work-in-progress
material and software files, adding another layer of transparency and documentation.
7. Open contribution: adding ways to influence and participate in the creation of the original work
through various types of community/audience involvement.
UNIT V
In open-source software the source code is In proprietary software, the source code is
03. public. protected.
Open-source software can be installed on Proprietary software can not be installed into
04. any computer. any computer without a valid license.
Users do not need to have any authenticated Users need to have a valid and authenticated
05. license to use this software. license to use this software.
It is more flexible and provides more It is not much flexible so there is a very limited
07. freedom which encourages innovation. innovation scope with the restrictions.
Usually Developed and Maintained by non- Usually Developed and Maintained by for-profit
11. profit organizations. entities.
OPEN-SOURCE GOVERNMENT:
➢ Primarily refers to use of open-source software technologies in traditional government
organization and government operations such as voting.
OPEN POLITICS:
➢ It is also known as open-source politics. It’s term used to describe a political process
that uses internet technologies such as blogs, e-mail and polling to provide for a rapid
feedback mechanism between political organization of the open source politics which
relates to the development of public under a set of rules and processes similar to the
open source software movement.
SHARED SOFTWARE:
➢ Shared software is a different term used to describe free software open-source software
and possibly also software that is not formally covered by the definition of either, but
that is in some other way shared rather than owned.
➢ The way to develop and use software more effectively is to share it with others. Sharing
is symmetric. If we share our software, we are sharing my software and that seems to
be twice as powerful as one way reusing.
➢ If we start calling it sharing instead of reusing, it changes the tone of the exposition.
➢ For starters sharing is a much more high-minded, noble and ethical thing than reusing
which sounds more hackneyed and shopworn and it sounds better precisely because it
signifies that there is a reciprocal understanding in order to share, you have an
obligation to contribute as well as consume and your contribution becomes available
for others to build upon increasing value for all.
➢ Investment banks and ventures capitalists raise capital form lots of individual or
institution and let them ownership of companies. Insurance companies let people share
risk. Everybody contributes a premium and most people expect that they want get a
pay-out.
➢ Examples of shared software are:
SHARED SOURCE:
➢ Shared source is Microsoft’s framework for sharing computer program source code
with individuals and organizations.
➢ Microsoft’s shared source initiative includes a spectrum of technologies and licenses.
➢ Most of its offerings are available for download by anyone. For these programs there
are eligibility criteria to be met.
➢ The licenses associated with the offerings range from allowing only viewing of the code
for reference, to allowing it to be modified and redistributed for commercial or non-
commercial purposes.
Benefits Of Shared Source:
➔ Availability of source code for reference when developing complementary systems.
➔ The availability of source code also permits review and auditing from a security
perspective, something which some large corporations and governments are now
mandating.
➔ Some of the shared source licenses share many of the benefits of open-source
licenses.
➔ Other shared source licenses allow the copyright holder to retain much tighter
control over the use of their product than open-source licenses, which generally
include the voluntary abdication of many of the author’s rights.
Notable Shared Source Programs