PPT-unit 1 303105103.pdf
Document Details
Tags
Full Transcript
Open Source Software Aparajita Biswal, Assistant Professor Computer Science and Engineering Department CHAPTER-1 Introduction to Open Source Software Why is this unit required? To understand importance about Open-Source Software To increase the efficiency of developers by...
Open Source Software Aparajita Biswal, Assistant Professor Computer Science and Engineering Department CHAPTER-1 Introduction to Open Source Software Why is this unit required? To understand importance about Open-Source Software To increase the efficiency of developers by having proper knowledge. To get better result by having fundamental knowledge about need and standards of Open- Source Software. To understand importance of Open Community in world of developing nation. To know about objectives for Open Software. What is Open-Source Software. Open-source indicate to those software whose source code is available to any one and every one. Mean it is publically available. If there is a licensed then it is also in that way that allow users modify the software easily. That means one can view, can modify, can distribute, can also improve the code with the limits of specific terms and conditions of the open-source license. Benefits and characteristics of open source software. Transparency: Culture of openness make new community. Every one have access of code that allows transparency. So whether we are creating a software or solving a problem then every one has access to get Information about doing best work. Accessibility: Open source software is available to all, any one can download it and can use it. Cont… Collaboration: The open-source community allow all developers from all around the world to contribute in the improvement and expansion of the software. Stability and Reliability: In the Open source there is large count of developers are engaged for review the code and testing. So there is much rapid bug fixes and updates of security. Cont… Cost-Effectiveness: Generally open source software are free to use. So it is very cost effective for businesses, organization as well as for individuals. Customization: Use can modify the code as per their need, can fix bug and can add new features. Transparency: Having a open community or open culture inspire trust in each other. They all work together and share all messages. In this all user have access to code, which gives transparency and allow verification of functionalities. Need Of open source Software Many Critical needs are fulfilled by open source software. And it also give many benefits to everyone. There are some key constrain that why we need OSS. Continue innovations: The openness nature of open source encourage developers for new innovations. The open source community share their idea with the each other. They try to make new features. And this all activities leads to new achievement and advancement in the software. Cont… Cost effective: In general open source software are free to use. That software are available to everyone. So this can benefits to the individual and organization from the developing nations as well as from where there as no sufficient budgets. This will allow everyone to use high-quality software. Security and Transparency: With having transparent nature of open source allow users to inspect the code for the security issue and verify that the given software is working as they claimed. The large amount of developers check the code often results in quick identification of security issues. Cont… Education Value: As you all know open source software is available to everyone. This gives very good learning opportunity to students as well developers. Students can learn how to code, can practice and can know how large-scale software are managed. Customization and Flexibility: Open source have customized nature that give everyone access to modify their code by their specific need. So for that no one have to depend on vendor's decisions as in proprietary software. Cont… Large community and support system: In open source software there many active developers at every where so we can call them active communities. So from them user can take guidance and users will be supported by them. They will tem in solving problem and user can learn from the experienced person. Legal Compliance and Licensing: Clear terms and conditions are along with the License of open source software. It will be easy for the person as well organization to understand the condition of using, sharing software Cont… As technology continues to play a significant role in society, open-source software remains a vital component of the digital landscape, driving innovation, democratizing access to technology, and empowering users worldwide. As we all know technology serves important role in todays world. So Open software will be the best components in this digital world. This will lead the new innovations and it will also empowering users across the world. Principles of OSS: The foundational values and the guidelines that make sure about development, usage and distribution, are the principle of open source software. These principle will ensure the spirit of open culture and open community. The main principle of OSS is peer production. That means products with source code, blueprints and documentation which are freely available to all. The open source movement is a big response to the proprietary software. Cont… Author’s code remain same : original source code will be unaltered , that’s integrity No discrimination License not restrict License must be Neutral : accessible to all technology not for one technology Free redistribution Access to code Derived Work : allow user to modify code and share that one others. Cont… These principle are already embedded in open source licenses like the GNU General Public License (GPL), the MIT License, or the Apache License, form the foundation of the open-source movement. Open Source Software Standards Open-source standards are generally not a topic of discussing but it play very significant role in very organizations and technologies. Open source standards make reference to protocol, technical specifications, data structures and formats with no restrictions. These standards promote interoperability, collaboration, and innovation in a particular domain. Interoperability, collaboration and innovation are promoted by the standards. Here we include some standards of the open source. Cont… Internet protocol : Protocols are Open source standards those will decide the way of transferring and exchange the information over the network. This will also make sure seamless communication between diff devices. Protocols like tcp/ip, http, dns Genome Variant Format (GVF): Gvf is another open source standard in the field of genomics for enabling the exchange of genetic information and for representing the genomic variations among researchers and organization. Cont… DICOM (Digital Imaging and Communications in Medicine : It is also for storing, transmitting, and sharing data related to medicine and also allowing interoperability between diff medical software and devices. Vulkan and OpenGl : These are open-source software for rendering Graphics APIs. It is also enable developers to create graphics- intensive applications. OpenPGP (Pretty Good Privacy): It will provide commonly used framework with a view to protecting important data and ensure the privacy as well. It is widely use for encrypting the mail and for the securing the email communication. Cont… OSM (Open street Map) : This project will provide free available and editable geographic data. It will give permission to use this data in various application. Open Id Connect : This facility will provide users security of authentication of web applications. It will allow user to login rom various website with their existing credential without sharing sensitive information. Cont… Open Neural Network Exchange (ONNX): It is use to provide machine learning model and deep learning frameworks. Standards of open-source software are essential for avoid vendor lock-in, encourage developers or innovation in various fields. They allow(organization, developers, community) all to work together, build a common foundation and share knowledge with each-other. Requirements : Open source that doesn’t mean source code are available to all.for that we have fulfil all the requirements by various open source initiatives. To meet the requirements of the OSS, a software must fulfil the given criteria. 1. Availability of Source Code: 2. Free Redistribution: 3. Source code integrity : 4. No Discrimination : 5. Distribution of License : 6. License must not be specific product : 7. License must be technology neutral : Requirements : The maintenance of open-source software's freedom of access, transparency, and modification is made possible by observing these specifications. It encourages teamwork, creativity, and community-driven development, allowing a wide spectrum of individuals to make a positive impact on the project's outcome. OSS Success The IT sector and society at large have been greatly impacted by open-source software's phenomenal success. Open-source software's popularity is largely due to a number of important aspects, such as: Wide Adoption: A number of well-known and frequently used software projects, including the Apache web server, Mozilla Firefox, and the Linux operating system, are open source. Because of its widespread use, open-source software is now a popular alternative for both developers and companies. Innovation: Since the source code is available, programmers are free to experiment, add new features, and modify the software to suit certain requirements. This has caused the open-source community to experience an ongoing cycle of innovation. Cont… Lower Cost: Since open-source software is frequently free to use, it lowers the costs associated with obtaining high-quality tools and solutions for people and businesses. Open-source software is a desirable alternative for companies of all sizes due to its affordability. Community Collaboration: An enthusiastic and varied developer community is essential to the success of open-source projects. Rapid development, problem fixes, and feature enhancements are made possible by this collaborative method, which attracts many volunteers from all over the world. Educational Value: Open-source software offers developers and students a great way to learn about real-world coding and development techniques. Cont… Quality and Reliability: Potential problems and errors are frequently found and promptly fixed when there are several eyes reviewing the source code. As a result, software is created that is strong, stable, and reliable and gains from ongoing advancements. Transparency and Security: Due to open-source software's transparency, users can examine the code to check for any potential security holes and to ensure that no harmful code is included. Increased security knowledge increases user and organizational trust. Customizability: Because open-source software is flexible, users can tweak and adapt the code to meet certain demands and specifications. For companies looking for specialized solutions, this flexibility is very valuable. Cont… Supportive Ecosystem: Open-source projects frequently have dynamic and active communities that provide forums for users to exchange information and seek assistance as well as support, documentation, and other resources. The myriad apps, libraries, and tools utilized across all industries and sectors are proof of the success of open-source software. Operating systems, web servers, content management systems, databases, machine learning frameworks, and other areas are all affected by it. Free Software Here are a few well-known instances of free open-source software from different categories: Operating Systems: Linux distributions (Ubuntu, Fedora, Debian, CentOS, etc.) Web Browsers: Mozilla Firefox Chromium (the open-source project behind Google Chrome) Office Suites: LibreOffice Apache OpenOffice Media Players: VLC media player Audacity (audio editor) Cont… Graphics and Image Editing: GIMP (GNU Image Manipulation Program) Inkscape (vector graphics editor) Programming Languages and Tools: Python Java (OpenJDK) Git (version control system) Content Management Systems (CMS): WordPress Joomla Drupal Virtualization: VirtualBox QEMU Licensing Typically, the use, modification, and distribution of the software's source code are all permitted by the licensing conditions that apply to the distribution of open- source software. MIT License Apache License BSD License GPL License Mozilla Public License (MPL) Creative Commons (CC) Licenses GNU License Free vs proprietary software Based on their distribution, use, and licensing strategies, free and proprietary software can be divided into two different categories. Free software vs opensource software Public Domain: A work of art, a book, a piece of music, software, or any other intellectual creation with copyright or intellectual property rights that have lapsed or been waived is said to be in the "public domain" or to have this legal status. When a work is in the public domain, it means that copyright protection is no longer present and that anybody is allowed to use, edit, distribute, and adapt it without asking for permission or risking legal repercussions. 1. Copyright protection expiration 2. Dedication to the Public Domain 3. Failure to Meet Copyright standards 4. Government Works History of Free software : The evolution of computing and the ideas of user freedom are entwined with the history of free software. Some significant dates in the development of free software are listed below: 1. 1950s - 1960s: Early Computing and User Collaboration 2. 1969: UNIX and the Birth of Open Source 3. 1970s - 1980s: The Rise of Proprietary Software 4. 1983: The GNU Project 5. 1985: GNU General Public License (GPL) 6. Early 1990s: Linux and Open Source Movement 7. Late 1990s: Open Source Initiative (OSI) Cont… 8. 2000s - Present: Growth and Proliferation 9. Advocacy and Adoption Use of open source software Due to its many benefits, open-source software has been widely adopted and used across multiple industries. Here are a few typical applications and advantages of open-source software: ❑ Operating Systems ❑ Development Tools and Languages ❑ Web Servers and Applications ❑ Office Suites and Productivity Tools ❑ Graphics and design ❑ Database management systems ❑ Networking and Security FOSS does not mean no cost You are entirely correct, and I apologize for any misunderstanding. It is true that "FOSS" (Free and Open-Source Software) does not always imply "no cost." In the context of FOSS, the word "free" alludes to the idea of freedom rather than necessarily having a financial cost. When referring to software, the term "free" denotes that users have the following fundamental freedoms: 1. The ability to use the program however you choose. 2. The ability to read, analyse, and edit the program's source code. 3. The ability to charge a fee or distribute copies for free. 4. The ability to distribute software that has been modified. History of BSD: Berkeley Software Distribution, which has a long history dating to the early days of UNIX, has been crucial to the advancement of operating systems. Here is a quick synopsis of BSD's history: UNIX's origins: Ken Thompson, Dennis Ritchie, and others created UNIX at Bell Labs in the late 1960s and early 1970s. In academic and research settings, it became a well-liked operating system. UC Berkeley's Involvement: Bill Joy, a graduate student at UC Berkeley (UCB), made substantial contributions to the creation of UNIX at UCB in the late 1970s. The "C Shell" (csh) and the "vi" text editor are just two of the many additional features that he added. Cont… BSD Releases: The first official BSD version, also referred to as 1BSD, was made available by UCB in 1977. Later versions, such 2BSD and 3BSD, came after. Net/1 and Net/2: In 1989, UCB published 4.3BSD (Net/1), which had important networking advancements. Later BSD versions used this version as their starting point. Following the settlement, the BSD source was forked, leading to the creation of other BSD-based operating systems, including FreeBSD (1993), NetBSD (1993), and OpenBSD (1995). With their individual focuses and objectives, these projects each continued to improve and develop the BSD source. Cont… Ongoing Development and Modernization: The many BSD variations have continuously changed and adapted over time to contemporary computing settings. They increased performance, added security measures, and added compatibility for new hardware architectures. Impact on Contemporary Operating Systems: The BSD operating systems have had a major impact on the evolution of contemporary operating systems. Other operating systems, such as Linux, have included many of the networking, security, and performance features featured in BSD. The free software Foundation and the GNU Project Free Software Foundation (FSF): Richard Stallman established the Free Software Foundation (FSF) as a non-profit organization in 1985. The use, creation, and distribution of free software are the FSF's main goals. According to the FSF, "free software" is software that upholds users' fundamental liberties as outlined by the "Four Freedoms": ❑ The freedom to run the program for any purpose. ❑ The freedom to study and modify the program's source code. ❑ The freedom to redistribute copies, either for free or for a fee. ❑ The freedom to distribute modified versions of the software. The FSF is a vocal supporter of these rights and aims to spread knowledge about the value of user choice, community cooperation, and moral considerations in software design. GNU Project: Richard Stallman launched the GNU Project in 1983. Its objective was to construct a fully functional, free operating system that was akin to Unix, complete with a kernel, utilities, and applications that were all distributed under a free software license. The acronym "GNU" stands for "GNU's Not Unix," denoting that while the GNU Project was influenced by the Unix operating system, it was not a precise clone of Unix. By creating a complementary free software ecosystem, Stallman and the GNU Project aimed to provide users with an alternative to proprietary software. GNU Project: With the exception of the kernel, the GNU Project successfully created the majority of an entire operating system's components. The GNU/Linux operating system, also known as Linux, was developed in 1991 by Linus Torvalds using the Linux kernel and GNU tools. Legacy and Impact: The GNU Project and the Free Software Foundation have contributed significantly to the advancement of the free software and open- source development ideologies. Beyond only software, their influence affects other aspects of digital freedom and promotes a digital age ethos of openness, cooperation, and user empowerment. References https://www.copyrightlaws.com/what-is-the-public-domain/ https://vsoch.github.io/ https://www.gnu.org/ https://www.npmjs.com/ https://opensource.org/ https://en.wikipedia.org/wiki/Public_domain https://www.copyrightlaws.com/what-is-the-public- domain/ https://sourceforge.net/ https://www.apache.org/ www.paruluniversity.ac.in