क्या एक शौकिया के लिए एक अच्छा प्रोग्रामर बनना संभव है? [बन्द है]


46

एक पेशेवर पूर्णकालिक प्रोग्रामर अपने काम से लगातार सीखकर एक अच्छा काम कर सकता है। एक अच्छा प्रोग्रामर बनने के लिए एक शौकिया प्रोग्रामर कैसे प्रशिक्षित कर सकता है?

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


3
सही। इसलिए वोज्नियाक तब तक एक अच्छा प्रोग्रामर नहीं था जब तक कि पहला ऐप्पल नहीं बिक गया (और वह इस तरह "पेशेवर" बन गया)।
कीथ

परिभाषित "अच्छा" ..

2
हर "अच्छा" प्रोग्रामर कभी शौकिया था।
स्पंदवफल

जवाबों:


84

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

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


9
+1 एक अच्छी टीम में काम करने के लिए। आपकी टीम में समान रूप से या उच्च कुशल लोगों का होना बेहद प्रेरक है।
बेनआर

मेरी 'नुकसान' की सूची में टीम का हिस्सा भूल गए, +1
कीपला

2
+1 मुझे लगता है कि यह कुंजी है: अच्छे लोगों से सीखना, जिनके पास आपसे अधिक अनुभव है। एक अच्छी टीम में शामिल होना बहुत आसान है, हालांकि कहा गया है।

1
अच्छी टीम बिट के लिए +1 । यदि टीम आपसे बेहतर या बेहतर नहीं है, तो आप सीखेंगे नहीं।
स्पेंसर रथबुन

4
अन्य लोगों से सीखने के लिए आपको एक टीम में रहने की आवश्यकता नहीं है।
इमानुइल रूसेव

53

प्रोग्रामिंग में अच्छा बनने का मार्ग गायन या संगीत चलाने के लिए समान है: अभ्यास, अभ्यास, अभ्यास। यदि आप कई वर्षों के लिए नियमित रूप से सॉफ्टवेयर विकसित करने में पर्याप्त समय बिताते हैं, तो संभावना है कि आप इसमें अच्छे हो जाएंगे - यह काम के घंटे के अंदर या बाहर हो।

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

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

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


3
+1 मैल्कम ग्लैडवेल का en.wikipedia.org/wiki/Outliers_(book)
स्टुपरयूसर

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

@ आपका लिंक लिंक टूट गया है (हाइपरलिंक में शामिल दूसरा कोष्ठक नहीं)।
पेपरजम

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

@ स्टीव 314, बेहतर पेशेवर सांसारिक थकाऊ कार्यों को स्वचालित करने के लिए उपकरण लिखेंगे। सही काम के लिए सही उपकरणों का उपयोग करके, मैंने कुछ कार्यों के लिए सैकड़ों कारकों से समय कम कर दिया है। (इससे भी बेहतर उपकरण उस कार्य को पूरी तरह से स्वचालित करने में सक्षम हो सकते हैं, लेकिन मैं उपकरण-लेखन के प्रयास और समय की बचत के एक अच्छे संतुलन की तरह महसूस करता हूं।)
22:24

18

लेकिन एक शौकिया प्रोग्रामर के लिए, एक अच्छा प्रोग्रामर बनने के लिए कैसे प्रशिक्षित किया जा सकता है?

आप सीखने से बेहतर बनते हैं, जो कि भाग कर रहा है, जो कुछ किया गया था उस पर प्रतिबिंबित करता है।

इसलिए मूल रूप से, हॉबीस्टिस्ट और पेशेवर के बीच कोई अंतर नहीं है, लेकिन 'नुकसान' की व्यवस्था थोड़ी अलग है।

शौकिया नुकसान, इमो हैं

  • अपने प्रोजेक्ट को पूरा करने की आवश्यकता, चाहे आप पेशेवर न हों, उतना मजबूत नहीं है । यह एक अच्छी बात हो सकती है, क्योंकि आपको गुणवत्ता प्राप्त होने पर कोनों को काटने के लिए उपयोग नहीं किया जाएगा, लेकिन परिष्करण (बिल्कुल भी! समय बेहतर है) एक बहुत ही महत्वपूर्ण कौशल है, जो एक शौकिया के रूप में प्रशिक्षित करना कठिन है। क्योंकि किसी प्रोजेक्ट को मरने देना और दूसरा शुरू करना आसान है।

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

