एक ओपन सोर्स प्रोजेक्ट में योगदान: कैसे शुरू करें

ओपन सोर्स प्रोजेक्ट ने वर्षों में कई उपयोगी सॉफ्टवेयर को जन्म दिया है। आज हम जिन महान तकनीकों का उपयोग करते हैं उनमें से कई खुले स्रोत के विकास से पैदा हुई थीं! Android, Firefox, VLC मीडिया प्लेयर, MongoDB, Linux, Docker और Python सिर्फ कुछ के नाम के लिए।

यहां तक ​​कि कई टेक दिग्गजों को लाभ का एहसास है और अपने कर्मचारियों को एक दिन की छुट्टी लेने और अपने समय को स्रोत परियोजनाओं को खोलने के लिए समर्पित करने की अनुमति देते हैं। वास्तव में, कई के पास स्वयं के ओपन सोर्स प्रोजेक्ट हैं।

हालाँकि, स्रोत परियोजनाओं को खोलने के लिए अधिकांश योगदानकर्ता तकनीकी दिग्गजों के लिए काम नहीं करते हैं; कोई भी खुले सॉफ़्टवेयर के एक महत्वपूर्ण टुकड़े पर अपनी छाप छोड़ सकता है या अपनी खुद की "अगली बड़ी चीज" बना सकता है। एक ओपन सोर्स प्रोजेक्ट का हिस्सा होने से आपको अपने कौशल को सुधारने में मदद मिल सकती है, कुछ नया सीखने, मेंटरशिप पाने या जीवन भर की दोस्ती बनाने में मदद मिल सकती है। ओपन सोर्स प्रोजेक्ट्स में योगदान शॉर्ट और लॉन्ग टर्म दोनों में परस्पर लाभकारी होना चाहिए। कई कंपनियां सक्रिय रूप से एक परियोजना में सबसे अधिक योगदान देने वाले लोगों से पूर्णकालिक डेवलपर्स को किराए पर लेती हैं, और ऐसा करने से नए कौशल सीखने के दौरान अपने कौशल को दिखाने का एक शानदार तरीका हो सकता है।

यह आलेख कुछ युक्तियों को जोड़ता है जिन्हें हम माइंड्सडीबी के साथ जुड़ने की तलाश में उन लोगों के साथ साझा करते हैं, और जबकि प्रत्येक परियोजना अलग-अलग है उम्मीद है कि ये विचार आपको किसी भी ओपन सोर्स प्रोजेक्ट में शामिल होने में मदद करेंगे।

माइंड्सबीडी का गिटहब पृष्ठ

अपना पहला योगदान देने से पहले

1. खुद का आकलन करें:

पहला कदम किसी भी तकनीकी या गैर-तकनीकी कौशल का आकलन करना है जो आपके पास है या सुधार करना चाहते हैं। अपने आप से पूछें कि मैं सबसे अधिक मूल्य कहाँ जोड़ सकता हूँ? यह सीधे कोड लिखने में मदद कर सकता है, बग के लिए परीक्षण कर सकता है या यहां तक ​​कि प्रलेखन में सुधार करने में मदद कर सकता है ताकि अन्य सॉफ्टवेयर का अधिक कुशलता से उपयोग कर सकें।

2. GitHub पता करें

लगभग सभी ओपन सोर्स प्रोजेक्ट्स ने एक वर्जन कंट्रोल सिस्टम का इस्तेमाल किया, एक टूल जो प्रोजेक्ट में नए कोड को मर्ज करने में मदद करता है (मुख्य "रिपॉजिटरी")। आमतौर पर, सहयोग एक वेबसाइट के आसपास केंद्रित होता है जो केंद्रीय भंडार को होस्ट करता है। इन वेबसाइटों में गितुब, बिटकबेट और गितलब शामिल हैं, सोचा कि गितुब अब तक सबसे लोकप्रिय एक है और हम यहां माइंड्सडीबी में उपयोग करते हैं।

सामान्यतया, संस्करण नियंत्रण प्रणालियाँ एक परियोजना में कई फाइलों को सहेजे बिना सभी परिवर्तनों पर नज़र रखने की अनुमति देती हैं। जीथब पर एक खाता बनाएं, लॉगिन करें और वेबसाइट के शीर्ष पर सभी अलग-अलग टैब देखें। यहाँ आपको Github, डेवलपमेंट गाइड, ओपन सोर्स प्रोजेक्ट्स, इवेंट्स, कॉन्फ्रेंस आदि के बारे में जानकारी मिलेगी। आप यहाँ इस गाइड को फॉलो करके GitHub की मूल बातें जान सकते हैं।

3. प्रासंगिक परियोजनाओं के लिए खोजें और समुदाय में शामिल हों

