बहुत सारे जवाब यहाँ और कई जगहों पर मौत के लिए कहा गया है। या, कम से कम मैंने इसे मौत के बारे में सुना है। अपनी आईडीई सीखें, तेजी से टाइप करना सीखें, फ्रेमवर्क का उपयोग करें, कोड जेनरेशन का उपयोग करें, आदि। हां, निश्चित रूप से ये चीजें मदद करेंगी और मुझे संदेह है कि कई प्रोग्रामर हैं जो उन सभी के स्वामी हैं। लेकिन प्रोग्रामर का प्रकार होना जो इन सवालों को पूछता है और स्टैक ओवरफ्लो जैसी साइटों को बताता है, आप इन चीजों को पहले से ही जानते थे । क्या आप केवल उन्हें यहाँ दोहराया जाना चाहते थे या आप बस थोड़ा वेंट करना चाहते थे?
लेकिन क्या होगा अगर हम उस अवस्था में पहुँच पाए? मेरा मतलब है कि इन सभी सुझावों में मास्टर? फिर क्या होगा? कुंआ। मुझे लगता है कि समय-रेखाएँ और भी कम हो जाएंगी। और फिर, हम गुणवत्ता की धारणा पर लौट आएंगे। मेरा मतलब है, हमारा शिल्प निश्चित रूप से आगे बढ़ा है और दशकों में अधिक से अधिक उत्पादक बन गया है। लेकिन इस समय के दौरान गुणवत्ता में वृद्धि हुई है (बहुत प्रारंभिक वर्षों को छोड़कर)?
मेरा उत्तर सरल है: गुणवत्ता सॉफ्टवेयर में समय लगता है ! आप केवल दूसरे (गुणवत्ता / गति) के लिए एक व्यापार कर सकते हैं। लेकिन हाँ, हम सभी जानते हैं कि हालाँकि हम उस डिग्री के बारे में ईमानदार नहीं हैं जिसके कारण ट्रेड-ऑफ अक्सर पैमाने के गति अंत पर समाप्त होता है। और हम परियोजनाओं पर जल्दी झूठ बोल रहे हैं!
मैं कहता हूं कि आप यहां गलती नहीं कर रहे हैं। समस्या यह है कि लोगों को यह धारणा है कि सॉफ्टवेयर की गुणवत्ता कितनी लंबी होनी चाहिए। हम अपने आप को विश्वास करने में मूर्ख बनाते हैं कि हम अपने प्रबंधकों या यहाँ तक कि हम गुप्तचर के प्रकारों के साथ गुणवत्ता सॉफ्टवेयर बनाने में सक्षम हैं। हम क्वालिटी सॉफ्टवेयर नहीं बनाते हैं । हम सॉफ्टवेयर लिखते हैं जो कभी-कभी किसी एप्लिकेशन के कुछ कोनों में गुणवत्ता की चमक के साथ काम करता है।
तो हम इस बारे में क्या कर सकते हैं? हम अपने मालिकों को सिर्फ यह नहीं समझा सकते हैं कि हमें अपनी प्रत्येक परियोजना में निवेश को दोगुना या तिगुना करना होगा। मैं कहता हूं कि उदाहरण के द्वारा नेतृत्व करें। साइड प्रोजेक्ट के रूप में वास्तव में एक बेहतरीन सॉफ्टवेयर बनाएं। इसमें अपना समय लगाएं और समझौता न करें। जब आप प्रगति करते हैं तो सभी ध्यान देते हैं। स्पष्ट रूप से असंबंधित कार्यों पर ध्यान दें, आपको अप्रत्याशित समय देना पड़ा है और देखें कि क्या आप इसे सही ठहरा सकते हैं। आपके द्वारा काम की गई अन्य सभी परियोजनाओं के साथ इसका विरोध करें। क्रूरतापूर्वक ईमानदार रहेंअपने आप को और इस विश्लेषण के सभी पहलुओं के साथ। क्या आपके गुणवत्ता सॉफ़्टवेयर के साथ आपके द्वारा की गई अतिरिक्त चीजें "वास्तविक" परियोजनाओं में काम में उपेक्षित हो सकती हैं? लेकिन शायद आपकी कोशिश नाकाम रही। क्या कारण था? क्या आप ऊब गए हैं और सिर्फ कोर फीचर्स पाने के लिए दौड़ पड़े हैं? मैंने अभी तक खुद ऐसा कुछ नहीं किया है, यही वजह है कि मैंने इस विचार को कुछ संदेह के साथ समाप्त किया है - लेकिन मैं इसे वास्तविक रूप देने का इरादा रखता हूं। मैं तुम्हें तैनात रखेंगे :)।
अंत में, मुझे लगता है कि सबसे (यदि सभी नहीं) प्रदर्शन मूल्यांकन मुड़ और असाधारण जोड़ तोड़ कर रहे हैं। आप गुणवत्ता और गति को 100% से कम नहीं कर सकते। आपका बॉस आपको एक मानक के खिलाफ स्कोरिंग होना चाहिए जो संगठन द्वारा निर्धारित किया गया है। गुणवत्ता और गति के बीच व्यापार-बंद पर संगठन का मानक। चलो कल्पना करते हैं कि OrangeSoft Inc. को 33% गुणवत्ता और 66% गति की उम्मीद है। इसलिए यदि आप ऐसा कोड लिख रहे हैं जिसमें शायद इकाई का एक तिहाई परीक्षण है, लेकिन इसे गति और कम प्रसव के समय के साथ बनाना चाहिए, तो आपको अपनी समीक्षा पर 100% के करीब स्कोर करना चाहिए! (ये बहुत कठिन उपमाएं हैं, लेकिन आपको यह बात समझ में आती है)। लेकिन इसके बजाय, ऐसा क्या होता है कि बॉब कोड को बहुत तेजी से लिखता है, लेकिन यह बहुत ही छोटी गाड़ी है। तो अपने प्रदर्शन की समीक्षा पर वह गुणवत्ता के लिए 3/5 और गति के लिए 5/5 स्कोर करेंगे। दूसरी ओर कैरल कोड को बहुत धीमा लिखता है लेकिन काफी कम कीड़े पैदा करता है। उसने गुणवत्ता के लिए 5/5 स्कोर किया लेकिन गति के लिए 3/5। किसी भी तरह बॉब और कैरल उनकी परवरिश पर डॉक हो जाते हैं। क्या किसी भी कर्मचारी के लिए एक पूर्ण स्कोर प्राप्त करना संभव है? क्या यह उचित है?