Open Source Software क्या है और इसके फायदे

जब बात Softwares Download करने की आती है तब हम में प्राय सभी लोग Free Softwares की सबसे ज्यादा तलाश करते हैं Internet पर. ऐसे करते वक्त हमें बहुत से Free Software मील भी जाते हैं, लेकिन क्या आप जानते हैं की इन Free Software में ज्यादातर Open Source Software ही होते हैं, जिससे हमें ये आसानी से Free Downlaod करने के लिए मिल जाते हैं।

अब आप सोच रहे होंगे की कोई क्यूँ अपना बनाया गया Software को Freely Download करने के लिए देगा, क्यूँ वो इसके लिए पैसे charge नहीं करते हैं इत्यादि. यदि आपके मन में भी ऐसे सवाल उठ रहे हैं तब आपको यह article ओपन सोर्स सॉफ्टवेयर क्या है और ये कैसे काम करता है जरुर से पढ़ना चाहिए. यहाँ आपको Open Source Softwares से सम्बंधित बहुत सारी जानकरी प्राप्त हो जाएँगी।

वैसे ये Open source software generally free software होते हैं जिन्हें की आप अपने काम में इस्तमाल कर सकते हैं. Open source developers ये जानबुझकर ही इन्हें बनाते हैं, जहाँ पर ये इसकी source code को publicly available करवा देते हैं, ताकि दुसरे लोगों का इससे भला हो सके।

ये इन्हें publish करते एक open source license के साथ – जिसका मतलब की दुसरे developers भी आपके code को देख सकते हैं और इनमें कुछ add भी कर सकते हैं. उदाहरण के लिए, Open Office, Mozilla Firefox, Wikipedia, वहीँ GNU/Linux operating system और इसकी derivative Android, एक ऐसा operating system जो की mobile devices में इस्तमाल होता है।

यदि आप मुक्त स्रोत सॉफ्टवेयर के विषय में और भी जानना चाहते हैं तब आपको इस article को पूरा पढना होगा. मुझे उम्मीद है आपको अंत में बहुत सारा ज्ञान मिलने वाला है. जो शायद आपको Internet में एक जगह में कहीं और नहीं मिले हिंदी में. तो बिना देरी किये चलिए शुरू करते हैं।

अनुक्रम दिखाएँ

ओपन सोर्स सॉफ्टवेयर क्या है

Open source software kya hai hindi

Open source software (OSS) ऐसे software को कहा जाता है जिसकी source code पूरी तरह से viewable और changeable होती है public के द्वारा. ऐसे कहें तो ये open होती है. वहीँ जब source code viewable और changeable नहीं होती है public के द्वारा, तब ऐसे softwares को closed या proprietary सॉफ्टवेर कहा जाता है।

Note Source code उस behind-the-scenes programming हिस्से को कहा जाता है किसी software का जिसे की users usually देख नहीं सकते हैं. Source code में वो सभी instructions और instructions को layout किया जाता है की कैसे software work करते हैं और कैसे software के सभी features काम करते हैं. Source Code का access केवल developers के पास ही होता है.

ये free software में बड़ी ही आसानी से changes और modifications की जा सकती है users’ preference के आधार पर. Users के पास freedom होता है जिससे की वो इसे modify, change, और यहाँ तक की इसकी source code को share भी कर सकते हैं. लेकिन ये सभी चीज़ें एक license agreement के तहत ही होती है एक user या एक particular organization के लिए।

ओपन सोर्स सॉफ्टवेयर लिस्ट

यहाँ आपको सारे लोकप्रिय ओपन सोर्स ऑपरेटिंग सिस्टम लिस्ट के साथ साथ पूरी ओपन सोर्स सॉफ्टवेयर के उदाहरण भी मिलेगा. [source]

BitTorrentBlenderDebian
DrawFreelyDRBD
DrizzleDrupalEthereal
EvergreenFinnixFreeBSD
GentooGit GNOMEGNU
FladoopImageMagicklnkscape
JenkinsJoomlajQuery
KDEKodiLinux
LSBmidPointMilos
MinGWMozilla FirefoxMozilla Thunderbird
MycroftMySQLNetBSD
NmapOpenOtfice.orgOpenStack
OpenStreetMapOpenSUSEOpenWrt
ownCloudPerlphpMyAdmin
pkgsrcPythonQt
ReactOSSeleniumSendmail
SpamAssassinSubversionSugar on a Stick
TorTriSanoUbuntu
VNCWineWireshark
XBMCXFS 