अपने स्कील 1 के आधार पर जीथब पर प्रासंगिक परियोजनाओं के लिए खोजें। आप इस उद्देश्य के लिए गिथब एक्सप्लोर का उपयोग कर सकते हैं या हर दिन एक अलग मुद्दे पर एक ईमेल प्राप्त करने के लिए कोड ट्राइएज के लिए साइन-अप कर सकते हैं। शुरू करने के लिए एक परियोजना का चयन करते समय, एक ऐसी परियोजना की तलाश करें जो सक्रिय रूप से बनाए रखी जाती है (कमिट का भार) और बहुत सारे मुद्दे हैं। एक बार जब आप अपने संबंधित प्रोजेक्ट, स्टार और फोर्क प्रोजेक्ट को पा लेते हैं, तो उसकी मेलिंग सूची और सुस्त चैनल की सदस्यता लें। यदि आप प्रोजेक्ट स्थापित करने या अपना पहला योगदान देने में फंस गए हैं तो सहायता प्राप्त करने का यह सबसे अच्छा तरीका है।

अपना पहला योगदान दे रहे हैं

1. सॉफ्टवेयर के साथ खेलते हैं: कीड़े का पता लगाएं

सबसे पहले, सॉफ्टवेयर का प्रयास करें, इसे स्थापित करें और एक नाटक करें, इसे तोड़ने की कोशिश करें, देखें कि क्या यह बॉक्स पर क्या कहता है। यह एक शानदार जगह है जहां आप बहुत आसानी से मूल्य जोड़ना शुरू कर सकते हैं, किसी भी मुद्दे की रिपोर्ट करके। प्रत्येक प्रोजेक्ट में रिपोर्टिंग समस्याओं के लिए थोड़ा अलग टेम्पलेट होने की संभावना है, लेकिन अनिवार्य रूप से वे सभी समान जानकारी रखते हैं। (आप MindsDB के मुद्दे का खाका यहां देख सकते हैं)

2. मौजूदा मुद्दों का अन्वेषण करें

एक बार जब आप उस परियोजना का पता लगा लेते हैं, जिसमें आप योगदान करना चाहते हैं, तो इसके गितुब भंडार को देखें, दस्तावेजों को पढ़ें और मुद्दों के टैब पर जाएं। यहां आपको सभी खुले मुद्दे मिलेंगे जिन पर आप काम कर सकते हैं। ये मुद्दे शुरुआती स्तर से लेकर अग्रिम स्तर तक हो सकते हैं। यदि रिपॉजिटरी का रखरखाव ठीक से किया जाता है, तो मुद्दों को "शुरुआती", "प्रथम-समय", "हेल्प-वॉन्टेड" आदि के साथ टैग किया जाएगा ताकि आप प्रोजेक्ट के साथ आत्मविश्वास और अनुभव प्राप्त करने के लिए सबसे आसान काम कर सकें।

3. प्रलेखन सुधारने में मदद करें

हालाँकि, आपको अभी कोड नहीं करना होगा। आप दस्तावेज़ीकरण में योगदान कर सकते हैं, डेवलपर की मार्गदर्शिका बना सकते हैं, अन्य लोगों को उनके मुद्दों को हल करने में मदद कर सकते हैं, आदि प्रलेखन पढ़ें और अगर आपको लगता है कि कुछ याद आ रहा है तो यह योगदान देने के लिए एक शानदार पहला स्थान हो सकता है। आप या तो एक मुद्दा उठा सकते हैं या, यदि आप पर्याप्त आत्मविश्वास महसूस करते हैं, तो आप लापता भागों को स्वयं जोड़ सकते हैं। आप यहां MindsDB के दस्तावेज़ देख सकते हैं।

4. नई सुविधाओं का सुझाव दें

यदि आप इस परियोजना को पसंद करते हैं और इसे उपयोगी पाते हैं, तो आप इसे सुधारने में मदद करने के लिए नई सुविधाओं का अनुरोध करना भी शुरू कर सकते हैं। (आप हमारे टेम्पलेट यहाँ पा सकते हैं) या इससे भी बेहतर आप उन्हें खुद जोड़ने की कोशिश कर सकते हैं।

कैथेड्रल और बाजार

ओएसएस के बारे में एक क्लासिक पुस्तक द कैथेड्रल एंड द बाज़ार है। यह "बाजार" शैली के विकास की पड़ताल करता है, एक निचला दृष्टिकोण जो डेवलपर्स और उपयोगकर्ताओं को शक्ति देता है। "कैथेड्रल" शैली के साथ तुलना करते हुए, एक टॉप-डाउन दृष्टिकोण जहां शक्ति प्रबंधकों और उत्पाद मालिकों के साथ निहित है।

यह इन विचारों ने काम के दृष्टिकोण को जन्म दिया जैसे कि एजाइल मैनिफेस्टो में वर्णित है। लेकिन कितना भी निगमों ने विकास के लिए "बाजार" दृष्टिकोण का अनुकरण करने की कोशिश नहीं की है, वे इसे खुले स्रोत की परियोजनाओं के साथ भी नहीं कर सकते।

कॉरपोरेट प्रोजेक्ट्स की दुनिया में, आर्किटेक्ट, मैनेजर और प्रोडक्ट ओनर इसका नेतृत्व करते हैं। खुले स्रोत की दुनिया में, यह उन उपयोगकर्ताओं और डेवलपर्स के लिए है जो विशिष्टताओं को आकार देते हैं।

