2. 2
About me
Skills : Laravel, cakePHP, Codeigniter, Mysql,
Jquery, HTML, css
https://www.facebook.com/nkhl.agrawal
http://in.linkedin.com/pub/nikhil-agrawal/33/318/21b/
https://twitter.com/NikhilAgrawal44
nikhila@mindfiresolutions.com, nikhil_agrawal@live.com
mfsi_nikhila
3. 3
What is Open Source (OS) ?
● Something that can be modified because its design is
publicly accessible.
● Some characteristics of OS are:
– Open exchange
– Participation
– Rapid prototyping
– Meritocracy
– Community
4. 4
What is OS Software (OSS)
● Software whose source code is available for modification
or enhancement by anyone.
● Programmers can use this source code to fix parts that
don't work, can add new features, can use it as a part of
their projects
● Example: LibreOffice, GNU Image Manipulation, Unix,
Android, Apache, PHP, Python, Wordpress CMS, Firefox
OS...and the list goes on
● Term coined by OSI (Open source initiative)
5. 5
Closed source software
● Source code can be modified by person, team, or
organization who created it and maintains exclusive
control over it.
● Also called as a proprietary software.
● Example: Microsoft Word, Adobe Photoshop, Windows
XP, .Net, C#, IIS
6. 6
Why Open Source Software ?
✔ Use OSS ?
✔ Develop OSS ?
7. 7
Why use OSS ?
● More control over the kind of software.
● Some consider it as a more stable/secure/better quality.
● Preferable for Long-terms project (Linux vs. Windows
xp,7)
● Less costly (Ex: Imagine life without no LAMP).
● Quicker software development
● Better learning in OS.
8. 8
Why Develop OSS ?
● Good way to learn from others feedback
● Build a community
● Open exchange of ideas
● Can be used to generate revenue
9. 9
Misconceptions
✗ Free means there is no monetary cost
✗ Open source is free development
✗ Open source means poor quality
✗ Open source has no support
✗ Open source is bad for business
✗ Open source does not generate business revenue
10. 10
How to OS your project ?
● Be proud of your work
● Create a Project Summary Paragraph
– What problem it solves ?
– For whom ?
– What the user needs to take advantage of it ?
● Choose a site to host / share your code publicly
– GitHub, BitBucket, SourceForge, Google Code
● Create an issue tracker
● Start a change log
11. 11
How (cont..)
● Create a forum
● Create a README
– Include Project summary
– Author's information
– URL of project hoisting page and issue tracker
– version information
● Create a documentation
● Include the Licence (Ex: Apache, MPL, GPL)
● Announce it !!
12. 12
Some OS projects
● Android open source project
– http://source.android.com/
● Apache OpenOffice
– http://www.openoffice.org/
● Devcoin
– http://devcoin.org/
● open.NASA
– http://open.nasa.gov/