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

Unit 2

Open source software development involves making software code freely available to download, modify, and distribute. The development process includes source code hosting, collaborative development, version control, testing, and release management. Maintaining open source projects requires documentation, organizing issues, rewarding contributors, and building a community. Open source hardware and design follow similar principles but apply them to physical devices and improving design processes. Learning management systems help track student progress in online courses but some free and open source options exist for smaller organizations.

Uploaded by

Pratham p salvi
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
51 views

Unit 2

Open source software development involves making software code freely available to download, modify, and distribute. The development process includes source code hosting, collaborative development, version control, testing, and release management. Maintaining open source projects requires documentation, organizing issues, rewarding contributors, and building a community. Open source hardware and design follow similar principles but apply them to physical devices and improving design processes. Learning management systems help track student progress in online courses but some free and open source options exist for smaller organizations.

Uploaded by

Pratham p salvi
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 7

UNIT 2

Open Source Software Development

Open Source Software Development is the process of developing an open source software that can
download and install easily for free. It also gives the full access user source code, which can be
modified inspect and enhance accordingly.

The development process of an open source project involves the following key steps:

1. Initiation: The project starts with an idea or need for a software solution.

2. Planning: Project leaders create a roadmap, define the technology stack, and set goals.

3. Source Code Hosting: The code is hosted on platforms like GitHub for access by contributors.

4. Development: Developers collaborate worldwide, writing, testing, and refining code.

5. Version Control: Git tracks code changes, revisions, and conflicts.

6. Documentation: Project guides and README files help users and contributors.

7. Testing: Testers and QA ensure bug-free, high-quality software.

8. Peer Review: Collaboration and review enhance code quality.

9. Release Management: New versions are planned and documented.

10. Distribution: Software is distributed via various platforms.


Open Source Project Maintenance:

Maintaining an open-source software project is a leadership role with both technical and non-
technical responsibilities.

By following ways you can maintain your open source project:

Documentation:

 Create a detailed README.md file: Provide an overview of your project's purpose, features,
and installation instructions. Explain what problem your project solves.

 CONTRIBUTING.md: Include guidelines for contributors. Clarify how they can report issues,
suggest improvements, and submit code changes.

 Licensing: Choose an open-source license that suits your project's goals

Organize Issue:

 Use a platform like GitHub to manage issues: This helps you track bugs, feature requests, and
questions from users.
 Categorize and prioritize issues: Label issues appropriately to distinguish between bug
reports, feature requests, and general questions. Prioritize them based on importance and
urgency.

Making Contributing Rewarding:

 Create an inviting CONTRIBUTING.md file Include guidelines for contributors. Clarify how
they can report issues, suggest improvements, and submit code changes.Make it easy for
newcomers to understand the contribution process.

 Recognition: Publicly acknowledge and thank contributors for their efforts. Maintain a list of
contributors to give credit where it's due.

Build your own community:

 Communication: Maintain a mailing list or newsletter to keep users informed about project
developments.
 Collaboration: Collaborate with related projects and build a network within the open-source
community.

Open Source Hardware:

Open-source hardware (OSHW) is similar to open-source software, but it related to computer and
electronic hardware. It means that the design of physical things, like machines and devices, is shared
publicly, allowing anyone to make, modify, distribute, and use them.

Principles

• Use common components


• Use standard layouts and connectors

• Provide clear instructions

• Distribute widely (especially internationally)

• Introduce in person (workshops are good)

• Grow your community

• Meet a real need

• Help others make money

• Build a brand

• Keep innovating

Forms of Open-Source Hardware:

1. Computers: Open-source hardware is used to manufacture computer and laptop


components, especially for privacy and security-focused devices.

2. Electronics: This category is very famous and used almost every devices. Notable companies
in this space include Sparkfun, Adafruit, and Arduino.

3. Mechatronics: Open-source mechatronic products cover mechanical components, machine


tools, vehicles, musical instruments, and medical equipment. Examples include 3D printers
and the laser cutter.

4. Others: Open-source hardware is also found in construction and textile industries, although
to a lesser extent.

Open Source Hardware Platform Technologies:

Open Source Hardware Platform Technologies cover a wide range of collaborative and open projects,
including:

1. Robotic Platforms:

 Like OpenROV, creating open-source underwater unmanned submarines for tasks


such as underwater photography, plastic trash detection, fisheries monitoring, and
education.

