एक प्रोग्रामर के रूप में संघर्ष। कुछ सलाह चाहिए [बंद]


20

मैं कई वर्षों से एक डेवलपर रहा हूं। मैं जो कर रहा हूं उसमें बहुत अच्छा हूं और "काम पूरा कर सकता हूं"।

लेकिन, "काम पूरा करने" और "सही तरीके से काम करने" में अंतर है। आइए एक उदाहरण का उपयोग करें।

हाल ही में मैंने स्क्रैच से एक वेब साइट विकसित की है। वेबसाइट ठीक चलती है और मेरे पास कोई समस्या नहीं है। कोड के माध्यम से देखकर मैंने खुद से सोचा कि मैं इसे बेहतर कर सकता था। मैं अपने MySQL प्रश्नों पर कटौती कर सकता था। मैं एमवीसी को विस्तारित करने में आसान बना सकता था (अब इसका विस्तार करने की आवश्यकता है)।

मैंने CodeIgniter का उपयोग करके परियोजना को फिर से लिखने का फैसला किया। मुझे ढांचा पसंद है। लेकिन मैं तब झुलस गया क्योंकि मेरे MySQL के प्रश्नों में कटौती करने के लिए मुझे उन्नत जॉइन सीखने पड़े।

और यही समस्या है। जब भी मैं कोई काम ठीक से करता हूं तो लगातार सीखने के चक्कर में रहता हूं। और उन्नत MySQL जैसे विषयों को सीखने में समय लगता है, और फिर लागू करने का समय।

मैं एक कंपनी के लिए काम नहीं करता। मैं सब कुछ अकेले करता हूं। तो मुझे लगता है कि अगर मैं एक कंपनी के लिए PHP डेवलपर के रूप में काम कर रहा था, तो एसक्यूएल को संभालने वाली अलग-अलग टीमें होंगी।

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

मैं नए साल के बाद नौकरी पाने की योजना बना रहा हूं। मुझे नौकरी की सुरक्षा चाहिए। यही कारण है कि मैं यह सवाल पूछ रहा हूं।

आत्म विकास और आत्म सुधार के संदर्भ में आप क्या सलाह दे सकते हैं? क्या मुझे कम चिंता करनी चाहिए? या शायद एक PHP डेवलपर के रूप में नौकरी की तलाश करें जब मैं सीधे एसक्यूएल प्रश्नों को संभाल नहीं पाऊंगा?


54
अगर आप लगातार सीखना नहीं चाहते हैं तो आप गलत फील्ड में हैं

6
@JamesGuvnaJeffery: यदि वे किसी परियोजना के दौरान सीखने के लिए (किसी भी समय) (किसी भी समय) अनुमति नहीं देते हैं, तो मैं वहां काम नहीं करना चाहता क्योंकि एक डेवलपर के रूप में मैं खुद को सुधारना बंद कर दूंगा।
मार्जन वेनमा

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

5
पुराना कोड चूसना है। इस पर खुद को मत मारो; बस समय के साथ सुधार करने का प्रयास करें। एक कार्यशील परियोजना को फिर से लिखना शायद ही कोई व्यावहारिक अर्थ रखता है। ग्राहक इसके लिए अतिरिक्त भुगतान नहीं करेंगे। codinghorror.com/blog/2006/10/…
Job

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

जवाबों:


33

सलाह: नई चीजें सीखने से डरो मत - आपने यह स्वीकार करने में एक अच्छा पहला कदम उठाया कि आप बेहतर कर सकते हैं और फिर यह सीखने का प्रयास किया कि आप कैसे बेहतर कर सकते हैं। हां, सामने आने में अधिक समय लगता है, लेकिन भुगतान आमतौर पर लंबे समय में इसके लायक होता है। अब जब आप CodeIgniter को जानते हैं, तो आप इसे अगले भविष्य की परियोजना के लिए उपयोग कर सकते हैं। आप इसे अपने रिज्यूम पर रख सकते हैं। अब जब आप उन्नत SQL तकनीकों को जानते हैं, तो आपकी भविष्य की परियोजनाओं को लाभ होगा । यदि आप सीखना बंद कर देते हैं, तो आप रुक जाएंगे।


21

तुम मेरे लिए बहुत सामान्य लग रहा है। इसी तरह से हम अपने शिल्प पर काम करते हैं और हम जो करते हैं उसमें बेहतर और बेहतर होते जाते हैं।


