जब सहकर्मी बिना सूचना के अनावश्यक सुधार करता है तो मैं अपने कोड की जिम्मेदारी कैसे ले सकता हूं?


71

मेरे साथियों में से एक हमारे आईटी की दुकान में सभी ट्रेडों का एक जैक है और मैं उनकी अंतर्दृष्टि का सम्मान करता हूं।

हालाँकि, कभी-कभी वह मेरे कोड की समीक्षा करता है (वह हमारी टीम लीडर के लिए दूसरी कमांड है, इसलिए यह उम्मीद की जाती है) बिना सिर के। इसलिए कभी-कभी वह अंतिम लक्ष्य पूरा करने से पहले मेरे बदलावों की समीक्षा करता है और तुरंत बदलाव करता है ... और यहां तक ​​कि एक बार मेरे काम को भी तोड़ दिया है।

दूसरी बार, उसने मेरे कुछ कोड में अनावश्यक सुधार किया है जो 3+ महीने पुराना है।

यह मुझे कुछ कारणों से परेशान करता है:

  1. मुझे हमेशा अपनी गलतियों को ठीक करने का मौका नहीं दिया जाता है
  2. उसने मुझसे यह पूछने का समय नहीं लिया कि मैं भ्रमित होने पर क्या हासिल करने की कोशिश कर रहा था, जो उसके परीक्षण या परिवर्तनों को प्रभावित कर सकता है
  3. मुझे नहीं लगता कि उनका कोड पठनीय है
  4. समय सीमा एक मुद्दा नहीं है और उनके वर्तमान कार्यभार को मेरे कोड परिवर्तन की समीक्षा के अलावा मेरी परियोजनाओं में किसी भी काम की आवश्यकता नहीं है।

वैसे भी, मैंने उसे अतीत में कहा है कि कृपया मुझे तैनात रखने की कृपा करें यदि वह मेरे काम में कुछ ऐसा देखता है जिसे वह बदलना चाहता है ताकि मैं अपने कोड का स्वामित्व ले सकूं (शायद मुझे "कमियों" को कहना चाहिए) और वह उत्तरदायी नहीं है ।

मुझे डर है कि मैं आक्रामक हो सकता हूं जब मैं उससे पूछूंगा कि वह मुझे अपने बदलावों के बारे में बताए।

वह सिर्फ एक शांत व्यक्ति है जो खुद को रखता है, लेकिन उसकी हरकतें जारी रहती हैं। मैं उसे कोड परिवर्तन करने से नहीं रोकना चाहता (जैसे मैं नहीं कर सकता था), क्योंकि हम एक टीम हैं - लेकिन मैं अपनी टीम की मदद करने के लिए अपना हिस्सा करना चाहता हूं।

जोड़े गए स्पष्टीकरण:

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

20
क्या आप अपने कोड रेपो के लिए git, CVS, या TFS का उपयोग करते हैं? बस अपने कमिट वापस ले लो। वह अंततः मिल जाएगा :)

6
मेरे मूल में, सभी कोड परिवर्तनों को किसी प्रकार की समीक्षा के माध्यम से जाना चाहिए, और यह चैंजिस्ट के विवरण के बिना एक बदलाव की जांच करने के लिए खराब रूप माना जाता है कि समीक्षक कौन था। अपने मूल में उस सिद्धांत का परिचय, समीक्षा के बिना आपके द्वारा लिखे गए कोड में परिवर्तन की जाँच करने वाले सहकर्मियों की समस्या का दीर्घकालिक समाधान हो सकता है।
कैरोलिन

13
एक साझा शाखा में आपके पास गैर-समाप्त परिवर्तन क्यों हैं? यह एक बुरा विचार है, और न केवल आपके द्वारा सामना किए गए कारण के लिए।
हाइड

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

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

जवाबों:


81

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

मेरे लिए, इस स्थिति में संघर्ष से बचना दो चीजों के लिए नीचे आता है:

  1. सौजन्य से । अपने कोड के बारे में किसी से बात करने से एक देव को पता चलता है कि आप रुचि रखते हैं और आप इसे बड़े हो चुके पेशेवरों के रूप में चर्चा कर सकते हैं।

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

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


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

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

7
@ जेसेलिन, अगर वह आपके साथ ऐसा कर रही है, तो संभावना है कि वह सभी के लिए कर रही है। मुझे संदेह है कि कोई भी आपके खिलाफ गिनती कर रहा है। (यदि वह इसे हर किसी के लिए नहीं कर रहा है, तो आपको एक अलग समस्या हो सकती है)
user606723

