लोकप्रिय open source प्रोजेक्ट बनाने के टिप्स
(skerritt.blog)<p>"नेटवर्क प्रभाव: जितने ज़्यादा लोग इसे खोजेंगे, उतने ज़्यादा उपयोगकर्ता बढ़ेंगे, उतनी ज़्यादा भागीदारी होगी, फीचर्स बेहतर होंगे, और यह उतना ही अधिक प्रसिद्ध होता जाएगा"<br />
लोकप्रिय बनने के लिए क्या करना चाहिए?<br />
<br />
#1. अच्छी तरह डिज़ाइन किया गया README <br />
- शुरुआत में संक्षेप में समझाएँ <br />
→ यह क्या करता है?<br />
→ क्या यह मेरी समस्या हल करता है?<br />
→ क्या यह मेरी समस्या को प्रतिस्पर्धियों से बेहतर हल करता है?<br />
→ इसे install कैसे करूँ?<br />
→ मुझे कौन-कौन से बुनियादी commands जानने चाहिए?<br />
→ मदद चाहिए तो कहाँ जाऊँ?<br />
<br />
1.1 प्रोजेक्ट का सार बताने वाला header बनाना <br />
→ logo: Canva जैसी जगहों पर GIF logo बनाना <br />
→ slogan: एक पंक्ति में प्रोजेक्ट का वर्णन। इसे GitHub के Desc में लगाएँ<br />
⇨ तुरंत ध्यान खींचने वाला हो<br />
⇨ उपयोगकर्ता को इसकी ज़रूरत क्यों है <br />
⇨ यह दूसरों से बेहतर क्यों है <br />
⇨ समझने में आसान हो <br />
⇨ उदाहरण) hugo : The world’s fastest framework for building websites<br />
→ badge: छोटे image/link जिनसे प्रोजेक्ट समझाया जा सके <br />
⇨ हाल की activity count, downloads, chat room में कितने लोग हैं, supported versions, license.. आदि <br />
→ quick install: आसान और तेज़ installation command तुरंत दिखाई दे<br />
⇨ जो लोग पहले से जानकर आए हैं वे तुरंत इसे आज़मा सकें <br />
⇨ जैसे Docker/PIP से one-line install हो सकता है, ऐसी बात को शुरुआत में ही दिखाएँ <br />
⇨ docker run -it --rm remnux/ciphey<br />
→ quick links (ज़रूरी नहीं)<br />
⇨ website, forum, docs, install guide, contribution guide, Twitter आदि<br />
<br />
1.2 "What is This?" प्रोजेक्ट को संक्षेप में समझाना <br />
→ छोटा परिचय + प्रोजेक्ट कैसे काम करता है यह दिखाने वाला GIF + वे ज़रूरी फीचर्स जिन्हें लोग देखना चाहेंगे <br />
→ उदाहरण) Starship: दो columns में बाईं ओर मुख्य फीचर्स का परिचय, दाईं ओर काम करता हुआ GIF <br />
→ सभी फीचर्स दिखाने की ज़रूरत नहीं। केवल वे चीज़ें सूचीबद्ध करें जिन्हें उपयोगकर्ता देखना चाहेंगे, और उन्हें आसान भाषा में समझाएँ <br />
<br />
1.3 "X vs Y" प्रतिस्पर्धियों से तुलना <br />
→ यह दिखाना चाहिए कि प्रतिस्पर्धियों के बजाय इस प्रोजेक्ट को क्यों चुनना चाहिए <br />
→ फ़ायदे आसानी से दिखाई देने चाहिए<br />
→ यह Lean Startup में "औसत उपयोगकर्ता" से पहले "early adopter" खोजने जैसा है <br />
⇨ यदि आपके पास बेहतर फीचर्स हैं, तो ऐसे लोग जो नए टूल पर जाने से हिचकिचाते नहीं <br />
→ केवल तब "औसत उपयोगकर्ता" को लक्ष्य बनाना सही है जब कोई प्रतिस्पर्धी ही न हो, या मौजूदा solutions आपकी तुलना में बहुत जटिल हों <br />
→ सबसे आसान तरीका है मुख्य फीचर्स की comparison table बनाना<br />
⇨ बातों की बजाय numbers में दिखाएँ <br />
⇨ काम करने के तरीके को GIF से तुलना करके दिखाना भी अच्छा है <br />
<br />
1.4 बेहतरीन documentation बनाना <br />
→ सारी documentation को README में डालने की ज़रूरत नहीं। इससे update और search करना मुश्किल हो जाता है और README देखना भी कठिन बनता है <br />
→ ऊपर installation method लिख चुके हैं, तो अतिरिक्त रूप से यह दिखाएँ <br />
⇨ इसे चलाना कैसे है<br />
⇨ documentation कहाँ मिल सकती है<br />
⇨ support कैसे प्राप्त किया जा सकता है <br />
→ इसे चलाने का तरीका GIF से दिखाना भी अच्छा है <br />
<br />
1.5 contribution का तरीका बताना, contributors को धन्यवाद देना और उनका स्वागत करना <br />
→ प्रोजेक्ट में योगदान कैसे करें<br />
→ पुराने contributors को धन्यवाद दें <br />
→ all-contributors जैसे bot का उपयोग करें <br />
<br />
#2. वही बनाइए जो लोग चाहते हैं <br />
→ अच्छा README लोगों का ध्यान खींचता है, और जो प्रोजेक्ट उनकी "समस्या हल" करता है वह लोगों को उसके बारे में बात करने पर मजबूर करता है <br />
<br />
2.1 पहले समस्या, बाद में उत्पाद<br />
→ किसी उत्पाद को बनाने के लिए कुछ न बनाएँ, बल्कि किसी समस्या को हल करें <br />
→ "प्रगति केवल बड़े छलांगों से नहीं, बल्कि सैकड़ों छोटे कदमों से भी आती है"<br />
<br />
2.2 समस्या के साथ जीना <br />
→ यदि समस्या ही नहीं है, तो उसे प्रभावी ढंग से हल भी नहीं किया जा सकता <br />
→ random ideas बनाने की तुलना में, अपनी ही ज़िंदगी में मौजूद समस्याओं को देखना कहीं आसान है <br />
→ जब आपको पता चलता है कि समस्या है, तो आप दो बातें जान लेते हैं: सच में समस्या मौजूद है, और यह कि दूसरे लोगों के पास भी वही समस्या है।<br />
<br />
2.3 community में समस्याएँ ढूँढना <br />
→ community को ध्यान से देखें तो लोग अपने सामने आने वाली समस्याएँ खुद ही दिखा देते हैं <br />
→ जितने ज़्यादा लोग होंगे, और जितना ज़्यादा आप सुनेंगे, उतने ज़्यादा ideas सीधे अपने दम पर सोचने से भी अधिक मिलेंगे <br />
→ community की समस्या को हल करने वाला MVP(Minimum Viable Product) बनाकर देखें <br />
→ उसे community के साथ साझा करें, असर मापें, बेहतर बनाना सीखें, फिर दोबारा बनाएँ या चीज़ें जोड़कर सुधार करें <br />
<br />
#3. इसे लोगों तक पहुँचाइए <br />
→ चाहे कितना भी अच्छा बनाया हो, अगर उसे सार्वजनिक नहीं किया तो कोई नहीं देखेगा <br />
→ यदि आपने पहले community का उपयोग किया है, तो अच्छी बात है कि वे पहले से उसके बारे में जानेंगे और उसे इस्तेमाल करेंगे <br />
→ GitHub Star का 0 से 1 होना मुश्किल है, लेकिन 10 से 100 जाना आसान है <br />
<br />
3.1 community में साझा करें <br />
→ Build, Measure, Learn loop <br />
→ पहले असली release के समय यह ज़रूर सुनिश्चित करें कि community को पता चले। वे इसे अपने दोस्तों के साथ साझा करेंगे<br />
<br />
3.2 News Aggregators <br />
→ इच्छित Subreddit <br />
→ HackerNews (संपादकीय टिप्पणी: GeekNews भी!)<br />
→ Lobste.rs <br />
<br />
3.3 Awesome List <br />
→ topic से संबंधित list खोजें और PR भेजें </p>
2 टिप्पणियां