पेशेवर नुकसान हैं

  • बेहतर पाने के लिए अक्सर बहुत कम प्रेरणा होती है । आप 40h / सप्ताह में हैं, कोई फर्क नहीं पड़ता कि आप कैंसर का इलाज ढूंढते हैं या केवल एक तरह से कॉफी पीते हैं जो उत्पादक लगता है। सीखना कुछ ऐसा है जो आप मुख्य रूप से खुद के लिए करते हैं, और अक्सर, यदि आप सीखी गई चीजों को लागू करने की कोशिश करते हैं, तो ऐसी ताकतें हैं जो उस के खिलाफ काम करती हैं (रूढ़िवादी समूहवाद, पदानुक्रम, यहां तक ​​कि स्टाइलगाइड को सुधार के खिलाफ हथियार के रूप में इस्तेमाल किया जा सकता है)। पेशे के लिए बहुत प्यार होता है बस इसे छोड़ना नहीं, अपने घंटों को हैक करना और जीवन में वैकल्पिक उद्देश्यों की तलाश करना।

  • वहाँ से सीखने के लिए अक्सर कम है । हां, कोई भी एक चुनौती के रूप में सब कुछ लेने की कोशिश कर सकता है, लेकिन हमें ईमानदार होना चाहिए: स्पेगेटी कोड के 1 वर्ष के बाद आपको अधिक वर्षों तक एक भाषा में रिफ्लेक्टर ("आप इसे जटिल कर रहे हैं!") की अनुमति नहीं देते हैं। अनुभव की तुलना में शायद यह पिछले जाएगा, केवल एक चीज जो सीखती है वह है निराशा और कॉर्पोरेट राजनीति के खिलाफ सहिष्णुता का निर्माण।

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

आप निश्चित रूप से करने की जरूरत नहीं है, लेकिन कितने संगीतकार वास्तव में अपनी नौकरी छोड़ने और अपने संगीत के साथ पैसा बनाने के अवसर को ठुकरा देंगे?

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


यह मेरी आत्मा को चोट पहुँचाता है, मेरे लिए यह बहुत सही है। स्पेगेटी कोड का 1 वर्ष आप रिफ्लेक्टर की अनुमति नहीं दे रहे हैं ("आप इसे जटिल कर रहे हैं!")
टेरेंस

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

@ क्रिस मैरिसिक: तब मुझे आपके साथ काम करके खुशी होगी। दुर्भाग्य से, तुम मेरे नियोक्ता की पंक्ति में अपवाद हो सकता है
keppla

8

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

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


6

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

बेशक आपको अपने ज्ञान को लागू करने की आवश्यकता है। एक इंटर्नशिप, दोस्तों के साथ एक परियोजना या अध्ययन पाठ्यक्रम के माध्यम से ऐसा करें। अपने आप को बेहतर बनाने के कई तरीके हैं, आप बस अपना खाली समय निवेश करने के लिए तैयार हैं। इसके अलावा, कुछ नया सीखने में मज़ा लें !


4

क्या एक शौकिया के लिए एक अच्छा प्रोग्रामर बनना संभव है?

हां, यह संभव है , हालांकि इसमें लंबा समय लगता है:

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


एक अच्छा प्रोग्रामर बनने के लिए एक शौकिया प्रोग्रामर कैसे प्रशिक्षित कर सकता है?

फिर से उसी स्रोत से :

  • प्रोग्रामिंग में रुचि लें
  • कार्यक्रम
  • अन्य प्रोग्रामर के साथ बात करें
  • यदि आप चाहते हैं, तो एक कॉलेज में चार साल लगाएं
  • अन्य प्रोग्रामर के साथ प्रोजेक्ट्स पर काम करें
  • अन्य प्रोग्रामर के बाद परियोजनाओं पर काम करें
  • कम से कम आधा दर्जन प्रोग्रामिंग भाषाएं सीखें

मुझे नहीं अक्सर +1 केवल लिंक से मिलकर उत्तर करते हैं, लेकिन इस लेख है पढ़ने लायक। धन्यवाद।
सरनॉल्ड

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

1
@gnat लिंक यह सब कहता है - उम्मीद है कि संपादन के बाद यह बेहतर है।
B15овиЈ

3

एक शौकिया के रूप में आपके पास कई पेशेवरों की तुलना में बेहतर प्रथाओं की तलाश करने के लिए अधिक विकल्प हैं। पेशेवर अक्सर "बस इसे पूरा करने" के लिए दबाव में होते हैं।

मैंने कोई भी पाठ्यक्रम नहीं देखा जैसे मैंने प्रोग्रामिंग सीखी थी, लेकिन मैंने विश्वविद्यालय में प्रस्तुत किए गए कुछ छोटे (1-3 घंटे) निशुल्क पाठ्यक्रमों से सीखा। उनका उद्देश्य व्यावसायिक लोगों को उनके लिए लिखे जा रहे कोड को समझने में सक्षम बनाना था। पाठ्यक्रमों में बहुत अच्छी तरह से लिखित कोड (टिप्पणियाँ शामिल) प्रस्तुत किए गए जो एक सामान्य वास्तविक जीवन की समस्या को हल करते हैं। फिर भाषा सुविधाओं की व्याख्या के साथ कोड की समीक्षा की गई और उनका उपयोग वहां क्यों किया गया, यह उन्होंने बताया। पूर्ण भाषा पाठ्यक्रमों में से कोई भी मैंने उस पाठ्यक्रम से कहीं भी गुणवत्ता में पास परिणाम में देखा है जो मैंने उस पाठ्यक्रम से सीखा है। कंप्यूटर विज्ञान का अध्ययन करने के लिए जाने से पहले यह कुछ साल था।

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

