मैं शामिल होने के लिए एक अच्छा ओपन सोर्स प्रोजेक्ट कैसे पा सकता हूं? [बन्द है]


152

मैंने अभी एक साल पहले काम करना शुरू किया था, और मैं उन्हीं कारणों से एक ओपन सोर्स प्रोजेक्ट से जुड़ना चाहता हूं: कोई और उपयोगी बनाने में मदद करें और अपने कौशल को और विकसित करें।

मेरी समस्या यह है, मुझे नहीं पता कि मैं एक परियोजना कैसे खोजूं जहां मैं फिट हो जाऊं।

मैं एक शुरुआत-अनुकूल परियोजना कैसे पा सकता हूं? मुझे किन विशेषताओं की खोज करनी चाहिए? चेतावनी के संकेत क्या हैं कि एक परियोजना सही फिट नहीं हो सकती है? वहाँ किसी भी उपकरण वहाँ खुले स्रोत परियोजनाओं के साथ लोगों को मैच में मदद करने के लिए कर रहे हैं?

यहां एक समान प्रश्न है , लेकिन उस प्रश्न को रोजगार के साथ करना है और PHP / Drupal तक सीमित है।


9
कूल, मैंने अभी ArsTechnica पर एक नज़र डाली और इस प्रश्न को एक लेख के रूप में चित्रित किया। यहाँ लिंक है। arstechnica.com/business/guides/2012/03/…
इवान प्लाइस

जवाबों:


111

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

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

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

यह एक अमूल्य प्रक्रिया थी जिससे मैंने बहुत कुछ सीखा:

  • जब मैंने शुरू किया तो मुझे नहीं पता था कि मैं Git का उपयोग कैसे करूं, अंत में मैं दूरस्थ रूप से दूरस्थ ट्रैकिंग शाखाएं बना सकता हूं और एक पसीने को तोड़ने के बिना उन्हें मास्टर शाखा में मर्ज या रिबेस कर सकता हूं।
  • मैंने वीएस 2008 में शुरू किया और लेखन कोड पर काम करने के लिए लिनक्स और मोनोडेवलप की ओर पलायन किया (क्योंकि वीएस यूनिकोड मंद है और लाइन एंडिंग इस तरह के दर्द की चपेट में हैं)। यह पता चला है कि आप * निक्स में ऐसा नहीं कर सकते जो आप * डॉस में कर सकते हैं।
  • मैंने वास्तव में पहले कभी कोई इकाई परीक्षण नहीं किया था, नुनिट का उपयोग करने के लिए केक का एक टुकड़ा है और इकाई परीक्षण बहुत प्रारंभिक सामान है।
  • मुझे अपनी जीभ को निगलना और धैर्य के साथ-साथ सुनना सीखना था। एक ओपन सोर्स प्रोजेक्ट पर अपनी स्थिति पर कोई ठोस आधार खड़ा करने का कोई मतलब नहीं है क्योंकि इसमें शामिल हर व्यक्ति जानकार (शायद खुद से ज्यादा ऐसा है) और पदार्थ नहीं डिलीवरी के आधार पर आपके विचारों को स्वीकार / अस्वीकार करने में सक्षम है। यह एक ही समय में बेहद विनम्र और फायदेमंद है।
  • मेरे कोड के एक बड़े आधार पर सिर्फ एक दूसरे कुशल डेवलपर की नज़रें मेरी शैली की उन खामियों की ओर इशारा करती हैं, जिनके बारे में मैंने पहले कभी विचार नहीं किया था (साथ ही मैंने उनके कोड की खामियों की ओर भी ध्यान दिलाया था)। मेरे लिए, मैंने सीखा कि स्थिरांक को परिभाषित करना आसान है / बेहतर है क्योंकि यह विस्तृत टिप्पणी के साथ जादुई संख्याओं के एक समूह का उपयोग करता है।

यह विशेष परियोजना नेटवर्किंग प्रोटोकॉल के सभी स्तरों पर नेटवर्किंग पैकेट बनाने और डिकोड करने के आसपास आधारित थी। मुझे निचले स्तर की नेटवर्किंग में व्यक्तिगत रुचि है, इसलिए डोमेन में साझा रुचि और ज्ञान के साथ किसी अन्य डेवलपर के साथ चर्चा करना बहुत अच्छा था।

