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