Many students complete their higher education in college without even
knowing what is open-source and how it can help them in their career.
They just want to develop for some for-profit company and earn some
money. But nowadays Open-Source is becoming a must for every Computer
Following are some of the frequently quesitons asked about Open Source
Software that may help you:
What is Open Source?
In production and development, open source is a philosophy or pragmatic
methodology that promotes free redistribution and access to an end product’s design and implementation details
Open Source Software is the software which source code is available for
free to study, change, improve and at times also to distribute the
Why it is good for students?
Students don’t get see code base of Windows OS or Microsoft Office. They
do not have a clue, how a proper software is developed and coded. They
have written some nifty programs and some small projects each semester,
but what about software that require collaboration of hundreds of
people, 1000 LOC.
Open Source Software gives all of this. They open their code base to be
used and studied. And if someone found they interesting enough to
collaborate, then they can. Anyone can file a bug report, feature code
to most of the Open Source Software(OSS).
When students interact with other developers on that project and write
code with them, they get a picture of how a well polished is written and
shipped, how testing is done. They read other people’s code and come
across different ways of expressions in software world.
Moreover when you write your own software and open source it, after
looking at it, people in community will contact you for business and
jobs. So its a Win-Win.
How to find and contribute to Open Source Software?
There are many well known projects that people will tell you about. But
start with something small, something you can get familiar with in small
time. Here is how you do it simple way (See Note below):
- Go to Github and search for a software in your
favourite programming language.
- Select any project and clone it.
- Use it, explore its code.
- When you are using it, you may find some bug, file it on github. or
- If you have feature in mind that can be implemented in that
software, add that.
- When writing code, try to follow original developer’s style of
- Push it and make a pull request.
- There is more than 95% chance, that concerned developer will contact
in 48 hours.
And you have made your first contribution to Open Source.
Some popular Open Source Projects
- 7-Zip – file archiver
- Blender – 3D graphics editor
- Eclipse – development environment comprising an IDE
- GIMP – graphics editor
- Inkscape – Vector graphics editor for .svg
- Mozilla Firefox – web browser
- Chromium – web browser
- Mozilla Thunderbird – e-mail client
- NASA World Wind – virtual globe, geobrowser
- OpenOffice.org (and the LibreOffice fork) – office suite
- PrestaShop – Electronic commerce platform
- ADempiere – (now Free Software forked from Compiere) an enterprise
- resource planning (ERP) open source software platform for business
- Vue – (Visual Understanding Environment) mind mapping software project of Tufts University
- Android – operating system derived from Linux
- FreeBSD – operating system derived from Unix
- Linux – family of Unix-like operating systems
- OpenIndiana – a free Unix-like operating system
- ReactOS – operating system built on Windows NT architecture
- Haiku – free and open-source operating system compatible with BeOS
- Perl – a general purpose programming language
- PHP – scripting language suited for the web
- Python – general purpose programming language
- Ruby – general purpose programming language
- PHDL – hardware description language used for PC Board Design
- Apache – HTTP web server
- Drupal – content management system
- MediaWiki – wiki server software, the software that runs Wikipedia
- MongoDB – document-oriented, non-relational database
- Moodle – course management system or virtual learning environment
- WordPress – blog software
- TYPO3 – enterprise content management system