2009-09-14 15 views
15

का उपयोग करने के लिए दृढ़ सहकर्मियों को मैं कुछ नई नौकरी पर एक नई परियोजना पर काम करना शुरू कर रहा हूं, और मैंने कुछ समस्याएं निभाई हैं। वे एमवीसी के बड़े प्रशंसकों नहीं हैं।एमवीसी

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

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

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

सहकर्मियों को एमवीसी में परिवर्तित करने के तरीके पर कोई विचार?

उत्तर

16

एक अच्छी पोस्ट है जिसे आपको पढ़ना चाहिए "स्कूल में पढ़ाया जाने वाला सबसे महत्वपूर्ण बात क्या है"। उनमें से एक सामाजिक कौशल है। ऐसा लगता है कि आप यहां अपने चेहरे पर गिर रहे हैं।

सबसे पहले, आप टीम पर नौसिखिया हैं। आप उन्हें कौन बताएंगे कि क्या करना है या यह कैसे करना है? यदि आप कोड को फिर से लिखते हैं, यदि यह बदतर है तो आप मूर्ख हैं। यदि आप सफल होते हैं, तो आप एक गधे हैं। किसी भी तरह से, आप या तो हंसते हुए या अपने रास्ते पर हैं।

आपको क्या करना है, निम्न समस्या हल करें: "मैं इस टीम में फिट होना सीख सकता हूं, परियोजना को सफल बनाने में मदद कर सकता हूं, और योगदान कर सकता हूं?" इस परिप्रेक्ष्य से, दूसरों को दिखाते हुए कि आप उनके काम से ज्यादा जानते हैं और वे बेवकूफ हैं समाधान नहीं है।

अपने परिप्रेक्ष्य को विस्तृत करें - आपकी समस्या यहां शायद 10% तकनीकी है, 40% सीखना है कि टीम के हिस्से के रूप में कैसे कार्य करना है, 30% सामाजिक, और 20% संचार।

परियोजना परिप्रेक्ष्य से, आपको क्या लगता है कि अधिक महत्वपूर्ण है? प्रोजेक्ट समय पर समाप्त होने पर आपको क्या लगता है?

ए) गलत फ्रेमवर्क में उत्पादक और सामंजस्यपूर्ण रूप से सभी एक साथ काम कर रहे हैं। बी) टीम 1 फ्रेमवर्क में काम कर रहे 1 व्यक्ति के साथ विभाजित है, दूसरा 2 उसे अनदेखा कर रहा है और हर कोई एक दूसरे को टीम मैनेजर/प्रबंधन के लिए बुरा लग रहा है।

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

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

+3

मैंने "एक समय में एक हिस्सा जोड़ें" की सड़क ली है। मैंने हाथ से लिखित एसक्यूएल के अभ्यास को प्रतिस्थापित करने के लिए एक मॉडल-गेटवे सिस्टम जोड़ा है, और उन्होंने वास्तव में इसे चमक लिया है। हम देखेंगे कि चीजें कैसे जाती हैं! –

+0

अच्छा दृष्टिकोण! इससे "इस परियोजना को सफल बनाने और योगदान करने में सहायता" के समग्र लक्ष्य में सहायता मिलती है। उत्तर देने वालों के लिए –

+2

+1, और पूछने वाले के लिए +1 काफी कठोर आलोचना के बारे में चिंतित नहीं है और वास्तव में इसे उठा रहा है। सलाम! –

4

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

मुझे यह पसंद नहीं है, लेकिन यह आपकी वास्तविकता हो सकती है।

1

आप अपनी प्राथमिकताओं को समझने और समझने का प्रयास कर सकते हैं।

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

यदि वे रखरखाव कोड चाहते हैं, नियमित डिजाइन पैटर्न में नियमित संरचना में कोड रखने के स्पष्ट लाभ हैं।

यदि वे सत्यापन योग्य कोड चाहते हैं (मुझे PHP में टेस्टेबिलिटी के बारे में बहुत कुछ पता नहीं है) निश्चित रूप से प्रसिद्ध पैटर्न में कक्षाओं को विस्तारित करना अधिक टेस्टेबिलिटी लाता है।

यदि यह केवल अक्षमता है तो शिक्षा ही एकमात्र उत्तर है (और एक अच्छी तरह से डिज़ाइन किए गए ढांचे का उपयोग करने से इसे करने का बेहतर तरीका क्या है?)।

2

अपने पसंदीदा मॉडल का उपयोग करने के लिए उन्हें मनाने के लिए उन्हें मनाने की कोशिश करने की संभावना नहीं है, क्योंकि सबसे अधिक संभावना है कि आप वही लाभ नहीं देखते हैं।

छोटे कदम सर्वोत्तम काम करते हैं। बाहर निकलें और एक दिन में 2 सप्ताह के काम को फिर से लिखें, आप केवल खुद को गधे की तरह दिखेंगे।

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

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

संभोग, अगर उनके पास किसी मॉडल या एमवीसी का उपयोग करने के खिलाफ बहुत विशिष्ट तर्क हैं, तो आपको केवल उस भावना का सम्मान करना होगा।

0

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

मैंने इस विषय पर बहुत पहले पॉडकास्ट/साक्षात्कार सुना है: link। वहां बहुत सारी उपयोगी जानकारी है। सबसे चौंकाने वाली बात यह है कि बहुत से लोग बस बदलाव पसंद नहीं करते हैं और यह नहीं करेंगे। आपको उन्हें प्रक्रिया का हिस्सा बनाना होगा और उन्हें निवेश करना होगा।

3

यह "चीजें जो आपको कभी नहीं करना चाहिए" में से एक है।

http://www.joelonsoftware.com/articles/fog0000000069.html

अभी संसाधनों का सबसे अच्छा उपयोग MVC में जाने है?

आप अपने समय पर "मुक्त" के रूप में घंटों की गणना नहीं कर सकते क्योंकि यह धोखाधड़ी है। आप कंपनी के समय के 0 घंटों में कुछ भी कर सकते हैं यदि यह सब आपके समय पर किया गया था - इसे आरओआर दोबारा लिखें, इसे लिस्प में लिखें, आदि

तो, मान लीजिए कि यह आपको लिखने के लिए एन घंटे लगेगा । क्या आपने यह सुनिश्चित करने के लिए कि यह पूरी तरह से काम करता है, परीक्षण के लिए आवश्यक घंटों में भी जोड़ा गया है? नहीं? फिर एक और 2 एन घंटे में जोड़ें। नए डेवलपर्स के साथ अन्य डेवलपर्स को परिचित करने के बारे में कैसे? नहीं?फिर एक और 2 एन घंटे में जोड़ें।

तो, हम शायद 5N घंटे तक हैं। आपकी अगली जहाज की तारीख से पहले क्या करने की ज़रूरत है? क्या आप इन अतिरिक्त 5 एन घंटों में भी फिट बैठ सकते हैं और अभी भी उस तारीख को बना सकते हैं? यदि हां, तो उसके बाद जहाज की तारीख के लिए क्या आइटम हैं? क्या वे आइटम हैं जो एमवीसी में पुनर्लेखन के मुकाबले 5 एन घंटों में अधिक हो सकते हैं?

पुनर्लेखन के लिए लाभ, समय-सारिणी और रखरखाव के अनुसार क्या होगा?

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

0

आप शायद उन्हें मनाने में सक्षम नहीं होंगे, लेकिन आपको अपनी राय सुनने का अधिकार है - आप टीम के बाद सभी का हिस्सा हैं। यह अप्रासंगिक है कि आप नए हैं या नहीं।