7 पॉइंट द्वारा GN⁺ 2023-12-21 | 1 टिप्पणियां | WhatsApp पर शेयर करें

शुरुआती software developers के लिए सलाह

  • लोग मेरी बात मेरी programming skill की वजह से नहीं, बल्कि मेरी writing skill की वजह से सुनते हैं। दूसरों की सलाह के साथ भी यही बात लागू होती है; आप अक्सर उनकी writing skill की वजह से उन्हें सुनते हैं।
  • software पर scientific research बहुत कम है और उसके ज़्यादातर निष्कर्ष अनिश्चित हैं। "objective truth" के दावों को थोड़ा संदेह के साथ देखें और ध्यान से सोचें कि वे आपकी स्थिति पर कैसे लागू होते हैं।
  • कुछ गलत सीख लेने या धोखा खा जाने की बहुत ज़्यादा चिंता न करें; अगर कोई idea आपको पसंद आता है, तो उसे आज़माने की सलाह है। जब तक आप अपने साथ काम करने वालों को नुकसान नहीं पहुँचा रहे, अंत में चीज़ें ठीक हो जाएँगी।

Debugging: 9 नियम

  • "Debugging: 9 नियम" नाम की किताब पढ़ने की सलाह है। इसे library से उधार लें या अपनी company से इसे खरीदने के लिए कहें। यह एक ऐसी महत्वपूर्ण skill को आसान तरीके से सिखाती है, जिसे नए programmers के लिए बनी लगभग बाकी सभी किताबें नज़रअंदाज़ करती हैं।

सही तरीके की खोज

  • किसी समय आपको यक़ीन हो जाएगा कि आपने programming का सही तरीका खोज लिया है, और अगर हर कोई वही तरीका अपनाए तो यह क्षेत्र बहुत बेहतर हो जाएगा।
  • मैं यह नहीं कह रहा कि उस सही तरीके के प्रभाव में मत आएँ, लेकिन यह ज़रूर सलाह दूँगा कि आप पहचानें कि आप उसके प्रभाव में हैं, और अपनी पहचान को उस सही तरीके वाले इंसान के रूप में न गढ़ें।
  • आखिरकार आप सीखेंगे कि programming, चाहे कोई भी सही तरीका अपनाया जाए, फिर भी एक झुंझलाने वाला और बेतरतीब काम है, और सही तरीके के बिना भी बेहतरीन software बनाया जा सकता है।

best practices के पीछे की कहानी

  • हर best practice के पीछे हमेशा कोई न कोई डरावनी कहानी होती है। अगर आप किसी best practice को नहीं समझते, तो उससे प्रेरित वह डरावनी कहानी ढूँढना मददगार हो सकता है।
  • कई best practices और conventions ऐतिहासिक और सांस्कृतिक कारणों के मिश्रण से पैदा होते हैं। अक्सर आप उन तरीकों का पालन कर रहे होते हैं जिन्हें mentors ने उन समस्याओं को हल करने के लिए इस्तेमाल किया था जो अब शायद प्रासंगिक भी नहीं रहीं।

programming के अलग-अलग प्रयास

  • करियर की शुरुआत में, अगर संभव हो, तो अलग-अलग तरह की programming आज़माने की सलाह है। इसका मतलब नौकरी बदलना नहीं है; ज़्यादातर companies में एक ही समय में कई तरह की programming होती है।
  • अलग-अलग तरह की programming आज़माने से आप सिर्फ सीखते ही नहीं, बल्कि उस software work के प्रकार को खोजने की संभावना भी बढ़ाते हैं जो आपको सच में पसंद है।

software क्षेत्र में बदलाव

  • software का क्षेत्र लगातार बदल रहा है, इसलिए framework treadmill में फँसने के बजाय बुनियादी skills सीखने पर ध्यान देने की सलाह है।
  • software में जानकारी तेज़ी से फैलने के संरचनात्मक कारण हैं। internet, open source, conferences आदि की वजह से ideas साझा करने की बाधाएँ कम हैं।
  • कई technologies के उपयोगकर्ता बहुत कम होते हैं, लेकिन उनके बारे में सुनने का तरीका ऐसा हो सकता है कि वे व्यापक रूप से अपनाई जाने वाली लगें। यही वजह है कि एक conservative approach मायने रखती है।

