0% found this document useful (0 votes)
15 views

Lecture 1

The document discusses open source software development including its history and evolution. It explores concepts like transparency, collaboration, and community which are important aspects of open source. The document also covers the free software movement and differences between free and open source software.

Uploaded by

umairna63
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
15 views

Lecture 1

The document discusses open source software development including its history and evolution. It explores concepts like transparency, collaboration, and community which are important aspects of open source. The document also covers the free software movement and differences between free and open source software.

Uploaded by

umairna63
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 14

Open Source Software

Development
Teacher: Shariq Aziz Butt
Introduction
Unveiling the World of Open Source
Development
An overview of open source development and
its impact on technology.
Exploring the benefits and challenges of open
source projects.
Understanding the community-driven nature
of open source. Embracing the collaborative
spirit of open source development.
Introduction
Open source software development is a
methodology for creating software products,
from the design and development to
distribution.
Under this methodology the author offers
access to the source code.
A brief history about open
source development
The story of open source development started
long before Richard Stallman created the Free
Software movement.
In the 50's and 60's almost all the software that
existed was mostly produced by research
institutes.
Software was not seen as a product.
In those times, computer companies were in the
hardware business; and software was made freely
available to encourage hardware sales.
Continue
The source code was distributed with the
software because users often had to change
the code to fix bugs or add new features to
support hardware issues.
During this time software was developed and
distributed by communities of user groups
and no effort was needed to make it freely
available.
Continue
Things started to change in the early 1970's
when operating systems and compilers began
to grow very fast, with the emergence of
micro-processors.
In the East coast, a programmer at the MIT
Artificial Intelligence Lab launched the GNU
Project and the Free Software Foundation, his
name was Richard Stallman.
Continue
On the West coast, the Computer Science
Research Group (CSRG) of the University of
California at Berkeley were improving the
UNIX system, and started to build lots of
applications which quickly became known as
“BSD UNIX”. With the advent of Usenet, an
Internet user group, programming
communities started to share their software
and contribute to each others' work.
The evolution of the open
source movement
We start recording the evolution of open
source development from the creation in
1986 o
the Free Software Foundation by Richard
Stallman (who likes to use his initials RMS).
Afte
this foundation was established, several
major open source projects were initiated a
shown in Figure 1.1.
Free software VS Open Source

Free software is a matter of liberty, not price


is a philosophical concept that aims to convey the
idea of software that can be used, studied and
modified without any restriction. It does not refer
to price, but liberty.
Open source on the other hand is a movement
which emphasizes on source code of software
being freely available. It also talks about certain
criteria which must exist in the license of
software to make it open source.
Key concepts: transparency,
collaboration, community
Transparency:
◦ In open source software development, transparency
refers to the practice of making the source code of a
software project openly accessible to anyone who
wishes to view it.
◦ Transparency is crucial as it allows developers and users
alike to inspect the code, understand how the software
works, and verify its security and quality.
◦ By providing transparency, open source projects foster
trust within the community, as users can see exactly
what the software does and how it does it, reducing the
likelihood of hidden vulnerabilities or malicious code.
Collaboration
Collaboration is a fundamental aspect of open source
software development, wherein developers from around
the world work together to improve and enhance the
software.
Open source projects often leverage collaboration
techniques such as distributed version control systems
(e.g., Git) to facilitate concurrent development by multiple
contributors.
Collaboration tools like issue tracking platforms (e.g.,
GitHub Issues, Jira) enable developers to coordinate their
efforts, report bugs, suggest enhancements, and discuss
ideas in a structured manner.
Through collaboration, developers pool their expertise,
share best practices, and collectively address challenges,
leading to faster innovation and higher-quality software.
Community
The open source community consists of developers,
users, contributors, and enthusiasts who participate
in and support open source projects.
Community members play a vital role in driving
innovation, sharing knowledge, and sustaining open
source projects over the long term.
The community fosters a culture of inclusivity,
diversity, and mutual respect, welcoming
contributions from individuals with diverse
backgrounds and skill sets.
Ultimately, the strength of the open source
community lies in its collective passion, dedication,
and commitment to advancing the principles of
openness, transparency, and collaboration in software
development.
Open Source Ecosystem

Diving into the diverse ecosystem of open


source projects. Exploring popular version
control systems such as Git and Mercurial.
Understanding the role of repositories and
collaboration platforms like GitHub and
GitLab.

You might also like