10

... मैंने CodeIgniter का उपयोग करके परियोजना को फिर से लिखने का फैसला किया। मुझे ढांचा पसंद है। लेकिन मैं तो गया sidetracked प्रश्नों क्योंकि मेरे MySQL में कटौती करने के लिए मैं उन्नत मिलती है जानने के लिए किया था।

और यही समस्या है। जब भी मैं कोई काम ठीक से करता हूं तो लगातार सीखने के चक्कर में रहता हूं। और उन्नत MySQL जैसे विषयों को सीखने में समय लगता है, और फिर लागू करने का समय ...

अच्छी तरह से ऊपर दिया गया मुझे लगता है कि यह समझ में आता है कि आप आगे की योजना बनाने, कार्य कतार की स्थापना और प्राथमिकता देने, अपने समय - सामान को प्रबंधित करने की क्षमता में सुधार पर ध्यान केंद्रित करते हैं।

वास्तव में, यह केवल आपके दृष्टिकोण में याद आ रही चीज़ है। जिसे आप "साइडट्रैकिंग" कहते हैं, वह अनिवार्य रूप से काम का एक और टुकड़ा है ("उन्नत जॉइन सीखें") जिसे योजनाबद्ध करना, प्राथमिकता देना और कतार में रखना है।


साभार @gnat मैं वास्तव में इन सकारात्मक प्रतिक्रियाओं की सराहना करता हूं। आपने जो कहा, उस पर मैं आपके साथ सहमति दे सकता हूं।
जेम्स गुवना जेफरी

9

इस क्षेत्र में एक पेशेवर बनना लगातार अपनी खुद की अपर्याप्तता के खिलाफ खुद को नष्ट करना है। उस शुक्रवार के माध्यम से 8-5 सोमवार करें, शायद अधिक यदि कोई समय सीमा समाप्त हो रही है, तो एक अच्छा सप्ताहांत है, और सोमवार को और अधिक के लिए वापस आ जाओ। यही काम है।

सॉफ्टवेयर बनाने के लिए एक निश्चित विनम्रता की आवश्यकता होती है। यदि आप कोई ऐसा व्यक्ति हैं जिसे सही होना है, और जिसे यह साबित करना है कि वे पहले से ही सब कुछ जानते हैं, तो यह आपके लिए क्षेत्र नहीं हो सकता है।

मैं हर एक दिन कुछ नहीं सीख सकता हूं। मुझे नहीं लगता कि मैं वह नौकरी चाहता हूं।


मेरा अनुभव यह है कि किसी के लिए ठीक होना ठीक है, जब तक कि आप पेट खराब न हो जाएं। मैं खुद को हर उस छोटी चीज पर लात मारता हूं जो एकदम सही नहीं है। इसलिए मैं समय के साथ चीजों को बेहतर करता हूं।
टॉम एंडरसन

खैर, यह विरोधाभास नहीं है? हुब्रिस प्रोग्रामर के तीन गुणों में से एक है। लेकिन मेरे अनुभव में, "अनिवार्य रूप से यह साबित करने के लिए प्रेरित हूं कि मैं यह दिखा कर स्मार्ट हूं कि मैं इसे सीखने से पहले ही सब कुछ जानता था" एक प्रवृत्ति है कि धोखेबाज़ डेवलपर्स या तो जाने देते हैं, या वे इस क्षेत्र में लंबे समय तक नहीं रहते हैं।
दान रे

शायद जाने के बजाय वापस गला घोंटना? मैं बहुत पहले, सौभाग्य से, यह घोषित करने की आदत से बाहर निकल गया था कि मैं उन चीजों को जानता था जो मैंने नहीं किया था। हालांकि, मैं अभी भी चीजों को न जानने के लिए स्वीकार करने से नफरत करता हूं; जो मुझे पता है और जो मैं कहना चाहता हूं, उसके बीच के अंतर को बंद करने की आवश्यकता है, मुझे पता है कि मेरे लिए काफी ड्राइवर है। हर किसी के लिए जरूरी नहीं!
टॉम एंडरसन

