यह wikiHow आपको सिखाता है कि प्रोग्रामिंग समुदाय में फ्री, ओपन सोर्स सॉफ्टवेयर का विकास और रखरखाव कैसे शुरू करें। जबकि ऐसा करने वाले लोगों को कभी-कभी "सॉफ़्टवेयर हैकर्स" के रूप में संदर्भित किया जाता है, स्थिति स्वयं सॉफ़्टवेयर को बनाने और उसमें सेंध लगाने की तुलना में अधिक उन्मुख होती है। यदि आप उस तरह के हैकर बनने में रुचि रखते हैं जो सॉफ़्टवेयर या ऑपरेटिंग सिस्टम में कमजोरियों की तलाश करता है और उनका फायदा उठाता है, तो कृपया इसके बजाय हैकर बनने पर हमारा लेख देखें।
कदम
चरण 1. समझें कि सॉफ्टवेयर विकास के लिए क्या आवश्यक है।
एक सॉफ़्टवेयर हैकर होने का अर्थ है कि आप उपयोगकर्ताओं को संतुष्ट करने और अपने सॉफ़्टवेयर को प्रासंगिक बनाए रखने के लिए अपना बहुत सारा समय मुफ़्त सॉफ़्टवेयर बनाने, उसमें सुधार करने और अद्यतन करने में खर्च करेंगे। इसके लिए, आपको निम्नलिखित मानदंडों को पूरा करना होगा:
- सिस्टम लैंग्वेज (जैसे, C++) और प्रोग्रामिंग लैंग्वेज (जैसे, Python) दोनों पर अच्छी पकड़ हो।
- जानें कि आप किस प्लेटफॉर्म के लिए प्रोग्राम करना चाहते हैं (जैसे, विंडोज, एंड्रॉइड, आदि)
- अपनी चुनी हुई भाषाओं, प्लैटफ़ॉर्म और सॉफ़्टवेयर शैली के बारे में सीखने में बहुत समय बिताने के लिए तैयार रहें
स्टेप 2. जान लें कि कोई भी फ्री सॉफ्टवेयर हैकर बन सकता है।
आम धारणा के विपरीत, गणित की असाधारण समझ, पिछले कोडिंग ज्ञान, और/या कंप्यूटर विज्ञान (या इसी तरह) में कॉलेज की डिग्री होना आपके लिए एक मुफ्त सॉफ्टवेयर हैकर बनने का तरीका सीखने के लिए आवश्यक नहीं है।
जब तक आप वैध रूप से सॉफ़्टवेयर विकसित करना सीखने में रुचि रखते हैं और जहाँ उपयुक्त हो, आप आलोचना स्वीकार करने के इच्छुक हैं, यह सोचने का कोई कारण नहीं है कि आप सफलतापूर्वक सॉफ़्टवेयर हैकर नहीं बन सकते।
चरण 3. अपने अंतिम लक्ष्य का पता लगाएं।
सॉफ्टवेयर विकास का उपयोग साधारण शौक से लेकर पूर्णकालिक करियर तक किसी भी चीज के लिए किया जा सकता है; प्रोग्रामिंग भाषा सीखने या मंच का चयन करने से पहले आप क्या हासिल करना चाहते हैं, यह जानने से आपको सड़क पर ध्यान केंद्रित रखने में मदद मिलेगी।
- जबकि यह कड़ाई से आवश्यक नहीं है, कंप्यूटर विज्ञान या सॉफ्टवेयर विकास में एक डिग्री आपके रोजगार में तेजी लाने में मदद करेगी यदि सॉफ्टवेयर विकास में करियर आपका अंतिम लक्ष्य है।
- यदि आपका लक्ष्य केवल एक ऐसा ऐप या प्रोग्राम बनाना है जो उपयोगकर्ताओं को पहले के कठिन या असंभव कार्य को पूरा करने में मदद करता है, तो सुनिश्चित करें कि विचाराधीन सॉफ़्टवेयर पहले से ही विकसित नहीं हो रहा है।
चरण 4. एक मंच निर्धारित करें जिस पर आप काम करना चाहते हैं।
प्रत्येक मुख्य प्लेटफॉर्म- विंडोज, मैकओएस, आईओएस, एंड्रॉइड और लिनक्स- का अपना समुदाय, पसंदीदा प्रोग्रामिंग भाषाएं और व्यक्तिगत जरूरतें हैं। सॉफ़्टवेयर विकास में गोता लगाने से पहले यह जानना महत्वपूर्ण है कि आपका सॉफ़्टवेयर किस प्लेटफ़ॉर्म पर लागू होगा।
- उसी प्लेटफॉर्म पर काम करना सबसे अच्छा है जिसके लिए आप विकास कर रहे हैं। उदाहरण के लिए, यदि आप एक एंड्रॉइड ऐप विकसित कर रहे हैं, तो यूनिक्स-आधारित सिस्टम जैसे मैक या लिनक्स कंप्यूटर का उपयोग करना विंडोज का उपयोग करने से बेहतर है।
- लिनक्स कई सॉफ्टवेयर डेवलपर्स के लिए आमतौर पर इस्तेमाल किया जाने वाला (और मुफ्त) समाधान है।
चरण 5. एक कोडिंग भाषा चुनें।
कोडिंग भाषाएं दो प्रकार की होती हैं; विकास में कूदने से पहले आपको प्रत्येक में से कम से कम एक सीखना होगा, हालांकि आपको अंततः कई भाषाओं को जानने की आवश्यकता होगी:
- सिस्टम भाषाएं - एक कंप्यूटर भाषा जो सीधे सिस्टम के साथ इंटरफेस करने के लिए प्रयोग की जाती है। सामान्य उदाहरणों में C, C++ और Java शामिल हैं।
- प्रोग्रामिंग भाषाएं - आपके सॉफ़्टवेयर के इंटरफ़ेस को डिज़ाइन करने के लिए उपयोग की जाने वाली भाषा (उदाहरण के लिए, उपयोगकर्ता क्या देखेंगे) साथ ही साथ इसके कार्य भी। सामान्य उदाहरणों में पायथन, रूबी और पर्ल शामिल हैं।
चरण 6. कमांड लाइन के साथ सहज हो जाएं।
प्रत्येक कंप्यूटर में एक कमांड लाइन एप्लिकेशन होता है (जैसे, विंडोज के लिए कमांड प्रॉम्प्ट, मैक और लिनक्स के लिए टर्मिनल, आदि)। आप कंप्यूटर के साथ संचार करने के लिए कमांड लाइन का उपयोग कर सकते हैं, जिससे आप आवश्यकतानुसार विस्तृत आदेश जारी कर सकते हैं।
जबकि आप अपने सॉफ़्टवेयर विकास का बड़ा हिस्सा कमांड लाइन से ही नहीं करेंगे, आपको कुछ प्रोग्राम चलाने या अपने कंप्यूटर के साथ सॉफ़्टवेयर कमांड को एकीकृत करने के लिए कमांड लाइन का उपयोग करने की आवश्यकता होगी।
चरण 7. नोटपैड++ को डाउनलोड करें और उपयोग करें।
नोटपैड ++ एक अमूल्य प्रोग्रामिंग संसाधन है क्योंकि यह दोनों दृश्य एड्स को लागू करके कोडिंग को ट्रैक करना आसान बनाता है और एक शैक्षिक उपकरण के रूप में कार्य करता है।
जब आप अंततः अपने कोड की एक बड़ी मात्रा लिखने के लिए विभिन्न कमांड लाइन-आधारित पाठ संपादकों और कार्यक्रमों का उपयोग करेंगे, तो नोटपैड ++ एक अभूतपूर्व (और मुफ़्त) सीखने का उपकरण है जब आप पहली बार शुरुआत कर रहे हैं।
चरण 8. एक विकास वातावरण स्थापित करें।
आपकी चुनी हुई प्रोग्रामिंग भाषाओं और प्लेटफार्मों में विकास सॉफ्टवेयर होने की सबसे अधिक संभावना है जो आपको अपने कंप्यूटर से अपनी परियोजनाओं को सहेजने और परीक्षण करने की अनुमति देता है; ऐसे सॉफ़्टवेयर को "विकास पर्यावरण" कहा जाता है। यदि संभव हो, तो प्रोग्राम सीखना शुरू करने से पहले अपनी चुनी हुई भाषा के लिए एक विकास वातावरण खोजें और स्थापित करें।
- उदाहरण के लिए, यदि आप एक Android ऐप विकसित कर रहे हैं, तो आप Android Studio डेवलपमेंट किट डाउनलोड और इंस्टॉल करेंगे।
- जावा उपयोगकर्ता अक्सर एक्लिप्स जैसे विकास वातावरण का उपयोग करेंगे।
चरण 9. प्रोग्राम करना सीखना शुरू करें।
एक बार जब आप जान जाते हैं कि आप किस भाषा का उपयोग करना चाहते हैं, तो इसका उपयोग करना सीखना शुरू करने का समय आ गया है। कई ऑनलाइन ट्यूटोरियल हैं- दोनों मुफ़्त और सशुल्क-जिसमें आप भाग ले सकते हैं, और अधिकांश पुस्तकालय प्रोग्रामिंग भाषा-विशिष्ट पुस्तकें (जैसे, डमीज़ के लिए सी ++) ले जाएंगे जो आपको पूरी भाषा को निःशुल्क करने की अनुमति देगा।
मुफ्त प्रोग्रामिंग संसाधन ऑनलाइन प्रचुर मात्रा में हैं, इसलिए सशुल्क वर्ग या बूटकैंप के लिए साइन अप करने से पहले अपने लाभ के लिए इनका उपयोग करें।
चरण 10. एक समुदाय खोजें जो आपकी पसंदीदा श्रेणी में संचालित हो।
ओपन सोर्स प्रोजेक्ट जैसे कि सोर्सफोर्ज या गिटहब पर पाए जाने वाले अक्सर उत्साही अनुयायी होते हैं; यदि आप एक ऐसी परियोजना ढूंढ सकते हैं जो समान प्रोग्रामिंग भाषा का उपयोग करती है और/या आपकी अपनी परियोजना के समान लक्ष्य है, तो आप सुझाव जोड़ने और विकास प्रक्रिया का निरीक्षण करने के लिए समुदाय में शामिल हो सकते हैं।
किसी भी कौशल की तरह, सृजन प्रक्रिया में शामिल होना (भले ही आप केवल एक पर्यवेक्षक हों) व्यावहारिक अनुभव प्राप्त करने का सबसे अच्छा तरीका है।
चरण 11. समुदाय के साथ बातचीत करें।
आप समुदाय के फ़ोरम में पोस्ट करने से लेकर अपना स्वयं का ओपन सोर्स प्रोजेक्ट शुरू करने तक कुछ भी कर सकते हैं, लेकिन मुख्य लक्ष्य समुदाय द्वारा अपने विचारों और बाधाओं को चलाना और उनकी प्रतिक्रिया सुनना है।
यदि आप अपनी खुद की ओपन सोर्स परियोजना शुरू करते हैं, तो परियोजना की दिशा के संदर्भ में समुदाय के साथ समझौता करने के लिए तैयार रहें।
चरण 12. योगदान करने के लिए ओपन-सोर्स प्रोजेक्ट देखें।
जैसा कि अक्सर सॉफ्टवेयर विकास के मामले में होता है, हो सकता है कि आपका मुख्य विचार या पालतू परियोजना पहले से ही आपके पास से कहीं अधिक अनुभव वाले समुदाय द्वारा चल रही हो। यदि हां, तो परियोजना में शामिल होने के लिए कहने पर विचार करें। यह दोनों आपकी समझ को आगे बढ़ाएंगे कि सॉफ़्टवेयर प्रोजेक्ट कैसे काम करते हैं और समूह सेटिंग में यद्यपि आपकी परियोजना को जीवन में लाने में आपकी सहायता करते हैं।
ओपन सोर्स प्रोजेक्ट आपका अंतिम लक्ष्य नहीं हो सकता है, लेकिन वे उपयोगकर्ता-उन्मुख उत्पाद बनाने के लिए कई अलग-अलग दृष्टिकोणों को एक साथ देखने के लिए एक शानदार तरीके के रूप में कार्य करते हैं।
चरण 13. अपने काम की सार्वजनिक आलोचनाओं को स्वीकार करें।
जैसे-जैसे आप अपने सॉफ़्टवेयर विकास के साथ आगे बढ़ते हैं और अपना कार्य सबमिट करते हैं, आप आलोचनाओं के अधीन होंगे। सामुदायिक प्रतिक्रिया सुनने से आपके भविष्य के विकास की संरचना में मदद मिलेगी, लेकिन यह आपको बाद की परियोजनाओं के लिए समान समस्याओं से निपटने के लिए मूल्यवान शॉर्टकट और तरीके भी सिखाएगा।
सभी फीडबैक रचनात्मक नहीं होंगे। यदि आपको असभ्य या अनुचित प्रतिक्रिया मिलती है, तो जवाब देने के लिए विनम्र होना याद रखें।
चरण 14. सॉफ्टवेयर विकास चुनौतियों, कार्यक्रमों या प्रतियोगिताओं में भाग लें।
आप अक्सर अपने समुदाय के मंचों में, क्रेगलिस्ट जैसे स्थानों और परिसरों में चुनौतियां, बूटकैंप, व्याख्यान, कक्षाएं और एकमुश्त प्रतियोगिताएं पाएंगे। ऐसे किसी भी आयोजन या शिविर के लिए साइन अप करने से आपको समान विचारधारा वाले साथियों के साथ वातावरण में रखते हुए कुछ निर्देशित अनुभव मिलेगा।
एक विकल्प Google का समर ऑफ कोड प्रोग्राम है, जो छात्रों को ओपन सोर्स प्रोजेक्ट्स और कम्युनिटी कोडिंग से परिचित होने में मदद करता है।
चरण 15. अपने कौशल को विकसित करना जारी रखें।
सॉफ़्टवेयर विकास एक ऐसा क्षेत्र है जो केवल प्रौद्योगिकी के विकसित होने के साथ ही बढ़ता रहेगा, इसलिए सुनिश्चित करें कि आप अपने पसंदीदा क्षेत्र में नई परियोजनाओं, भाषाओं, ऑपरेटिंग सिस्टम और किसी भी अन्य प्रासंगिक जानकारी के बारे में लगातार सीख रहे हैं।
एक मुफ्त सॉफ्टवेयर हैकर की अधिकांश सफलता जिज्ञासा पर निर्भर करती है। जब तक आप प्रश्न पूछते रहेंगे और उत्तर खोजते रहेंगे, सॉफ्टवेयर विकास के साथ आपका समय उत्पादक और लंबे समय तक चलने वाला होगा।
टिप्स
- सी (या सी ++) सीखने से शुरू करना और पायथन आपको अपेक्षाकृत अच्छी स्थिति में रखेगा, हालांकि जावा एक लोकप्रिय प्रारंभिक बिंदु भी है।
- अंत में, आप एक मुफ्त सॉफ्टवेयर हैकर के रूप में अपने समय के दौरान कई कंप्यूटर भाषाएं सीख लेंगे।
- कंप्यूटर प्रोग्रामिंग डराने वाली लग सकती है, लेकिन यह केवल कंप्यूटर से उस भाषा में बात कर रहा है जिसे कंप्यूटर समझता है।
चेतावनी
- एक परित्यक्त परियोजना को पुनर्जीवित करने का प्रयास करना अनुचित है जो पहले ही अपनी पिछली टीम खो चुकी है।
- किसी ओपन सोर्स प्रोग्राम के डिस्कशन पेज में प्रोग्रामिंग या प्रोग्रामिंग टूल्स के मूल सिद्धांतों से संबंधित कोई भी प्रश्न पूछने से बचें। एक मुफ्त सॉफ्टवेयर प्रोग्रामर का समय मूल्यवान होता है। इसके बजाय, शौकिया या नए प्रोग्रामर के लिए समुदायों में प्रोग्रामिंग की बुनियादी बातों पर चर्चा करें।
- एक समय में कुछ घंटों से अधिक कंप्यूटर पर बैठने से आपके संपूर्ण स्वास्थ्य पर स्थायी प्रभाव पड़ सकता है। उठना और खिंचाव करना, स्क्रीन से दूर देखना और हर दो घंटे में कम से कम एक बार घूमना याद रखें।
- धैर्य रखें। किसी भी कौशल को सीखने की तरह, एक मुफ्त सॉफ्टवेयर हैकर बनने में समय और दृढ़ संकल्प लगेगा।