3
@tgkprog: (1) बेशक, दूसरों से प्रतिक्रिया प्राप्त करना बहुत महत्वपूर्ण है और मैंने दूसरों के कोड को देखने से कुछ चीजें सीखी हैं लेकिन (2) यदि आप एक-दूसरे से सीखना चाहते हैं तो आपको एक बदलाव का सुझाव देना चाहिए और एक साथ चर्चा करनी चाहिए। । बस यादृच्छिक सामान बदलना क्योंकि आपको लगता है कि परिवर्तन सही दृष्टिकोण नहीं होने के बाद कोड बेहतर है। समीक्षा उपकरणों का उपयोग करके कोड समीक्षाओं जैसे बेहतर दृष्टिकोण हैं।
जियोर्जियो

2
हाँ, मैं ऐसे समय के बारे में सोच रहा था जब मैंने 11:00 बजे एक मृत रेखा से पहले दूसरों का कोड तय किया था, लेकिन फिर भी टीम को एक मेल भेजेगा ताकि वे इसे भी जांच सकें, जिसमें हमारा QA भी शामिल है ....
tgkprog

86

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

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

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

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

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

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

अंत में आप एक टिप्पणी में उल्लेख करते हैं कि प्रबंधन का मानना ​​नहीं है कि व्यक्तिगत देव शाखाएं आवश्यक हैं। ठीक है, एक कारण है कि हम उन्हें "देव शाखा" कहते हैं, न कि "प्रबंधन शाखाएँ"। मैं यहाँ रुक जाऊँगा क्योंकि बाहर निकलने के लिए मेरे सिर में जो शेख़ी है उसका कोई कारण नहीं है।

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

पुनश्च। "कोड स्वामित्व" एक अस्पष्ट शब्द है, लगातार बहस की जाती है, और इसका मतलब अलग-अलग लोगों के लिए अलग-अलग चीजें हैं। आप C2 पर अधिकांश अलग-अलग (और कभी-कभी विरोधी) विचारों का शानदार संग्रह पा सकते हैं ।


7
अगर मैं कर सकता था तो +1 और अधिक। महान उत्तर जो इस तरह की प्रक्रिया को बेहतर बनाने के सर्वोत्तम तरीकों को संबोधित करता है।
Waldfee

2
हां, ओपी को एक कोड रिव्यू टूल की जरूरत है, इस तरह आप कोड की समीक्षा एक साथ कर सकते हैं, यह सिर्फ किसी को कोड बदलने के लिए नहीं है क्योंकि उन्हें ऐसा लगता है। हमने अभी कार्यस्थल पर smartbear.com/products/software-development/code-review का उपयोग करना शुरू किया
जुआन मेंडेस

19

यह उस प्रक्रिया के बारे में क्या है जो आपको "आपके कोड" की जिम्मेदारी लेना चाहती है ? क्या आपके पास कुछ विशेषताओं को काम करने की एकमात्र जिम्मेदारी है? क्या लीड ने कहा "माइकल, मैं चाहता हूं कि आप जिम्मेदारी लें ..."? या आपकी ज़िम्मेदारी निहित है, जिसमें लीड और बाकी टीम आपको हर बार कुछ विशेषताओं को तोड़ते हुए देखती है?

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


5
+1 एक महत्वपूर्ण तथ्य को इंगित करने के लिए: या तो टीम का स्वामित्व है और (1) सभी जिम्मेदार हैं (2) हर कोई कोड बदल सकता है, या व्यक्तिगत स्वामित्व है और (1) मॉड्यूल मालिक जिम्मेदार है (2) हर परिवर्तन को होना चाहिए मॉड्यूल स्वामी द्वारा अनुमोदित किया जाना चाहिए। अक्सर भ्रम की स्थिति पैदा होती है जब एक टीम के सदस्य को एक मॉड्यूल के लिए जिम्मेदार होने की उम्मीद होती है, लेकिन एक वरिष्ठ सदस्य को कोड में यादृच्छिक बदलाव करने का हकदार लगता है। दूसरे शब्दों में, किसी को "अधिकार के बिना जिम्मेदारी" स्थिति से बचना होगा।
जियोर्जियो

4

ऐसा नहीं है कि यह पूरी स्थिति को हल करेगा, लेकिन आप अपने स्रोत कोड में अधिक टिप्पणियां जोड़ने का प्रयास कर सकते हैं।

  1. यदि कोड पूरा नहीं है, तो इसे इस तरह चिह्नित किया जा सकता है।
  2. यदि कोड के एक ब्लॉक का उद्देश्य स्व-दस्तावेजीकरण नहीं है, तो आपको इसे दस्तावेज़ करना चाहिए।

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

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


3
लड़का है कि भ्रमित हो सकता है। कल्पना करें - "यह कोड पूर्ण नहीं है," एक टिप्पणी जोड़ते हुए, और फिर एक बार कोड पूरा करने के बाद इसे हटाना न भूलें।
रिवलॉक

1
@ Stargazer712, ब्रांच में अधूरा कोड होने से ज्यादा भ्रामक?
user606723

यह है कि शेल्फ के लिए क्या कर रहे हैं। अपूर्ण कोड में जाँच न करें।
रिवलॉक

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

1
उन्हें TODO कहा जाता है, वे हर समय वर्किंग कोड में छोड़ दिए जाते हैं
जुआन मेंडेस