ओपन सोर्स सॉफ्टवेयर बहुत अच्छा है क्योंकि यह अपने डेवलपर्स और उपयोगकर्ताओं की "सामूहिक बुद्धिमत्ता" पर टैप करता है। एक ओपन सोर्स प्रोजेक्ट में अधिकांश डेवलपर्स अपने मुख्य उपयोगकर्ता-आधार से स्टेम करते हैं, एक ओपन सोर्स प्रोजेक्ट में अधिकांश "लीडर" केवल डेवलपर्स होते हैं जो सबसे अधिक विचारों और कोड में डालते हैं।

यह "बाजार" दृष्टिकोण "कैथेड्रल" दृष्टिकोण से बेहतर नहीं है, लेकिन यह कोशिश करने लायक प्रणाली है। यह संगठन के भीतर बाहरी मानदंड या वरिष्ठता की परवाह किए बिना एक नए डेवलपर को सॉफ्टवेयर के एक टुकड़े पर बहुत अधिक शक्ति दे सकता है। विनिमय का एकमात्र टोकन कोड है, जितना अधिक मूल्यवान योगदान, उतना ही आप डिजाइन को प्रभावित करते हैं।

यदि और कुछ नहीं है, तो आपको सॉफ़्टवेयर डिज़ाइन की इस नीचे-अप शैली का अनुभव करने के लिए कुछ ओपन सोर्स प्रोजेक्ट्स पर काम करना चाहिए।

एक ओपन सोर्स डेवलपर के रूप में अगला लक्ष्य

1. सम्मेलन में भाग लें

एक ओपन सोर्स डेवलपर के रूप में, आप कोडिंग और प्रौद्योगिकी से संबंधित सम्मेलनों और कार्यक्रमों में भाग ले सकते हैं। आप गितुब एक्सप्लोर पर विभिन्न घटनाओं की जांच कर सकते हैं और उन घटनाओं को अपने करीब लाने की कोशिश कर सकते हैं। MindsDB 2019 में मीटअप का आयोजन करेगा; यदि आप सब कुछ MIndsDB के साथ अद्यतित रहना चाहते हैं, तो आप यहाँ हमारी मेलिंग सूची की सदस्यता ले सकते हैं

2. ओपन सोर्स डेवलपमेंट के लिए भुगतान करें

सामान्यतया, आपको ओपन सोर्स डेवलपमेंट करने के लिए भुगतान नहीं किया जाता है क्योंकि अधिकांश कार्य स्वेच्छा से किए जाते हैं। हालाँकि, यदि आप खुले स्रोत के विकास में अवैतनिक समय बिताने का जोखिम नहीं उठा सकते हैं, तो आप या तो अपने नियोक्ता से बात कर सकते हैं और किसी ऐसे प्रोजेक्ट के लिए विचार कर सकते हैं, जो आपके नियोक्ता के लिए भी दिलचस्पी ले सकता है या कोई ऐसा प्रोजेक्ट खोज सकता है जो उसके ओपन सोर्स डेवलपर को भुगतान करता हो। आप ओपन सोर्स डेवलपमेंट के लिए भुगतान किए जाने के गिथब के गाइड से अधिक जान सकते हैं। कई कंपनियां (माइंड्सडीबी सहित) भी अपने काम के लिए शीर्ष योगदानकर्ताओं को नियुक्त करती हैं या भुगतान करती हैं।

3. अपने सीवी को चमक दें, एक संरक्षक बनें और ओपन सोर्स प्रतियोगिताओं के लिए आवेदन करें

आपको उन सभी परियोजनाओं का उल्लेख करना चाहिए जिनका आपने अपने सीवी में योगदान दिया है या अपने सीवी पर या कवर पत्र में अपने गीथहब खाते के लिए एक लिंक जोड़ें। अधिकांश नियोक्ता इस तरह की प्रशंसा से प्रभावित होते हैं और ऐसे उम्मीदवारों को काम पर रखने के लिए पसंद करते हैं।

आप उन लोगों के लिए भी एक संरक्षक बन सकते हैं जो खुले स्रोत के विकास के लिए नए हैं। यह समुदाय को वापस देने और उन लोगों को मार्गदर्शन देने का समय है जो अभी शुरू कर रहे हैं। ऐसे कई कार्यक्रम हैं जिनमें आप एक संरक्षक बनने का विकल्प चुन सकते हैं, उदा। कोड की Google समर, कोड की गर्ल्स समर, आउटरीच, इत्यादि, या मेलिंग सूची या StackOverflow पर उनके प्रश्नों का उत्तर देकर लोगों की मदद कर सकते हैं।

एडम कैरिगन, अपनी परियोजनाओं में मशीन सीखने को जोड़ने और डेटा चुनौतियों को हल करने के लिए टूल का उपयोग करने के लिए आसान माइंड्सबीडी के सह-संस्थापक हैं। ट्विटर पर मुझे फॉलो करें

आप GitHub और Twitter पर हमारे प्रोजेक्ट को भी फॉलो कर सकते हैं