मुझे नहीं पता, टॉम। मुझे लगता है कि शर्मिंदगी के उस पल की तरह है कि आप पहले से ही कुछ नहीं जानते हैं एक पल है जिसे आप इसे सीखने पर खर्च कर सकते हैं। मुझे अगले आदमी के रूप में ज्यादा जानना पसंद है, लेकिन मुझे "मुझे नहीं पता" कहने में कोई समस्या नहीं है।
दान रे

6

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

कहा, एक डेवलपर के रूप में, आपको लगातार सीखने के लिए खुद को प्रतिबद्ध करना होगा। चाहे वह नए ढांचे के लिए प्रलेखन पढ़ रहा हो, या विकास पर किताबें, आपको अपने ज्ञान को वर्तमान और विकसित करने के लिए निरंतर प्रयास करना होगा। हालांकि, एक टीम का हिस्सा होने से यह स्पष्ट हो सकता है कि आपको किसी भी बिंदु पर किसी भी क्षेत्र में सबसे अधिक सीखने की आवश्यकता है।

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

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


दूसरे वाक्य के लिए +1। मैंने अपने सहकर्मियों से अधिक सीखा है, कई अलग-अलग संगठनों में काम कर रहा हूं, जितना मैंने कभी भी (किताबें या ऑनलाइन) पढ़ने से सीखा है। यह आपके प्रश्न से लगता है कि कुछ समय के लिए एक टीम में काम करने से आप अच्छी दुनिया बना पाएंगे।
दाऊद का कहना है कि मोनिका

3

मुझे लगता है कि आपकी चिंताएँ मान्य हैं, लेकिन आपको इस पर नींद नहीं छोड़नी चाहिए। यह मेरा मानना ​​है कि एक प्रौद्योगिकीविद् निम्नलिखित सामान के साथ आता है:

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

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

सभी ट्रेडों (कोई भी नहीं) का जैक होना कठिन है, लेकिन आपको वास्तव में यह पता लगाने की आवश्यकता है कि उन चीजों की पहचान कैसे करें जो आपके लिए सबसे दिलचस्प और उपयोगी हैं, और उन पर ध्यान केंद्रित करें। यह पता लगाएं कि अन्य लोगों या साधनों को अन्य कार्यों को "आउटसोर्स" करने के लिए सबसे अच्छा कैसे है ।


2

मुझे लगता है कि आपको "ठीक से काम करने" के बारे में कम चिंता करने की ज़रूरत है। पूर्णता के लिए प्रयास करें, लेकिन यह महसूस करें कि वास्तव में एक आदर्श समाधान तैयार करना संभव नहीं है, यहां तक ​​कि पहली बार गोल भी। तथ्य यह है कि आप इस सवाल को पूछने के लिए इसे ठीक से करने के बारे में चिंतित हैं इसका मतलब है कि आप पहले से ही सही रास्ते पर हैं।

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

मुझे सॉफ्टवेयर लिखना बहुत पसंद है, लेकिन कभी-कभी वास्तव में कुछ नया सीखने की नहीं बल्कि वास्तव में दर्द होता है, लेकिन यह पता लगाना कि यह वास्तव में क्या है जिसे आप प्राप्त करना चाहते हैं।

जो मैं समझता हूं, मैं आपसे उसी तरह की स्थिति में हूं। अकेले किसी चीज़ की कोडिंग करना कई बार निराशाजनक और मुश्किल दोनों हो सकता है, और अन्य समय में पुरस्कृत और कुछ मज़ेदार होता है।

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

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

SQL भाग के लिए, .NET डेवलपर के रूप में, मैंने अभी तक कहीं भी काम नहीं किया है जिसमें एक समर्पित डेटाबेस डेवलपर था, हम सभी अपने स्वयं के एसक्यूएल लिखते हैं, लेकिन अक्सर ऐसे डेवलपर्स होते हैं जो एसक्यूएल में वास्तव में अच्छे होते हैं जो आपकी मदद करने के लिए तैयार हैं गहराई सामान में अधिक के साथ।

आप एक स्मार्ट आदमी की तरह लग रहे हैं, मुझे नहीं लगता कि आपको अपने आप पर इतनी मेहनत करनी चाहिए।


1

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

अनुभवहीन प्रोग्रामर अक्सर पुनर्विकास जाल में आ जाएगा:

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

इस तर्क में कई चीजें गलत हैं।

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

