2010-01-08 33 views
13

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

मुझे स्पष्ट होना चाहिए कि मैं पैसे के लिए खुली-सोर्स परियोजनाओं का व्यावसायीकरण करने का इरादा नहीं रखता हूं। मुझे इतना पता है। मैं सिर्फ अपनी दृष्टि का नियंत्रण रखना चाहता हूं जो मैं शुरू करता हूं।

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

क्या मैं गलत पेड़ को भड़क रहा हूं?

+0

यह बहुत ही व्यक्तिपरक है, और इसलिए यह समुदाय विकी के रूप में प्रसन्न थे। वास्तव में – bmargulies

+0

। समुदाय यह है। –

+0

मैं वही काम करने के बारे में सोच रहा हूं; हालांकि, मैं खुद के अधिकांश परियोजनाओं को कोडिंग करने की योजना बना रहा हूं और बस दूसरों को इसे विस्तारित करने की अनुमति देता हूं। मुझे नहीं लगता कि आपको अधिकार बनाए रखने की उम्मीद करनी चाहिए यदि आप काम के कम से कम 50 प्रतिशत नहीं करते हैं। – slimbo

उत्तर

12

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

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

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

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

पर्याप्त साबुन बॉक्स।प्रोजेक्ट मैनेजमेंट के मामले में, भूमिका को दो कार्यों में विभाजित करें: 1) कार्यकर्ताओं को शामिल करना, कार्य, कोड समीक्षा, मार्गदर्शन और दिशा इत्यादि लेना आदि। मेरा विश्वास करो, यह बिक्री की नौकरी है क्योंकि यह विश्वसनीयता-आधारित है। टॉप-डाउन, पदानुक्रमित, वरिष्ठता-आधारित I-was-here- पहली तरह की उम्मीदें स्वयंसेवकों को आपकी परियोजना से दूर करने का एक निश्चित तरीका है। 2) रिपोजिटरी रसद। अंत में, आप नियंत्रित कर सकते हैं कि कौन हैं/कम नहीं हैं, उनकी अनुमतियां आदि हैं। यदि आप # 1 अच्छी तरह से करते हैं, तो यह स्वयं का ख्याल रखेगा।

कमेंटरी के पिछले बिट के रूप में, ओपन सोर्स प्रोजेक्ट जमीन से प्राप्त करने के लिए आसान नहीं है। आपके प्रोजेक्ट पैरों को देने के लिए जरूरी निरंतर प्रयासों को प्रस्तुत करने के इच्छुक लोगों की तुलना में अधिक परियोजनाएं हैं।

गुड लक!

+1

+1 बहुत गहन और ऋषि सलाह +1 –

1

गायब घटक की तरह लगता है कुछ उत्साही डेवलपर्स जो आपके विचारों से प्यार करते हैं और मुफ्त में काम करने के लिए तैयार हैं।

मुझे नहीं लगता कि वे सिर्फ इंटरनेट से बाहर निकलते हैं; आपको उन्हें ढूंढने की आवश्यकता होगी।

और एक बार आप उन्हें मिल जाए, आप अच्छी तरह से कुछ या कि नियंत्रण के सभी दे मतलब हो सकता है जो उन्हें रुचि रखने की जरूरत है, ...

अपने आप से पूछें कि क्या आपका लक्ष्य है यहाँ करने के लिए एक सॉफ्टवेयर नवीनता देने दुनिया, या एक पालतू परियोजना है?

+0

लेकिन प्रश्न के मूल के बारे में क्या, एक बार चलने पर नियंत्रण बनाए रखना? –

+0

मैंने शीर्षक को संशोधित करने के लिए और अधिक सटीक रूप से प्रतिबिंबित किया है कि मैं क्या कर रहा हूं - आपकी पहली पोस्ट ने मुझे एहसास दिलाया कि यह बेहतर शब्द हो सकता है। धन्यवाद। –

3

लिनस टोरवाल्ड्स ने google talk पर एक अच्छा भाषण दिया था कि वह ओपन सोर्स समुदाय से सभी कोड शामिल करने से बचने के लिए (अन्य विषयों के साथ) गिट का उपयोग कैसे कर रहा है! यह जांचने लायक है!