यदि आप केवल अपने पैरों को गीला करना चाहते हैं: एक परियोजना ढूंढें जो आप पहले से ही उपयोग करते हैं; भंडार का क्लोन; और देखना शुरू करें कि क्या आप कुछ बग्स को ठीक कर सकते हैं और / या कुछ यूनिट टेस्ट जोड़ सकते हैं। यह किसी और के कोडबेस को ताजी आंखों से देखने के लिए डराने लगता है लेकिन यह सीखने के लिए एक बहुत ही मूल्यवान कौशल है। कुछ पैच जमा करें। आप पहली बार में अपने कोड की बारीकी से जांच कर सकते हैं। इसके बारे में चिंता न करें, यह परियोजना व्यवस्थापक (नों) का विश्वास हासिल करने के लिए प्रक्रिया का एक सामान्य हिस्सा है।

परियोजनाओं के साथ योग्यता का आधार स्थापित करने के बाद व्यवस्थापक (ओं) को और अधिक जिम्मेदारियों की तलाश शुरू होती है जैसे, नई सुविधाओं का प्रस्ताव करना, या फीचर अनुरोधों को लागू करने के लिए सौंपा जाना।

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

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

अपडेट करें:

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

व्यक्तिगत समय की कमी के कारण मैं एक वर्ष से अधिक समय तक कोड में योगदान नहीं कर पाया, लेकिन मैं अभी भी स्टैक ओवरफ्लो पर झूठ बोलकर और कभी-कभी SharpPcap के बारे में सवालों के जवाब देने की कोशिश करता हूं।


क्या आप इस संबंध में कुछ लोकप्रिय साइट सुझा सकते हैं?
आदित्य पी

2
@ AdityaGameProgrammer मैं एक विशिष्ट परियोजना की तलाश में अधिक जोर दूंगा जो स्रोत होस्टिंग साइट न खोलें। होस्टिंग साइटें केवल ओपन सोर्स प्रोजेक्ट्स के लिए एक डंपिंग ग्राउंड हैं और कुछ प्रोजेक्ट्स अलग-अलग साइट्स पर माइग्रेट करेंगे यदि बेहतर फीचर्स मिल सकते हैं (यानी विशिष्ट लाइसेंस समर्थित, बेहतर वर्जन कंट्रोल सपोर्ट, बेहतर बग ट्रैकर्स आदि ...)। मैंने पहले से ही कुछ का नाम लिया है। IMHO, github, google code और sourceforge सबसे लोकप्रिय हैं। लॉन्चपैड (बाज़ार संस्करण नियंत्रण का उपयोग करता है) जहां आपको सबसे अधिक Ububtu / linux डेवलपमेंट हो रहा है।
इवान प्लाइस

2
@ AdityaGameProgrammer (cont) जीथब, सोर्सफोर्ज, और गूगल कोड सभी परियोजनाओं के बड़े पैमाने पर विकास कर रहे हैं। क्योंकि sourceforge लंबे समय तक रहा है इसलिए आपको संभवतः बहुत अधिक मृत / अनाथ परियोजनाएं मिलेंगी। यदि आप पहले जिस चीज़ में रुचि रखते हैं उस पर विचार करने के लिए कुछ समय लेने के लिए इसमें शामिल होने के लिए एक प्रोजेक्ट ढूंढना बहुत आसान है। अपवाद है, यदि आप अपनी खुद की परियोजना की मेजबानी करना चाहते हैं। फिर, उन विशेषताओं के लिए खरीदारी करने के लिए कुछ समय लें जो आपके सामान्य विकास वर्कफ़्लो को सबसे अच्छी तरह से फिट करते हैं।
इवान प्लाइस

धन्यवाद। पहले मैं एक स्रोत पर खोज करने का प्रयास करता हूं जो मुझे मृत / अनाथ परियोजनाओं की एक बड़ी संख्या में ले जाता है।
आदित्य पी

28