ओपन सोर्स सॉफ्टवेयर के लक्षण

इन Free Softwares की कुछ characteristics भी होती हैं जिन्हें की जानना बहुत जरुरी होता है।

Distribution को freely किया जा सकता है. इसकी Source code पूरी तरह से accessible होती है, वहीँ source code को कोई भी modify भी कर सकता है और साथ में इन modifications को दूसरों को distribute भी किया जा सकता है।

ये open source software ज्यादातर evolve होते हैं via support community के और उनके द्वारा adopt की गयी development strategy के आधार पर. वहीँ इसके बदले में वो software के quality को improve करने में मदद करती हैं और वहीँ इन communities की active participation को भी काफी encourage किया जाता है।

Companies जो की proprietary software को promote करते थे वो अब इन open source software को adopt करने लगे हैं क्यूंकि उनके इतनी ज्यादा features होने के कारण. उदाहरण के लिए, UNIX kernel को सबसे ज्यादा open source projects में इस्तमाल किया जाता है।

ओपन सोर्स सॉफ्टवेयर का अर्थ

मुक्त स्रोत सॉफ्टवेयर (OSS) एक ऐसा software होता है जिसे की distribute किया जाता है source code के साथ, जिसे कोई भी user read or modify कर सकता है।

OSS community generally agree करते हैं उन open-source software को जो की ये following criteria का पालन करते हैं :

  • ये program को freely distribute किया जा सकता हो.
  • Source code को program में include करना होता है.
  • कोई भी इसके source code को modify करने में सक्षम होना चाहिए.
  • वहीँ source code के Modified versions को redistribute भी करना होता है

वहीँ एक open-source software license किसी दुसरे software के operation में interfere नहीं करनी चाहिए।

जहाँ traditional software को distribute किया जाता है एक unchangeable compiled format में, वहीँ open-source software को deliver किया जाता है दोनों compiled और non-compiled formats, जिससे ये open code modification के लिए उपलब्ध होता है।

वहीँ एक traditional software licenses के तहत, ये privilege केवल copyright holders के लिए ही reserved होती हैं।

ओपन सोर्स सॉफ्टवेयर कैसे काम करती है?

एक business user perspective से देखा जाये तब open source software बहुत हद तक एक proprietary software systems के जैसे ही काम करती हैं जो की commercial software firms के द्वारा प्रदान किये जाते हैं।

इसमें जो सबसे बड़ा अंतर होता है वो ये की generally आपको इसमें कुछ भी पैसे pay करने नहीं होते हैं. वहीँ इसमें कुछ और भी differences होते हैं – जैसे की इस open source software को इस्तमाल करने वाले users effectively co-developers होते हैं, वहीँ वो नयी नयी ways भी suggest कर रहे होते हैं इन्हें improve करने के लिए और साथ में bugs को निकलने में भी मदद करते हैं।

इसका मतलब होता है की यदि आप चाहें तो इसे अपने हिसाब से modify भी कर सकते हैं अपने जरूरतों के हिसाब से, इन्हें दुसरे नयी operating systems में port भी कर सकते हैं और साथ में दूसरों के साथ share भी कर सकते हैं।

ओपन सोर्स सॉफ्टवेयर और दुसरे प्रकार के सॉफ्टवेयर के बीच क्या अंतर है?

कुछ software में source code को केवल कुछ लोग, team, या organization जो की उन्हें create किये हुए होते हैं, बस उन्ही के पास ही इनका control होता है — और वो उनका exclusive control भी maintain करते हैं — उन्हें modify कर सकते हैं. ऐसे type के software को “proprietary” या “closed source” software कहा जाता है।

इनमें केवल इन proprietary software के original developers ही legally copy, inspect, और modify कर सकते हैं इन software को. वहीँ इन proprietary software को इस्तमाल करने के लिए, computer users को agree करना ही होता है इसके rules और regulations को (usually ये आपको software install करने के दौरान दिखाई पड़ती है जब आप इसे पहली बार run करते हैं), वहीँ इसके साथ users केवल उतना ही चीज़ कर सकते हैं जितनी की software creators उन्हें permit किये हुए होते हैं।

उदाहरण के लिए Microsoft Office and Adobe Photoshop है ऐसे proprietary software।