6

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

+0

+1: मुझे इसे हराया। – NotMe

+5

जब तक कोई फैसला नहीं करता है कि वे आपकी दृष्टि पसंद नहीं करते हैं और केवल परियोजना को फोर्क करते हैं। –

+2

+1 99.9% लोग आपकी परियोजना के बारे में कुछ भी करने की परवाह नहीं करेंगे। –

1

वैसे यह इस बात पर निर्भर करता है कि आप किस प्रकार की परियोजना को खोल रहे हैं।

क्या आप एक छोटी लाइब्रेरी में रूबी जेम, या एक PHP पीईआर पैकेज में एक कसकर परिभाषित कोर कार्यक्षमता खोल रहे हैं, या आप अगले वर्डप्रेस को बनाने के लिए देख रहे हैं जहां लाखों उपयोगकर्ताओं की राय है?

मैं छोटा शुरू करने का सुझाव दूंगा। जो कुछ आपने पहले लिखा है उसका प्रयोग करें, और दूसरों द्वारा इसका उपयोग किया जा सकता है:

  1. एक jQuery प्लगइन।
  2. एक वर्डप्रेस प्लगइन।
  3. एक PHP पीईआर पैकेज या ज़ेंड फ्रेमवर्क के लिए एक प्रस्ताव।
  4. एक रूबी जेम जो एक व्यवहार बनाता है जिसे रेल में उपयोग किया जा सकता है।
  5. एक मॉड्यूल, या कुछ ओपन सोर्स सीएमएस में जोड़ें।

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

इस तरह लोगों को अपने कोड के साथ काम कर सकते हैं, लेकिन अंत में, आप क्या सरकारी परियोजना में वापस चला जाता है के नियंत्रण है।

2

भले ही आप किसी भी व्यक्ति को पकड़ने के लिए किसी भी भंडार में स्रोत उपलब्ध कराते हैं, फिर भी आप भंडार पर नियंत्रण बनाए रखते हैं: आप तय करते हैं कि किसके पास पहुंच है, आप तय करते हैं कि कौन से पैच किए गए हैं (या कम से कम, आप तय करते हैं कि कौन निर्णय लेता है कौन सा पैच प्रतिबद्ध हैं)।

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

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

बेशक

, इसका मतलब है आप, समुदाय के लिए कुछ नियंत्रण सौंप दिया गया है क्योंकि अगर आप हठ उन्हें देने के लिए वे क्या चाहते हैं वे एक कांटा बनाने के लिए जा रहे हैं मना ..

+0

* के लिए +1 "जबकि अन्य लोगों के पास आपके कोड के उपयोगी होने के बारे में एक अलग विचार हो सकता है" * क्योंकि यह एक वैकल्पिक परिप्रेक्ष्य प्रदान करता है कि कांटा एक दुर्भावनापूर्ण कार्य नहीं है। –

0

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

3

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

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

1

असल में, आप नहीं कर सकते।

आप किसी दूसरे व्यक्ति कांटा अपने कोड को रोकने और एक नई परियोजना शुरू नहीं कर सकते।

अधिक से अधिक आप क्या कर सकते एक लाइसेंस का कहना है कि स्रोत कोड एक ही उत्पाद के लिए इस्तेमाल नहीं किया जा सकता है लेने के लिए है (मैं नहीं जानता कि जो लाइसेंस इस है, लेकिन यह मौजूद है)

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

अपने परियोजना विभाजित है, तो आपके लिए नई सुविधाओं कम अन्य आकर्षक बना देंगे।

अंत में, अपनी परियोजना के लिए यदि आप इस पर काम नहीं है और यह मर छोड़ काँटेदार कर दिया जाएगा। अन्यथा कोई भी नहीं आएगा और जब आप सभी कड़ी मेहनत कर रहे हों तो अपनी परियोजना काट लेंगे?

यहाँ इस विषय पर दिलचस्प वीडियो की एक जोड़ी है:

http://www.youtube.com/watch?v=-F-3E8pyjFo

http://www.youtube.com/watch?v=0SARbwvhupQ

संबंधित मुद्दे

 संबंधित मुद्दे