यहाँ मैं क्या करने के लिए अपने सही मैच खोजने के लिए सुझाव है:

  1. यदि आपके पास एक ओपन-सोर्स प्रोजेक्ट है जिसे आप पहले से ही उपयोग करते हैं, जानते हैं और इसके बारे में परवाह करते हैं, तो यह आपका पहला उम्मीदवार होना चाहिए। अन्यथा इस बारे में सोचें कि आप सामान्य रूप से क्या करना चाहते हैं और इस क्षेत्र में एक परियोजना की खोज करेंगे।

  2. जब आपको एक संभावित प्रोजेक्ट मिल गया है, तो इसमें जल्दबाजी न करें। इसे स्वयं उपयोग करने का प्रयास करें। क्या यह वर्णन और समीक्षाओं से ऐसा लगता है जैसे यह कार्रवाई में अच्छा है? यदि नहीं तो यह एक पूर्ण शो-स्टॉपर नहीं है; शायद यह आपके लिए कूदने और वास्तव में एक अंतर बनाने का अवसर है। आखिरकार किसी को भी एक सही उत्पाद के लिए दूसरे डेवलपर की आवश्यकता नहीं होती है। लेकिन यह आपको एक महत्वपूर्ण अंतर्दृष्टि देगा कि क्या आप इस परियोजना का हिस्सा बनना चाहते हैं, जबकि आप जिस क्षेत्र में रुचि रखते हैं उसमें नई तकनीक के साथ पहले हाथ का अनुभव प्राप्त करते हैं।

  3. इसके अलावा परियोजना में बहुत अधिक समय निवेश करना शुरू करने और इसकी ins और outs सीखने के लिए, प्रोजेक्ट मेलिंग सूचियों, फ़ोरम, यहां तक ​​कि बग ट्रैकिंग सिस्टम को कुछ हफ़्ते के लिए लटकाने पर विचार करें। यदि आप नियमित आधार पर परियोजना में योगदान देना शुरू कर देंगे तो आप वहां बहुत समय बिताएंगे।

बाहर चित्र: क्या आपको वहाँ घूमने में मज़ा आता है, या यह आपके लिए एक खींच है? क्या यह महसूस करता है कि इस परियोजना का एक अच्छा और ऊर्जावान समुदाय है या यह धीरे-धीरे मर रहा है? क्या कोर लोग वहाँ नए लोगों को प्रोत्साहित करने और सलाह देने लगते हैं या आप अपने दम पर होंगे?

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

कुछ और विचार:

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

यदि आप किसी परियोजना को पसंद करते हैं, लेकिन उसके आकार, जटिलता या कोड गुणवत्ता की आवश्यकताओं से भयभीत महसूस करते हैं, तो समर्थन भूमिकाओं से शुरू करने पर विचार करें, जैसे परीक्षण, प्रलेखन रखरखाव, या बग रिपोर्ट सत्यापन। यदि आप प्रोजेक्ट मेलिंग सूची में पूछते हैं कि इस समय उन्हें किस तरह की मदद की जरूरत है तो वे आपको मार्गदर्शन देने के लिए खुश होंगे। :)

इस तरह से आप परियोजना को सीखेंगे और अपनी प्रतिष्ठा का निर्माण करेंगे, जबकि यदि आप उप-मानक पैच प्रस्तुत करना शुरू करते हैं, तो इससे कई गुना अधिक योगदान करते हैं, जब तक कि वे तैयार नहीं हो जाते।

अंतिम और सबसे महत्वपूर्ण: यदि आप एक ही स्थान पर जल गए हैं, तो आगे बढ़ें; हार मत मानो।

उम्मीद है की वो मदद करदे।


2
+1 के लिए "सहायक भूमिकाओं से शुरू होने पर विचार करें।" परीक्षण लिखना वास्तव में आसान है और परीक्षणों पर एक करीबी नज़र इस बारे में एक अच्छा विचार देती है कि कोड क्या पूरा करने की कोशिश कर रहा है। दस्तावेज़ीकरण 'बड़ी तस्वीर' की समझ हासिल करने का एक अच्छा तरीका है, और बग्स को सत्यापित करना बर्फ तोड़ने के लिए प्रवेश का एक अच्छा निम्न-अवरोध बिंदु है। सामान पर काम करना जो डेवलपर्स आमतौर पर उपेक्षा करते हैं, यह दर्शाता है कि आपका ध्यान परियोजना को बेहतर बनाने के लिए है और आपके योगदान केवल अहंकार से प्रेरित नहीं हैं। अहंकार के मुद्दे परियोजना के रख-रखाव के लिए जीवन को कठिन बना सकते हैं, इसलिए वे उस तरह की चीज को देखते हैं।
इवान प्लाइस

9

मैं दृढ़ता से अनुशंसा करूंगा कि आप एक खुला स्रोत परियोजना खोजें जिसमें आपकी ईमानदारी से रुचि हो और जिसे आप सक्रिय रूप से उपयोग करते हों

कारण सरल है: यह एक घर का काम और एक शौक के बीच अंतर करता है।