2. Prototyping Platforms:

 Examples include Arduino for electronic projects and BeagleBone for more advanced
Linux-based hardware development.

3. Open Source Hardware for Education:

 Educational platforms like Raspberry Pi, designed for teaching programming and
computer science, and educational robotics kits such as LEGO Mindstorms.
Open Source Design:

Open Source Design is an important movement that seeks to enhance the open-source ecosystem by
focusing on improving the design processes, user experience, and interface design for open-source
software and, increasingly, hardware. The movement has several goals to achieve this, including:

1. Opening Up the Design Process:

 Identify and promote existing open design processes in projects like Mozilla and
Canonical.

2. Making Designers Contributors:

 Organize workshops and events, such as Git workshops and hackathons, to


encourage designers to contribute to open source projects.

 Collaborate with design students at universities to introduce them to open source


design.

3. Fostering Communication Between Designers and Developers:

 Create an open job board to help designers find open source projects in need of
design contributions.

 Develop guidelines on how to write documentation, issues, and comments that non-
technical contributors, including designers, can work with effectively.

 Establish guidelines on how to present designs to a community and receive


constructive feedback.

4. Connecting the Open Source Design Community:

 Attend conferences of other open source projects to collaborate and share ideas.

 Seek support from open-source companies to promote and advance the open source
design movement.

5. Securing Funding for Open Source Design:

 Reach out to foundations that already fund open source projects and inquire about
support.

 Explore partnerships with design agencies that may be interested in open source
initiatives.

6. Showcasing Existing Open Source Design Material:

 Display and share open source design resources, such as icons, fonts, templates, and
workflows.

7. Improving the Design of Open Source Projects:

 Conduct user experience (UX) reviews and offer consulting services to enhance the
design of open source projects, making them more user-friendly and efficient.
Open Source Teaching Platform OR What is LMS:

The elearning programmes are crucial for both educational institutes and business . They are mostly
dependent on learning management system to create track and manage the record of every student
what they are learning. for very few small business and institution that have fewer
number of employees for that open source Learning and management system is user friendly
option. User can review customers and improve the software according to its business

Features:

 Intregated virtual classroom


 Techincal support
 Course management
 Detail of every individuals
 Data storage
 Progress tracking and reporting
 Multi language support

What is the effect of the Learning Management system on students and corporate training?

What are the result of not having an LMS platform?


 not getting progress of each individuals
 classses misses due to several reason
 cant revise using recorded lectures
 course is not upto date
 does not have multi language support

Free and open source learning Management software:

Moodle,TalentLMS,Forma LMS,ILIAS,Opigno,OpenOLAT,SAKAI

Linux Project Case Study

Introduction: Linux, created by Linus Torvalds in 1991, has evolved into the world's most popular
open-source operating system. It has been embraced by individuals, corporations, and industries
globally due to its collaborative development, cost-effectiveness, and adaptability.

The Challenge: In the 1970s, the UNIX operating system, initially free, saw success but became
fragmented as vendors tied it to proprietary systems. By the 1990s, the open-source movement
gained momentum, and Linux emerged as a viable alternative, particularly in web hosting, network
applications, and simple databases.

The Approach: Linux gained traction as web usage surged, offering scalability and cost-effectiveness
for web hosting. Three keys to its success were:

1. Decentralized Development and Shared R&D: Developers contributed regardless of any


payment, enabling independent solutions without coordination bottlenecks.

2. Accessibility and User Innovation: Generally User has to pay for the software, and was often
not given access to the underlying code. Changes or requested features were either paid for,
or users had to wait and hope that their feature (or bug fix) would be granted in the next
release.

In Linux (and open-source software in general), the software and the means to fix or update
software became accessible to anyone. Users could provide relevant feedback directly to
the development process. Users could now freely use open- source software to solve their
own problems.

3. Practical Problem Solving: Linux evolved to address specific needs, becoming a versatile
platform for various devices and applications.

The Results: Linux's success extended to diverse industries:

1. Financial Markets: Major exchanges like NYSE run on Linux, handling millions of transactions
per second.

2. Cloud Computing: Over 75% of cloud-enabled enterprises use Linux as their primary
platform.

3. Smartphones: Linux-based Android shipped on over 1 billion smartphones in 2014.


4. Supercomputing: Linux dominates the supercomputing market, running 99.6% of the top
500 most powerful systems.

5. Embedded Systems: Linux serves industries like automotive, healthcare, IoT, and more.

You might also like