4

हर कोई राजनीति, कानूनी, या अर्थशास्त्र की परवाह किए बिना 'अपने स्वयं के कोड का मालिक है' - यह 'चीजों की प्रकृति' है - आप स्वाभाविक रूप से अपने स्वयं के काम के लिए एक व्यक्तिगत संबंध महसूस करते हैं।

यदि आपका सहकर्मी आपके द्वारा बताए गए व्यवहार में उलझा रहता है और जब आप शीर्षासन करते हैं, तो आप सहकर्मी से कम-से-कम कहने के लिए हतोत्साहित होते हैं, और आपको कम आंकने की कोशिश कर सकते हैं (सबसे बुरा कहने के लिए) ।) - टीम के खिलाड़ी की तरह नहीं है

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

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


1
प्रारंभिक विवरण के अलावा (ऐसी टीमें हैं जो टीम के स्वामित्व को अपनाती हैं और ऐसी अन्य टीमें जो व्यक्तिगत स्वामित्व को अपनाती हैं), मुझे इस उत्तर में टिप्पणियों का पता चलता है ठीक है (इसके लिए +1): मैंने भी देखा है कि साझा कोड स्वामित्व का उपयोग किसी टीम को कमजोर करने के लिए किया जा रहा है अपने कोड को मनमाने ढंग से संशोधित करके टीम के भीतर सदस्य की स्थिति। इसलिए मैं नीचे की बातों को नहीं समझता। यह अच्छा होगा अगर डाउनवोटर्स को समझाने की कोशिश की जाए।
जियोर्जियो

1
मुझे लगता है कि मिकी का जवाब अच्छा है कि मैं टीम के खिलाड़ी कैसे रहूं। हो सकता है कि यह बहुत ज्यादा लोग केंद्रित हो? जैसा कि यानिस ने सुझाव दिया, मेरी टीम की विकास प्रक्रिया वास्तविक समस्या है। भले ही मुझे इस बात की उत्सुकता हो कि यह क्यों ठुकरा दिया गया।
जेसलिन

1
@ जेसेलिन - मुझे लगता है कि मैं अपने बयान के कारण "सभी लोग स्पष्ट रूप से 'खुद के कोड का मालिक होने के कारण" निराश "थे। यह एक दार्शनिक प्रश्न है, नीतिगत प्रश्न नहीं है। :-)
वेक्टर

1
@ मायकी: "हर कोई 'अपने-अपने कोड का मालिक है'" यह निश्चित रूप से बहस का विषय हो सकता है। प्रोग्रामर जो स्व-नियोजित नहीं होते हैं वे आमतौर पर एक अनुबंध पर हस्ताक्षर करते हैं जो कहते हैं कि वे स्रोत कोड के मालिक नहीं हैं। इसके अलावा, मुझे लगता है कि कोड का लेखक वह है जो कोड को सबसे अच्छी तरह से समझता है, और यदि कोई अन्य व्यक्ति कोड को बदलता है, तो न तो लेखक और न ही दूसरा डेवलपर कोड 100% को वास्तव में समझता है।
जियोर्जियो

1
@ माइक: साझा कोड स्वामित्व यह सुनिश्चित करने की कोशिश करता है कि टीम के पर्याप्त सदस्य कोड को अच्छी तरह से समझें (जबकि कोई भी इसे वास्तव में अच्छी तरह से नहीं समझता है)। यह व्यक्तिगत कोड स्वामित्व के लिए बेहतर है, जहां प्रत्येक मॉड्यूल (कम से कम सिद्धांत रूप में) पूरी तरह से एक प्रोग्रामर द्वारा समझा जाता है, लेकिन जोखिम है कि यह ज्ञान खो जाता है यदि प्रोग्रामर क्विट करता है।
जियोर्जियो

1

यदि आप कोड लिखते हैं, तो मुझे इसकी समीक्षा करनी चाहिए।

यदि मैं समीक्षा के दौरान आपका कोड बदलता हूं, तो कोड वह कोड नहीं है, जिसकी मैंने समीक्षा की है, लेकिन वह कोड जो मैंने बदला है। इसलिए इसकी समीक्षा किए जाने की जरूरत है। शायद आपके द्वारा।

अगर मैं आपके बदलावों की समीक्षा किए बिना किसी के साथ अपने परिवर्तनों के साथ आपका नया कोड बनाता हूं, तो मैंने (1) बिना किसी परिवर्तन के, और (2) सबसे खराब संभव पाप किया है अगर कोड समीक्षा को गंभीरता से लिया जाए।


0

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

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

(अगर वर्कप्लेस.स्टैक्सएक्सचेंज पर यह पूरी तरह से अलग उत्तर है तो कोड रिव्यू करने का सही तरीका पता लगाना आसान है। अपने सहकर्मी को इसके अनुपालन के लिए समझाना बहुत कठिन है)।

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