अपने कंप्यूटर पर एक नज़र है। आपने कौन सा सॉफ्टवेयर ओपन सोर्स पर रखा है? एक अनुमान क्रोम या फ़ायरफ़ॉक्स, या शायद ओपन ऑफिस या इंस्टेंट मैसेंजर क्लाइंट होगा। क्या वे सही हैं या क्या कोई छोटी चीज है जिसे आप बदलना चाहते हैं?

अगर है, तो अब इसके बारे में कुछ करने का समय है।


8

मैं सुझाव दूंगा (या शुरू करना) कि जैसे लोग सालों से कर रहे हैं, चीजों को करने के लिए ओपन सोर्स सॉफ्टवेयर का उपयोग करना शुरू करें। यह आप के लिए मामूली लग सकता है, यहां तक ​​कि शायद सरलीकृत पर। फिर भी, किसी चीज़ का उपयोग करने, बग ढूंढने, स्रोत को हथियाने और उसे ठीक करने की संतुष्टि का वर्णन करना वास्तव में कठिन है। या, शायद इसे बदल रहा है इसलिए यह काम करने के तरीके से काम करता है।

इसके अलावा, 'शामिल' होने के लिए सिर्फ हैक न करें। लिनक्स कर्नेल में मेरे 95% पैच कभी भी दिन की रोशनी नहीं देखेंगे, मुझे यकीन है कि कोई भी उन्हें नहीं चाहेगा, लेकिन मुझे पता है, और अगर किसी अन्य सक्षम कर्नेल हैकर ने कभी उन्हें देखा तो मुझे मनोरोग मूल्यांकन से गुजरना होगा। लेकिन मैं अभी भी अपने कार्यान्वयन का आनंद लेता हूं, piglatin_printk()जो कई साल पहले 1 अप्रैल को शुरू हुआ था :)

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

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

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


+1 piglatin_printk ()? प्रफुल्लित करने वाला लगता है। मुझे लगता है कि कार्रवाई में देखना चाहते हैं। यह कोई आश्चर्य की बात नहीं है कि आपके लिनक्स कर्नेल पैच में से अधिकांश को अस्वीकार कर दिया गया है, महत्वपूर्ण परियोजना में मज़ा / रचनात्मकता के लिए बहुत जगह नहीं है। सौभाग्य से, बहुत सी छोटी परियोजनाएँ हैं जिनमें प्रवेश को स्वीकार करने में प्रवेश की बाधा बहुत कम है - भले ही योगदान करने से पहले कुछ काम करने की आवश्यकता हो।
इवान प्लाइस

1
@EvanPlaice वे अस्वीकार कर दिया नहीं कर रहे थे, बस कभी नहीं प्रस्तुत;)
टिम पोस्ट

7

ओपनहैच विशेष रूप से इसके लिए बनाया गया था।

उद्धरण के लिए:

ओपनहैच एक गैर-लाभकारी है जो समुदायों, औजारों और शिक्षा के साथ मेल खाने वाले संभावित मुफ्त सॉफ्टवेयर योगदानकर्ताओं को समर्पित है।

आप प्रकार, प्रौद्योगिकी, कौशल स्तर आवश्यक आदि परियोजनाओं को ब्राउज़ कर सकते हैं और यह जान सकते हैं कि आपके स्तर से क्या मेल खाता है।


ग्रेट छोटे से साइट एक भी बाहर की जाँच कर सकता है :) freecode.com
न्हा

4

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

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


3

इसके लिए विशेष रूप से कोड 52 नामक एक नई वेबसाइट है जो नए डेवलपर्स को हर हफ्ते एक नया ओएसएस प्रोजेक्ट शुरू करके खुले स्रोत में शामिल होने के लिए प्रोत्साहित करती है।

विचार यह है कि यह उन लोगों के लिए बहुत कम चुनौतीपूर्ण होगा जो पहले खुले स्रोत में कभी शामिल नहीं हुए हैं और उम्मीद है कि अन्य ओएसएस परियोजनाओं में भी शामिल होने के लिए अधिक इच्छुक महसूस करेंगे।


