Mindset changes for learning to code effectively
कोड सीखना एक यात्रा है जिसे कई लोग शुरू करने का सपना देखते हैं लेकिन अक्सर रास्ते में चुनौतियों का सामना करते हैं। एक सॉफ़्टवेयर डेवलपर बनने का मार्ग केवल ट्यूटोरियल और सही प्रोग्रामिंग भाषा चुनने के बारे में नहीं है। यह किसी की मानसिकता और सीखने के दृष्टिकोण से भी भारी रूप से प्रभावित होता है। इस लेख में, हम कुछ ऐसे परिवर्तनकारी मानसिकता परिवर्तनों का अन्वेषण करेंगे जो आपके प्रोग्रामिंग सीखने और एक सॉफ़्टवेयर इंजीनियर के रूप में विकसित होने के तरीके को नाटकीय रूप से सुधार सकते हैं।
चाहे आप शुरुआत कर रहे हों या पहले से ही कोडिंग में कदम रख चुके हों, ये सिद्धांत आपके तकनीकी विकास और व्यक्तिगत विकास में योगदान कर सकते हैं।
Focus on practice, not theory
Start of the video discussing the first mindset shift
मानसिकता में पहला और शायद सबसे महत्वपूर्ण परिवर्तन यह है कि अभ्यास पर ध्यान केंद्रित करें न कि सिद्धांत पर। वक्ता शुरू करते हैं यह साझा करके कि उन्होंने शुरुआत में "10,000 घंटे के नियम" को गलत समझा था। यह नियम सुझाव देता है कि किसी कौशल में महारत हासिल करने के लिए, आपको इसके लिए 10,000 घंटे समर्पित करने की आवश्यकता है। एक शुरुआती प्रोग्रामर के रूप में, उन्होंने सोचा कि इसका मतलब किताबें पढ़ना, ट्यूटोरियल देखना और इस समय में जितना संभव हो सके सैद्धांतिक जानकारी का उपभोग करना है। हालाँकि, यह बाद में खोजा गया कि यह उल्टा प्रभावी था।
इसके बजाय, वे "10,000 लाइनों का कोड" दृष्टिकोण की सिफारिश करते हैं। यह मानसिकता कोडिंग और परियोजनाएँ बनाने को निष्क्रिय जानकारी का उपभोग करने से अधिक मूल्यवान बनाती है। कोड सक्रिय रूप से लिखकर, भले ही यह शुरुआत में अप्रभावी और त्रुटियों के प्रति संवेदनशील हो, आप लगातार सुधार करते हैं। हर मील का पत्थर — कहें, हर हजारवीं लाइन कोड — के साथ, आपकी कौशल तेज होती जाती है।
वे तर्क करते हैं कि कोडिंग एक कला है, जो लकड़ी के काम, एक संगीत उपकरण बजाने, या ड्राइंग के अधिक समान है, न कि कानून या वित्त जैसी घनी सूचनात्मक क्षेत्रों के अध्ययन के। महारत निर्माण और सुधार के माध्यम से आती है, न कि सिर्फ अवधारणाओं को दोहराने के माध्यम से।
इसके अलावा, अभ्यास पर ध्यान केंद्रित करने से "ट्यूटोरियल हेल" के कुख्यात जाल से बचने में मदद मिलती है। ट्यूटोरियल हेल तब होती है जब विद्यार्थी अंतlessly ट्यूटोरियल का पालन करते हैं बिना ज्ञान को वास्तविक दुनिया की परियोजनाओं पर लागू किए, जिससे वे स्वतंत्र रूप से निर्माण करने के लिए अपरिपक्व रह जाते हैं। यदि यह वीडियो एक निश्चित संख्या में लाइक्स प्राप्त करता है, तो वक्ता ट्यूटोरियल हेल से बाहर निकलने के लिए एक अलग गाइड बनाने का वादा करते हैं।
Ego is the enemy
Avoiding ego-driven decisions during the learning process
अगला महत्वपूर्ण मानसिकता परिवर्तन यह है कि पहचानें कि अहंकार आपका दुश्मन है। जब वक्ता ने पहली बार कोड सीखना शुरू किया, तो उनके अहंकार ने उन्हें फेसबुक क्लोन या रेडिट क्लोन जैसी महत्वाकांक्षी परियोजनाएँ बनाने का प्रयास करने के लिए प्रेरित किया। इस दौरान, उन्होंने सरल HTML और CSS रेसिपी वेबसाइट जैसी बुनियादी नींव परियोजनाओं को नकार दिया। ये "उनके स्तर के नीचे" प्रतीत होते थे - उनका गर्व उन्हें यह मानने पर मजबूर करता था कि वे उन्नत विषयों के लिए तैयार हैं।
यह मानसिकता बाधा थी। वे स्वीकार करते हैं कि यदि उन्होंने अपने अहंकार को एक तरफ रखकर बुनियादी चीजों से शुरू किया होता, तो वे कहीं अधिक तेज़ी से प्रगति करते और एक छोटी अवधि में सक्षम डेवलपर बन जाते। बुनियादी परियोजनाएँ, जबकि सरल प्रतीत होती हैं, महत्वपूर्ण सिद्धांतों को समझने और जटिल अनुप्रयोगों के लिए आवश्यक कौशल विकसित करने के लिए आवश्यक होती हैं।
यहाँ सबक विनम्रता है। एक शुरुआत के रूप में, आपकी वर्तमान कौशल स्तर को स्वीकार करना महत्वपूर्ण है। बुनियादी चीजों में महारत हासिल करना केवल आवश्यक नहीं है - यह अमूल्य है। वह आधार आपको अधिक जटिल समस्याओं को स्पष्टता और आत्मविश्वास के साथ हल करने में सक्षम बनाता है।
Get comfortable with being uncomfortable
The necessity of becoming comfortable with uncertainty in programming
सॉफ़्टवेयर इंजीनियरिंग में, अनिश्चितता इस क्षेत्र का एक हिस्सा है। यहाँ मानसिकता परिवर्तन यह है कि असुविधाजनक होना स्वीकार करें और इसे सीखने की प्रक्रिया का हिस्सा समझें, न कि एक बाधा। वक्ता जोर देते हैं कि एक पेशेवर डेवलपर के रूप में, आप कभी भी सब कुछ नहीं जानेंगे, और यह ठीक है।
आपका भूमिका एक डेवलपर के रूप में "जानकारी प्रबंधक" होना है। आपको तुरंत सभी उत्तर नहीं मिल सकते हैं, लेकिन आपसे उम्मीद की जाती है कि आप अंततः अपने क्षेत्र में समस्याओं को हल करें। इसमें अक्सर शोध करना, परीक्षण करना और समाधान खोजना शामिल होता है - यह एक प्रक्रिया है जो स्वाभाविक रूप से संदेह या अस्पष्टता के क्षणों को शामिल करती है।
इस असुविधा का विरोध करने के बजाय, वे इसे अपनाने की सिफारिश करते हैं। प्रत्येक चुनौती को विकास और नई चीजें सीखने के अवसर के रूप में मानें। यह मानसिकता प्रोग्रामिंग के अनिवार्य संघर्षों को प्रक्रिया का एक आनंदायक भाग बना देती है। जब आप उस असुविधा की भावना महसूस करते हैं, तो यह उस संकेत है कि आप अपनी सीमाओं को बढ़ा रहे हैं, सुधार कर रहे हैं, और अपनी क्षमताओं का विस्तार कर रहे हैं।
उदाहरण के लिए, जब अनजान अवधारणाओं या कार्यों का सामना करना पड़े, तो प्रारंभिक भ्रम को आपको हतोत्साहित न करने दें। इसे अपने ज्ञान और विशेषज्ञता को गहरा करने के एक रोमांचक अवसर के रूप में लें। यह मानसिकता परिवर्तन न केवल यात्रा को अधिक आनंदायक बनाता है बल्कि लचीलापन को भी प्रोत्साहित करता है - एक गुणवत्ता जो किसी भी प्रोग्रामर के लिए महत्वपूर्ण होती है।
You will never master programming
[No available image for this section at 357 seconds of the video.]
अंतिम मानसिकता परिवर्तन यह है कि आप कभी भी वास्तव में प्रोग्रामिंग में "महारत" नहीं हासिल कर पाएंगे। वक्ता बताते हैं कि भविष्य के डेवलपर्स, विशेष रूप से शुरुआती, अक्सर किसी भाषा या अवधारणा में "महारत" हासिल करने के विचार पर ध्यान केंद्रित करते हैं। वे किसी विशेष विषय, जैसे CSS फ्लेक्सबॉक्स, की अपनी समझ को परिष्कृत करने में अत्यधिक समय बिता सकते हैं, इससे पहले कि वे इसके साथ कुछ बनाने का प्रयास करें। यह दृष्टिकोण दोषपूर्ण है।
सीखने का बेहतर तरीका पुनरावृत्तिमय है। बुनियादी बातें सीखने से शुरू करें, फिर उन्हें परियोजनाओं में लागू करें। उदाहरण के लिए, जब कुछ नई अवधारणा, जैसे फ्लेक्सबॉक्स, सीखें, तो पूरी तरह से हर बारीकी को समझने के प्रयास में न जाएं, बल्कि इसे परियोजनाओं में उपयोग करें। बार-बार प्रयोग करने से आपकी समझ स्वाभाविक रूप से समय के साथ गहरी होती जाती है। प्रोग्रामिंग एक कला है, और महारत निरंतर अभ्यास, प्रयोग और पुनरावृत्ति के माध्यम से आती है।
महत्वपूर्ण यह है कि जब आप उद्योग में प्रवेश करते हैं, तो आपसे "मास्टर" होने की अपेक्षा नहीं की जाती है। जूनियर डेवलपर्स के लिए, कंपनियाँ ऐसे व्यक्तियों की तलाश करती हैं जिनके पास बुनियादी ज्ञान हो, सीखने की इच्छाशक्ति हो, और बढ़ने की मजबूती हो। नौकरी के लिए आवेदन करने से पहले कोडिंग कौशल "मास्टर" करने की कोशिश अनावश्यक और विहित होती है। वक्ता भविष्य के डेवलपर्स को आश्वस्त करते हैं कि उद्योग अनुकूलनशीलता और सीखने की तत्परता को विशेष प्रोग्रामिंग अवधारणाओं की थकावट वाली महारत पर अधिक महत्व देता है।
वे जोर देते हैं कि अच्छे डेवलपर्स कभी नहीं रुकते। वे निरंतर प्रक्रिया को अपनाते हैं: परियोजनाएँ बनाना, प्रतिक्रिया प्राप्त करना, और निरंतर सुधार करना। महारत का पीछा चलने वाला होता है, और वास्तविक वृद्धि यात्रा के भीतर ही होती है।
Conclusion: Adopt the right mindset for coding success
कोड सीखने की यात्रा एक सीधी रेखा नहीं है - यह मोड़, मोड़ और कभी-कभी रुकावटों से भरी होती है। हालाँकि, सही मानसिकता अपनाने से आपकी सफलता में सभी फर्क पड़ सकता है।
Key takeaways:
- Prioritize practice over theory: निष्क्रिय सामग्री का उपभोग करने के बजाय कोड लिखने और परियोजनाएँ बनाने पर ध्यान दें।
- Check your ego at the door: छोटे स्तर से शुरू करें और जटिल परियोजनाओं को शुरू करने से पहले बुनियादी परियोजनाओं पर ध्यान केंद्रित करें।
- Embrace discomfort: भ्रम और चुनौतियों को बाधाओं के बजाय विकास के अवसरों के रूप में देखें।
- Let go of the idea of mastery: कार्य करने से पहले अवधारणाओं को पूर्णता में नहीं लाने पर ध्यान दें, बल्कि निरंतर सीखने और निर्माण पर ध्यान केंद्रित करें।
ये मानसिकता परिवर्तन न केवल प्रोग्रामिंग सीखने को अधिक प्रभावी बनाते हैं, बल्कि धैर्य, दृढ़ता, और लचीलापन भी विकसित करते हैं - जो हर महान डेवलपर में होते हैं। चाहे आप अभी शुरुआत कर रहे हों या पहले से ही काम में हों, इन सिद्धांतों को लागू करने से आपका सॉफ़्टवेयर डेवलपर के रूप में यात्रा को सरपट दौड़ सकता है।
छोटी शुरुआत करें, विनम्र रहें, और याद रखें: आप जो भी कोड लिखते हैं, वह आपके लक्ष्यों को प्राप्त करने के लिए एक कदम closer होता है।