GN⁺ की राय

  • इस लेख की सबसे महत्वपूर्ण बात यह है कि developer के रूप में सीखने और आगे बढ़ने की प्रक्रिया आपकी अपनी experiences से बनती है। दूसरों की सलाह उपयोगी संदर्भ हो सकती है, लेकिन आखिर में उसे अपनी स्थिति के अनुसार लागू करना ही महत्वपूर्ण है।
  • programming के 'सही तरीके' को खोजना एक व्यक्तिगत यात्रा है, और इसके ज़रिए आप अलग-अलग approaches को सीखकर उन्हें मिलाने की क्षमता विकसित कर सकते हैं।
  • तकनीकी बदलावों को समझना और नए trends के प्रति तर्कसंगत दृष्टिकोण अपनाना एक टिकाऊ developer career के लिए ज़रूरी है।

1 टिप्पणियां

 
GN⁺ 2023-12-21
Hacker News राय
  • पहला कमेंट सारांश:

    • एक हॉबी प्रोजेक्ट में दो developers के साथ collaboration का अनुभव साझा किया गया है.
    • प्रोजेक्ट छोटा होने के बावजूद जरूरत से ज्यादा engineering requirements को लेकर असंतोष व्यक्त किया गया है.
    • "सही तरीका" पर अड़े रहने वाले developers के प्रति आलोचनात्मक दृष्टिकोण पेश किया गया है.
    • यह भी कहा गया है कि लेखक का खुद का भी पहले ऐसा ही अनुभव रहा, लेकिन बाद में समझ आया कि वास्तव में मायने रखने वाली चीज़ working code है.
  • दूसरा कमेंट सारांश:

    • 15 साल के अनुभव वाले एक software professional ने अपना अनुभव साझा किया है.
    • शुरुआती बौद्ध शिक्षा से सीखे गए सबक software development में भी उपयोगी लगे.
    • developer के रूप में मिले अनुभवों से सीखे गए पाठ बताते हुए, केवल "सही तरीके" से चिपके न रहने के महत्व पर जोर दिया गया है.
  • तीसरा कमेंट सारांश:

    • यह तर्क दिया गया है कि TDD(Test-Driven Development) जैसी तकनीकें सीखना फायदेमंद होता है, भले ही उनका सीधे इस्तेमाल हमेशा न हो.
    • अलग-अलग तकनीकें और भाषाएँ सीखकर बेहतर code लिखना सीखा जा सकता है, इस पर जोर दिया गया है.
  • चौथा कमेंट सारांश:

    • यह बताया गया है कि "सही तरीका" के प्रति जुनून developer की growth में बाधा बन सकता है.
    • अनुमान लगाया गया है कि इसका कारण knowledge बढ़ाने के लिए जरूरी attention की कमी, या अपनी मौजूदा स्थिति में बहुत ज्यादा comfortable होना हो सकता है.
  • पाँचवाँ कमेंट सारांश:

    • code, याद रखने वाली जानकारी, project details जैसी हर तरह की state को कम से कम रखने की सलाह दी गई है.
    • यह कहा गया है कि state को न्यूनतम रखना problem solving में मदद करता है.
  • छठा कमेंट सारांश:

    • यह उल्लेख किया गया है कि अच्छी writing skills, readers पर domain knowledge से भी अधिक प्रभाव डाल सकती हैं.
    • अलग-अलग तरह के काम आज़माने और कंपनी के भीतर दूसरी भूमिकाओं के बारे में सीखने की सलाह दी गई है.
  • सातवाँ कमेंट सारांश:

    • इस बात पर जोर दिया गया है कि YouTube जैसी video sharing services से सीखी गई बातों के प्रति संदेहपूर्ण रवैया रखना चाहिए.
    • यह याद दिलाया गया है that software development का मकसद problems solve करना है, और दूसरे लोगों से बातचीत करके software किन समस्याओं को हल करे, इसे बेहतर समझा जा सकता है.
  • आठवाँ कमेंट सारांश:

    • debugging पर एक किताब की सिफारिश की गई है, और कहा गया है कि यह कई तरह की technical problems सुलझाने में मददगार है.
    • किताब को आसान और दिलचस्प पढ़ाई बताया गया है, साथ ही इसे उपयोगी techniques देने वाली कहा गया है.
  • नौवाँ कमेंट सारांश:

    • इस बात पर जोर दिया गया है कि code लिखना अपने आप में लक्ष्य नहीं, बल्कि problem solving का साधन है.
    • सलाह दी गई है कि code से हल होने वाली समस्या पर ध्यान देना चाहिए, और अगर वह स्पष्ट न हो तो code लिखना रोककर पहले समस्या को साफ़ करना चाहिए.
  • दसवाँ कमेंट सारांश:

    • यह कहा गया है कि अच्छी writing skills, दूसरों के साथ communication में मदद करती हैं और software developers के लिए महत्वपूर्ण हैं.
    • नए developers को अपने अनुभव और विचार लिखने की आदत डालने की सलाह दी गई है, क्योंकि यह आगे चलकर एक उपयोगी skill बन सकती है.