1
मैं इसे देख रहा हूं और इसमें कुछ नोट्स जोड़ने हैं। कोड 52 कंपनी के 3 डेवलपर्स का नेतृत्व करता है Readify जो 'माइक्रोसॉफ्ट के 2012 पार्टनर ऑफ द ईयर' का खिताब जीता है। हालाँकि परियोजनाओं को GitHub पर होस्ट किया जाता है, लेकिन हर एक परियोजना WinJS (यानी लक्ष्य Win8) में लिखी जाती है और Microsoft इंटरनेट लाइसेंस ले जाती है। एक सरसरी नज़र से एमपीएल कॉपी-लेफ्ट है लेकिन कुछ समान या समान लाइसेंस प्राप्त करने के लिए डेरिवेटिव की आवश्यकता वाले प्रतिबंध हैं। यानी यह बहुत कम प्रतिबंधित एमआईटी लाइसेंस की तुलना में जीपीएल लाइसेंस की तरह है।
इवान प्लाइस

यह परियोजना बहुत ही आकर्षक लग रही है, लेकिन मैं यह महसूस नहीं कर सकता कि यह माइक्रोसॉफ्ट द्वारा नए विंडोज 8 इकोसिस्टम को एक बार में खर्च किए बिना आबाद करने के लिए बनाया गया ओपन सोर्स डेवलपर डिजिटल शेयरक्रॉपिंग प्रोग्राम है। गर्दन के दाढ़ी पहनने वाले टिनफ़ोइल टोपी की तरह आवाज़ करने के लिए नहीं, लेकिन जब ओपन सोर्स के साथ एकीकरण करने की बात आती है तो एमएस के पास सबसे अच्छी प्रतिष्ठा नहीं है।
इवान प्लाइस

1
-1 ऐसा लगता है कि यह साइट मूल रूप से एक साल पहले मर गई (कोई और अपडेट नहीं)
माइकल डुरंट

3

: मैं पढ़ने की सलाह देते हैं http://open-advice.org/

इसका उद्देश्य समुदायों को बनाने और बनाए रखने में मदद करना है, और वे जो इस बारे में आश्वस्त नहीं हैं कि वे किससे जुड़ना चाहते हैं या ऐसा कैसे करना चाहते हैं।

असफल होने पर, एक ऐसी परियोजना खोजें जिसमें एक मिशन हो जो आपके साथ प्रतिध्वनित हो या कांटा और आपके लिए पहले से उपयोगी हो।

सौभाग्य।


3

जब मैंने शुरुआत की, तो मैंने विकल्पों के लिए ऑनलाइन खोज की और यह कुछ ऐसा खोजने के लिए चुनौतीपूर्ण साबित हुआ जिसे आप एक शुरुआत के रूप में अपने दांतों को डुबो सकते हैं।

कुछ परियोजनाओं में योगदान करना मुश्किल है क्योंकि वे बहुत उन्नत नहीं हैं, लेकिन क्योंकि समुदाय स्वागत नहीं कर रहा है। जब आप दीवार से टकराते हैं, तो निराश न हों।

खोज के दौरान, मैंने 10 ओपन सोर्स प्रोजेक्ट्स की एक सूची को एक साथ रखने का फैसला किया जो शुरुआती लोग बहुत तनावपूर्ण प्रक्रियाओं के बिना समर्थन शुरू कर सकते हैं। यहाँ का उपयोग करने के लिए लिंक है:

शुरुआती और समर्थन से सीखने के लिए शुरुआती दस परियोजनाएं

मुझे आशा है कि आप इसे उपयोगी पाएंगे और यदि आप शांत हैं तो आप हमेशा अधिक जोड़ सकते हैं!


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

2

मेरा सुझाव है कि आप जिस विषय में रुचि रखते हैं उस विषय पर अपने दम पर एक परियोजना शुरू करें।

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

यह आमतौर पर दूसरे के कोड को देखने में मदद करता है, लेकिन आप अपने स्वयं के प्रोजेक्ट में केवल आपके द्वारा उपयोग किए जाने वाले पुस्तकालयों और घटकों के माध्यम से अन्य लोगों के कोड का सामना करेंगे।

अनुभव आपको सिखाएगा कि अच्छा और बुरा अभ्यास क्या है।


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

@ TheLQ: यह आपके अनुभव के स्तर पर निर्भर करता है, मुझे लगता है कि, अपने आप को स्क्रैच से कुछ करना आपको बहुत सारे सबक सिखाएगा और ऐसी चीजें जो आप एक टीम में शामिल होकर नहीं सीखेंगे, जिसमें पहले से ही कई चीजें हैं। मेरी राय में आपकी अपनी या किसी और की परियोजना के बारे में सामान और ख़राबियाँ हैं।
ब्रायन आर। बॉडी