कुछ प्रमुख प्रथाओं को आपको सीखना चाहिए और लागू करना चाहिए:

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

2

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

हर्गिज नहीं। यह सॉफ्टवेयर इंजीनियरिंग है । यह "प्राकृतिक प्रतिभा" पर आधारित नहीं है। महान प्रोग्रामर होने के नाते शिक्षा के वर्षों और अनुभव के वर्षों पर आधारित है । आपको केवल वास्तविक परियोजनाओं पर काम करना है


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

2

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


2

क्या यह संभव है? हाँ। हालाँकि, आप जितना अधिक समय प्रोग्रामिंग में बिताएंगे उतना ही अधिक समय आप उस पर बेहतर पाएंगे। यह कहा गया है कि तकनीकी कौशल में विशेषज्ञता विकसित करने के लिए 10 साल / 10 000 घंटे का विचार-विमर्श अभ्यास होता है। आपके कम्फर्ट ज़ोन में कोडिंग के समान 10 000 घंटे नहीं हैं (जैसे, विभिन्न वेबसाइटों के लिए सरल jQuery कोड लिखना), लेकिन प्रोग्रामिंग / रीडिंग सोर्स कोड / राइटिंग सोर्स कोड / अन्य भाषाओं को सीखने / सीखने के 10 000 घंटे / दूसरों के साथ काम करना, आदि।

यदि आप समय के उस स्तर को समर्पित करने जा रहे हैं; आप प्रोग्रामर के रूप में अच्छी तरह से नौकरी पा सकते हैं और शौकिया स्थिति को गिरा सकते हैं। (जब तक कि आप स्वतंत्र रूप से धनवान न हों)।


1

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


1

दिए गए वास्तविक शब्द का मूल अर्थ (फ्रेंच शौकिया "के प्रेमी", पुरानी फ्रांसीसी से और अंत में लैटिन से amatorem । nom amator , "प्रेमी" - विकिपीडिया), एक विश्वास है कि पेशेवरों की एक बड़ी संख्या में भी शौकीनों हैं चाहते हैं। यदि आपको अपने शिल्प से प्यार नहीं है, तो क्या आप इसका अभ्यास करेंगे?

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


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

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

0

मुझे नहीं लगता कि यह एक अच्छे प्रोग्रामर को परिभाषित करता है। लेकिन उनके खुद के बारे में कुछ सीखना और लोगों के समूह के साथ काम करना कुछ अलग है। भावुक शौकिया प्रोग्रामर वास्तव में नई चीजें सीखने और हैकिंग करने के लिए। वहाँ वे चीजों को और अधिक दिलचस्प लग रहे थे। लेकिन लोगों के एक समूह के साथ काम करना एक अनुशासित कार्य है, जहाँ आप उस क्षेत्र के विशेषज्ञों से सहयोग, संवाद, साझा / जानकारी प्राप्त करते हैं।

लेकिन ज्ञान प्राप्त करना केवल जुनून की बात है। ऐसे लोग हैं, जिन्होंने खुद सामान सीखने के लिए रातें बिताईं और आखिर में दुनिया के लिए कुछ नया लेकर आए जैसे बिल जी मार्क जुक आदि की तुलना आसानी से की जा सकती है। लेकिन अगर आप एक बेहतर सॉफ्टवेयर इंजीनियर बनना चाहते हैं (मैं प्रोग्रामर को फोन नहीं करूंगा) किसी अच्छे उत्पाद के लिए किसी कंपनी में काम करते हैं या काम करते हैं।

अंत में अपने कौशल, दृष्टिकोण, उद्योग अपडेट को बेहतर बनाने, स्वाद विकसित करने और एक जुनून के साथ जाने के लिए बहुत कुछ पढ़ें। चीजें आसानी से आपका पीछा करेंगी!


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

मुझे संदेह है कि क्या हार्वर्ड ने geeky पर्यावरण को छोड़कर अपने प्रोग्रामिंग कौशल विकसित करने में महत्वपूर्ण भूमिका निभाई है!
शरत्

0

इस सवाल पर, "क्या कोई शौकिया प्रोग्रामर प्रसिद्ध हो गया है?" जवाब है "हां, लेकिन ज्यादातर इस तरह से नहीं रहे।" सबसे प्रसिद्ध उदाहरण मैं सोच सकता हूं कि रॉय फील्डिंग ने अपने सबसे महत्वपूर्ण काम में से कुछ किया है, जबकि (मेरा मानना ​​है) विश्वविद्यालय में अवैतनिक (शौकिया का अर्थ परिभाषा द्वारा संयुक्त राष्ट्र का भुगतान नहीं) है।

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

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


0

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

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

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.