यह पुनर्विकास के लिए चिंतन और योजना करने के लिए कभी भी चोट नहीं पहुंचा सकता है। इसका मतलब है कि विचार करें कि आप अपने कार्यक्रम को फिर से कैसे लिखना चाहते हैं, और जो भी समस्याएँ हैं, उन्हें पहचानने का प्रयास करेंगे। इस मामले में आपने 'उन्नत SQL जॉइन' की पहचान की होगी जिसकी आपको अब आवश्यकता है, और फिर जांच करें कि वे कैसे काम करते हैं और उनके बारे में जानें।

अगर आपको लगता है कि आपने नियोजन (विकास शुरू किए बिना) के माध्यम से उन्नत जॉइन गैप की पहचान नहीं की है, तो आपको अपने नियोजन कौशल में सुधार करने की आवश्यकता है। यह सोचने की कोशिश करें कि योजना का कौन सा हिस्सा पर्याप्त विस्तृत नहीं था। आपको आवश्यक विस्तार तक जाना चाहिए जब तक कि आप सुनिश्चित न हों कि पूरी प्रणाली तकनीकी रूप से संभव है।

यह दृष्टिकोण आपको समय से पहले सीखने की अनुमति देगा ।

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


1

आप सोच सकते हैं कि नई तकनीकों और समस्याओं को सीखना एक टाइम सिंक है। लेकिन घबराओ मत। यह आम है। यह सीखने के लिए एक प्रोग्रामर के रूप में आपके अभ्यास का हिस्सा है ... या फिर हम सभी COBOL के साथ फंस जाएंगे।

फ्रीलांस पेशेवर अपने कमीशन को उसी के अनुसार समायोजित करते हैं और सीखने की अवधि कई अन्य चीजों के बीच होती है जिन्हें आपके समय के अनुमानों के अनुसार होना चाहिए। अगली बार जब आप एक नया ढाँचा लाने का निर्णय लेते हैं, तो सुनिश्चित करें कि आप इसे सीखने के लिए पर्याप्त समय में योजना बनाएँ।


0

लेकिन, "काम पूरा करने" और "सही तरीके से काम करने" में अंतर है।

नहीं, वहाँ नहीं है, और मुझे लगता है कि यहाँ अपनी समस्या की जड़ है। ऐसा लगता है कि आप चीजों को 'सही ढंग से' करने की चिंता करने पर तुले हुए हैं क्योंकि एक व्यक्तिगत डेवलपर के रूप में आप यह देखते हैं कि दूसरे कैसे काम करते हैं। लेकिन सही ढंग से किसके अनुसार? यह जादुई व्यक्ति कौन है जो यह तय करता है कि आप जो कर रहे हैं वह 'सही' है? दुनिया के 100 सर्वश्रेष्ठ प्रोग्रामर लें, और मैं गारंटी देता हूं कि कोई भी दो प्रत्येक प्रोग्रामिंग विषय पर 100% सहमत नहीं होगा।

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

कि आप अपने कोड को फिर से देख रहे हैं और इसे सुधारने के तरीके देख रहे हैं, यह विकास प्रक्रिया का एक सामान्य हिस्सा है। यह संकेत नहीं है कि आप चीजों को 'सही ढंग से' करने में सक्षम हैं। यह एक संकेत है कि आप सीखने और सुधार के लिए समर्पित हैं। आपके पोस्ट में जो कुछ भी मैं देख रहा हूं, उससे आपको कोई समस्या नहीं है।

अब जाओ कुछ * *


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

साभार @grandmasterB Tehhrike, और इन पुस्तकों का संदर्भ?
जेम्स गुवना जेफरी

3
" कोई भी दो प्रत्येक प्रोग्रामिंग विषय पर 100% सहमत नहीं होगा " - हो सकता है, लेकिन कम से कम 80% प्रोग्रामिंग विषयों के कम से कम 80% पर सहमत हों। यह पेशेवर सहमति है। पूर्ण 'अधिकार' नहीं हैं, लेकिन सर्वोत्तम प्रथाएं हैं और वे जानने लायक हैं।
कर्क ब्रॉडहार्ट

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

2
और जब आपके ग्राहक को लगता है कि बदलाव के लिए आपकी बोली अत्यधिक है और उन भावनाओं की पुष्टि करने के लिए एक और विशेषज्ञ ढूंढता है क्योंकि यह खराब कोडित था, तो आप काम से बाहर हैं।
जेएफओ
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.