वहीँ Open source software बहुत ही अलग होते हैं. इनके authors इनके source code कोसभी के लिए available करवा देते हैं, जिससे कोई भी इन्हें view कर सकता है, इन्हें copy कर सकता है, इसे अपने हिसाब से modify भी कर सकता है. उदाहरण के लिए LibreOffice और GNU Image Manipulation Program ऐसे ही open source software हैं।

क्या ओपन सोर्स सॉफ्टवेयर केवल computer programmers के लिए ही महत्वपूर्ण होता है?

इसका सीधा सा जवाब है नहीं. Open source technology और open source thinking दोनों ही programmers और non-programmers के लिए बहुत उपयोगी है।

चूँकि पहले के inventors Internet को बनाने में ज्यादातर open source technologies का इस्तमाल किये हुए हैं — जैसे की Linux Operating System और Apache Web server application— इसलिए कोई भी user जो की internet का इस्तमाल कर रहा हो वो इन open source software का ही उपयोग कर रहा है अपने benefit के लिए।

जब भी कोई user अपने computer में web pages देखता है, email check करता है, अपने दोस्तों के साथ chat करता है, stream करता है music online, या play करता है multiplayer video games, अपने computers, mobile phones, या gaming consoles में तब वो connect होता है एक global network के computers के साथ तब वो अनजाने में ही सही लेकिन open source software का इस्तमाल कर रहा होता है जिससे वो data को route और transmit करते हैं अपने “local” devices में।

इससे ये बात साफ़ हो जाती है की Open Source Software का इस्तमाल केवल programmers ही नहीं कर रहे हैं बल्कि इन्हें सभी बाकि लोग भी करते हैं. ये हमारे चारों तरफ मेह्जुद हैं और अनजाने में भी हम इसका इस्तमाल कर रहे होते हैं।

ओपन सोर्स सॉफ्टवेयर के लाइसेंस क्या हैं?

वैसे तो ये open-source projects में बहुत सारे Licences का इस्तमाल होता है, ये इस बात पर निर्भर करता है की developers अपने programs के लिए किन्हें ज्यादा prefer कर रहे हैं।

GPL, या GNU (General Public License), का सबसे ज्यादा इस्तमाल बहुत से open-source projects, जैसे की Linux में होता है. ऊपर बताये गए open-source के definition के साथ, GPL के terms में साफ तोर से specify होता है की, अगर कोई किसी open-source program को modify करता है और साथ में एक derivative work को distribute भी करता है तब उन्हें उसके साथ उसका source code भी distribute करना होता है।

इसे आसान भाषा में समझें तब कोई भी व्यक्ति किसी भी open-source code को लेकर, उसक इस्तमाल कर यदि कोई closed-source program तैयार करता है – तब उन्हें उस modified version को release करने के बाद community को वापस भी करना होता है. अन्यथा उसे इसके लिए penalty नही पड़ सकती है।

वहीँ कुछ दुसरे licenses भी हैं, जैसे की BSD license, जो की developers के ऊपर कम ही restrictions डालते हैं. अगर कोई एक program BSD license के अंतर्गत आता है, तब वो किसी open source program का source code इस्तमाल कर अपने हिसाब से Software तैयार कर सकता है।

इसमें उन्हें इस modified version को release करने की कोई भी जरुरत नहीं होती है. Developers को ये Licence ज्यादा प्रिय होती है क्यूंकि ये उन्हें क्यादा छुट प्रदान करती है।

ओपन सोर्स सॉफ्टवेयर का इस्तमाल करना लोग ज्यादा पसंद क्यूँ करते हैं?

ज्यादातर लोग open source software को पसदं करते हैं proprietary software की तुलना में क्यूंकि इसके बहुत सारे कारण हैं, जिनके विषय में हम आगे जानने वाले हैं :

Control

Proprietary Softwares की तुलना में इन open source software में लोगों का ज्यादा control होता है. यहाँ पर वो code को खुद examine कर सकते हैं, वहीँ अपने हिसाब से इसमें जरुरत के modifications भी कर सकते हैं. वहीँ non-programmers भी इनका इस्तमाल अपने हिसाब से कर सकते हैं।

Training