@ मैं पूरी तरह से सहमत हूँ। पहले से मौजूद प्रोजेक्ट में शामिल होना एक बहुत ही मूल्यवान अनुभव है क्योंकि यह आपको एक विचार देता है कि ओपन सोर्स प्रोजेक्ट कैसे प्रबंधित होते हैं और संगठन कैसे संरचित होता है। किसी और के सफल प्रोजेक्ट पर काम करने के बाद, मेरी खुद की बनाने की छलांग लगाकर पार्क में टहलना था।
इवान प्लाइस

2

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

आपको पहले यह पता लगाना होगा कि आप किस चीज में रुचि रखते हैं। फिर कुछ क्षेत्रों में कुछ विशेषज्ञता विकसित करें जो आपके हितों से संबंधित हैं । फिर एक ऐसी परियोजना खोजें जहां आपकी विशेषज्ञता की मांग और जरूरत हो।

यह परियोजना जितनी छोटी है, उतने ही कम योगदानकर्ता पहले से ही हैं, और अधिक संभावना है कि योगदानकर्ताओं की मांग की जाती है और आप सीधे लेखकों / परियोजना मालिकों से संपर्क कर सकते हैं। उन्हें बताएं कि आपकी विशेषज्ञता b क्या है) जहाँ आप देखते हैं कि इसे प्रोजेक्ट c में लागू किया जा सकता है) आपको क्या लगता है कि आप क्या हासिल कर सकते हैं।

याद रखें: सिर्फ एक या दो मुख्यधारा प्रोग्रामिंग भाषाओं को जानना विशेषज्ञता नहीं है।


आप किसी को यह निर्धारित करने के बारे में जाने की सलाह देंगे कि वे उन क्षेत्रों में विशेषज्ञता या निर्माण में क्या रुचि रखते हैं?
एडम लेअर

2
@ अन्ना मुझे यकीन नहीं है कि मैं आपके सवाल को समझ सकता हूँ। मेरा मतलब है कि सैकड़ों विषय हैं - निम्न स्तर के सामान जैसे नेटवर्क प्रोटोकॉल या GPU के आंतरिक कामकाज से लेकर अत्यधिक सार, लगभग गणितीय विषय (पार्सिंग, टाइप सिस्टम, श्रेणी सिद्धांत, आदि)। सबसे बड़ी प्रतिभा उन सभी में महारत हासिल नहीं करेगी और किसी ऐसे व्यक्ति के लिए खुश होगी जो एक क्षेत्र में विशेषज्ञ है जहां वह, प्रतिभाशाली नहीं है। लेकिन आपके हित वास्तव में क्या हैं, जो आपको बता सकते हैं लेकिन आप?
इंगो

1
हाँ, हितों की खोज करना संभवतः काफी व्यक्तिगत है (या "अलग-अलग चीजों को आज़माने और आपको जो पसंद है उसे देखें) के लिए सलाह राशि", लेकिन विशेषज्ञता हासिल करने के बारे में क्या? आप कहते हैं कि यह सिर्फ एक दो भाषाओं को जानने से ज्यादा है। तो, एक नया विषय / विषय दिया, आप उस विशेषज्ञता को हासिल करने के लिए क्या करेंगे? मेरे लिए, एक ओएसएस परियोजना में शामिल होना उस प्रक्रिया का एक हिस्सा होगा, लेकिन अगर मैं आपको सही पढ़ा रहा हूं तो आप सुझाव दे रहे हैं कि परियोजना में शामिल होने से पहले एक विशेषज्ञ होना चाहिए।
एडम लेअर

मुझे क्या करना होगा? किताबें पढ़ें। पीडीएफ पढ़ें। किसी ऐसे व्यक्ति से चर्चा करें जिसे आप जानते हैं, या नेट में। कुछ करके देखें। अभ्यास। SO पर सभी प्रश्नों के उत्तर दें जो उस विषय के संबंध में आते हैं। फिर एक दिन ध्यान दें कि कुछ लोग आपसे बेहतर जानते हैं। - मुझे "विशेषज्ञ" के संबंध में शाब्दिक रूप से मत लेना, लेकिन याद रखें, ओपन सोर्स प्रोजेक्ट्स में, क्योंकि यह स्वैच्छिक है, किसी को काम करने के लिए मजबूर करने का कोई तरीका नहीं है - इसलिए लोग जो जानते हैं कि वे क्या कर रहे हैं और कौन चाहते हैं सिर्फ इतना करने के लिए कि आपका स्वागत है।
इंगो
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.