दुसरे लोग जो की इन्हें पसदं करते हैं वो इसलिए क्यूंकि इनका इस्तमाल का वो बेहतर programmers बन सकते हैं. चूँकि इनके source code publicly accessible होते हैं इसलिए students इन्हें आसानी से पढ़ सकते हैं और इनसे बहुत कुछ सीख भी सकते हैं और बेहतर software बनाने के लिए।

वहीँ Students अपने modified work को दूसरों के साथ share भी कर सकते हैं जिससे की वो उनका point of view जान सकें, जिससे वो अपने developing skills को बढ़ा सकें।

Security

कुछ लोग इन softwares को इसलिए पसंद करते हैं क्यूंकि उन्हें ये ज्यादा secure लगता है क्यूंकि उन्हें ये ज्यादा secure लगता है proprietary softwares की तुलना में. इसमें समय समय पर updates आते रहते हैं जहाँ पर इसके errors को ठीक का publish किया जाता है. इसलिए उन्हें ये ज्यादा पसदं हैं।

Stability

ज्यादातर users prefer करते हैं इन software का इस्तमाल करना अपने महत्वपूर्ण long-term projects के लिए. ऐसा इसलिए क्यूंकि ऐसा करने से उन्हें अपने software के source code को लेकर चिंता करने की कोई भी जरुरत नहीं होती है।

क्यूंकि proprietary softwares के cases में यदि original creator कभी काम करना बंद कर दिया तो उन्हें इसके लिए बहुत परेशानी हो सकती है भविष्य में. वहीँ open source software काम करती है दोनों incorporate और operate करती है open standards के accordingly।

क्या “open source” का सिर्फ मतलब होता है Free of Charge होना?

इसका जवाब है बिलकुल नहीं. ये एक बहुत ही common misconception है “open source” को लेकर, यहाँ ये केवल पैसों तक ही बात नहीं है।

Open source software programmers इसके लिए money भी charge कर सकते हैं इन open source software के लिए जिन्हें की इन्होने ही create किया है या उन्होंने जिसमें अपने योगदान दिया हुआ है।

लेकिन ज्यादातर cases में open source license प्राप्त करने के लिए उन्हें बहुत जगह में उसके source code को release भी करना पड़ता है जब वो उसे बेचने की सोचते हैं. वहीँ कुछ programmers को लगता है की उनके software services और support के उन्हें ज्यादा पैसे मिल सकते हैं, न की केवल software के. इसलिए वो ज्यादातर समय अपने software को free कर देते हैं, वहीँ लोगों की मदद करते हैं उनके problems को troubleshoot कर।

ओपन सोर्स सॉफ्टवेयर के लाभ

तो चलिए Open Source Softwares के benefits के विषय में जानते हैं।

OSS allow करता है programmers को एकसाथ collaborate करने के लिए जिससे की वो software को improve कर सकें. जिसके लिए वो उसमें स्तिथ errors को fix करते हैं जो की code (bug fixes) में होते हैं, साथ में वो software को update भी करते हैं जिससे वो नयी technology में काम कर सके. इसके अलावा वो इसमें नयी features भी develop करने में सहायक होते हैं।

इस group collaboration approach से इन open source projects में नयी features भी बहुत जल्दी आती हैं और इन्हें बहुत ही frequently release किया जाता है।

ये software बहुत ज्यादा stable होते हैं जिससे ज्यादा programmers इसके errors को ढूंड सकते हैं, और इसकी security updates को भी बेहतर रूप से implement किया जा सकता है दुसरे proprietary software programs की तुलना में।

OSS अक्सर free होते हैं. लेकिन कुछ cases में आपको extra cost pay भी करना होता है technical support और कुछ services के लिए इन software programs।

ओपन सोर्स सॉफ्टवेयर के फायदे

चलिए Open Source Software के advantages के विषय में जानते हैं।

1. ये generally free होते हैं – ये estimate किया गया है की ये open source software collectively save करते हैं businesses जिसकी value हैं लगभग $60 billion a year. अभी के समय में आपको प्रत्येक paid proprietary software system के जगह में एक उसकी एक open source version आसानी से मिल सकती है।

2. ये continually evolve होते रहते हैं real time में क्यूंकि developers इसमें बहुत सी चीज़ें add करते हैं और modify करते रहते हैं, जिसका मतलब है की ये ज्यादा बेहतर quality की होती है और ज्यादा secure भी होती है, वहीँ इसलिए इनमें bugs होने की संभावनाएं बहुत ही कम होती है proprietary systems की तुलना में।

3. इन open source software का इस्तमाल करना ये भी जाहिर करता है की आप किसी एक particular vendor के systems को इस्तमाल करने में restricted नहीं होते हैं जो की केवल उनके ही devices में काम करते हैं।

4. आप इन softwares को modify और adapt भी कर सकते हैं अपने requirements के हिसाब से, जो की शायद उतना ज्यादा मुमकिन न हो proprietary systems के साथ।

ओपन सोर्स सॉफ्टवेयर के नुकसान

अब चलिए Open Source Software के Disadvantages के विषय में जानते हैं।

1. चूँकि इसमें कोई भी requirement नहीं होती है इसे एक commercial product बनाने के लिए जिससे की money generate हो सके, इसलिए open source software ज्यादा develop करती हैं अपने हिसाब से न की users के requirements के हिसाब से।

2. यही कारण है की ये बहुत ही कम “user-friendly” होती हैं, क्यूंकि इसके user interface में ज्यादा महत्व नहीं दिया जाता है।

3. इनमें अक्सर support न के बराबर होता है. जिससे यदि कोई problem हो जाती है तब आपको इनके forum और community के ऊपर ही निर्भर करना पड़ता है उस problem का solution पाने के लिए. जो की थोडा irritating हो सकता है।

4. वैसे तो ये open source software अपने आप में mostly free होते हैं, लेकिन इनमें कुछ indirect costs भी involved होती हैं, जैसे की आपको external support के लिए pay करना पड़ सकता है।

5. एक Open System होने के कारण से इसमें बहुत से लोग involve होते हैं जो की इसके bugs को ढूडने में काफी मदद करते हैं. वहीँ कुछ ऐसे भी लोग होते हैं जो की software की इन vulnerabilities (कमजोरी) का गलत इस्तमाल भी कर सकते हैं।

6. चूँकि Open Source Software ज्यादा user friendly नहीं होते हैं इसलिए इन्हें ठीक तरीके से समझने और इस्तमाल करने के लिए आपके पास भी थोडा बहुत technical ज्ञान होना आवश्यक है. अन्यथा आपको basic functionalities के लिए भी दूसरों के ऊपर निर्भर रहना पपड़ सकता है।

ओपन सोर्स सॉफ्टवेयर का जनक किसे कहा जाता है?

Open Source Softwares या Free Softwares का जनक Richard Stallman को कहा जाता है. ऐसा इसलिए क्यूंकि उन्होंने ही सबसे पहले free software develop किया था सन 1984 में।

आज आपने क्या सीखा

मुझे उम्मीद है की आपको मेरी यह लेख ओपन सोर्स सॉफ्टवेयर क्या है (What is Open Source Software in Hindi) जरुर पसंद आई होगी. मेरी हमेशा से यही कोशिश रहती है की readers को ओपन सोर्स सॉफ्टवेयर लिस्ट के विषय में पूरी जानकारी प्रदान की जाये जिससे उन्हें किसी दुसरे sites या internet में उस article के सन्दर्भ में खोजने की जरुरत ही नहीं है. इससे उनकी समय की बचत भी होगी और एक ही जगह में उन्हें सभी information भी मिल जायेंगे।

यदि आपके मन में इस article को लेकर कोई भी doubts हैं या आप चाहते हैं की इसमें कुछ सुधार होनी चाहिए तब इसके लिए आप नीच comments लिख सकते हैं।

यदि आपको यह post Open Source Software क्या होता है in hindi पसंद आया या कुछ सीखने को मिला तब कृपया इस पोस्ट को Social Networks जैसे कि Facebook, और Twitter इत्यादि पर share कीजिये।

About the Author

Prabhanjan Sahoo

Prabhanjan Sahoo

मैं Prabhanjan, HindiMe का Technical Author & Co-Founder हूँ। Education की बात करूँ तो मैं एक Enginnering Graduate हूँ। मुझे नयी नयी Technology से सम्बंधित चीज़ों को सीखना और दूसरों को सिखाने में बड़ा मज़ा आता है।

Related Posts

Leave a Comment

Comments (11)

  1. It really helps me a lot for my presentation….I couldn’t know how to thank you…. Literally I have no words….Thanku so much sir

    Reply
  2. Nice Artice , A Big Fan Of Your Blog
    from you i also created a blog about tech in hindi
    good job sir

    Reply