क्या सुपर प्रोग्रामर जैसी कोई चीज होती है? [बन्द है]


14

क्या आप एक सुपर प्रोग्रामर भर में आए हैं? "सामान्य" अनुभवी / महान प्रोग्रामर की तुलना में उसे या उसके रूप में क्या पहचानता है?

इसके अलावा। आप अपनी टीम के किसी व्यक्ति के साथ कैसा व्यवहार करते हैं, जो मानता है कि वह एक सुपर प्रोग्रामर है? दोनों के मामले में वह वास्तव में है या यदि वह नहीं है?

संपादित करें : दिलचस्प इनपुट सभी दौर, धन्यवाद। कुछ चीजों को चमकाया जा सकता है:

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

  1. थोरबजर्न की परिभाषा : एक व्यक्ति जो एक अच्छी टीम के बराबर लंबे समय तक लगातार काम करता है।

  2. फ्री इलेक्ट्रॉन, हेनरी के जवाब से जुड़ा हुआ है । असाधारण क्षमताओं का एक बहुत ही उत्पादक व्यक्ति। स्पष्टीकरण एक अच्छा पढ़ा है।

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

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

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


3
हां, और उसका नाम जॉन कार्मैक है
गैरी विल्बोबी

1
मेरे पास मेरी डेस्क में एक ड्रा में बंद कागज के एक छोटे टुकड़े पर 4 फ्री इलेक्ट्रॉनों की एक सूची है ।
हेनरी

यदि 'सुपर प्रोग्रामर' == 'जीनियस प्रोग्रामर' क्लिक_थिस google.com/events/io/2009/session/MythGeniusProgrammer.html
जेम्स

अहंकार की प्रोग्रामिंग पर जेफ की प्रतिक्रिया देखें ।
rwong

मैं सिर्फ द माइथिकल मैन-मंथ की पुस्तक, en.wikipedia.org/wiki/The_Mythical_Man-Month से एक विचार जोड़ना चाहता हूं , एक शोध पत्र का हवाला दिया गया था जो एक बढ़िया प्रोग्रामर को एक ठीक एक से कई गुना बेहतर बताता है। मुझे सभी विवरण याद नहीं हैं, लेकिन जाहिर है कि किसी ऐसे व्यक्ति में बहुत अधिक मूल्य है जो एक टीम पर उत्पादन कर सकता है, दूसरों की तुलना में अधिक परिमाण के आदेश।
ट्रैविस

जवाबों:


17

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

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

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

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

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

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

(EDIT: अनाम बिट का कारण, सुपर-प्रोग्रामर के प्रतिशोध का विरोध करने वालों से बचने से बचना है)।


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

@ सुपर में, गुमनामी शुरुआत में व्यक्तिगत होने से बचने के लिए है। यदि आप मानते हैं कि आप अलौकिक हैं, तो आप आलोचना के लिए बहुत अच्छी तरह से नहीं ले सकते हैं (या यह सवाल पहले स्थान पर नहीं पूछा गया होगा)।

2
@ यह, यह पहले से ही व्यक्तिगत है जब आप किसी के साथ अपने बारे में विश्वास करते हैं। गुमनामी विश्वास को विकसित करने के लिए कहीं अधिक कठिन बना देती है। टीम के सदस्यों को यह विश्वास दिलाना होगा कि वे ईमानदार हो सकते हैं, आलोचना का स्वागत है और यह महत्वपूर्ण राय खुले में है।
बृहस्पतिवार

क्या एक सुपर प्रोग्रामर को जूनियर प्रोग्रामर को कोड समझाना आसान या अधिक कठिन लगेगा? यदि अंतर बड़ा है तो स्पष्टीकरण कठिन हो सकता है। यह नहीं होगा?
मुहम्मद अल्करौरी

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

5

एक सुपरप्रोग्रामर कोई भी व्यक्ति है जो एक तेज संकलक की तुलना में तेजी से कोड उत्पन्न कर सकता है, एक पुनरावर्ती फ़ंक्शन की तुलना में अधिक शक्तिशाली है, और एक ही सीमा में फीफो स्टैक पर छलांग लगाने में सक्षम है।

जिस तरह से आप अपनी टीम के किसी व्यक्ति के साथ व्यवहार करते हैं, जो मानता है कि वह एक सुपरप्रोग्रामर है, उसे उसकी एकमात्र कमजोरी - सूरज की रोशनी में उजागर करने से है।


5
@ चेतन: एक फीफो स्टैक क्या है?
रवांग

3
@ चेतन: यह एक जवाब नहीं है। शायद आपने ऐसे प्रोग्रामर के साथ काम नहीं किया है जो सिर्फ इतने अविश्वसनीय हैं, अगर आप बिल्कुल भी योग्य हैं तो आपको आश्चर्य होगा।
JBRWilkinson

एक सुपरप्रोग्रामर को क्लाउड में रहना चाहिए और अपनी माइंड क्वेरी लैंग्वेज के लिए एक सार्वजनिक एपीआई प्रदान करना चाहिए ।
रवांग

@ क्रॉन्ग फर्स्ट-इन फर्स्ट-आउट स्टैक, जिसे कतार के रूप में भी जाना जाता है।
वैकल्पिक

1
@mathepic: यदि आप एक कतार को एक स्टैक कह सकते हैं, तो क्या इसका मतलब यह है कि LIFO और FIFO एक ही चीज हैं? (
पैराफेरेस

3

व्यक्ति को कार्य शैली में कोडर्स में स्वयं / स्वयं का एक अध्याय लिखने के लिए कहें । इसे किसी प्रकाशक को भेजें। यदि यह अस्वीकार हो जाता है, तो व्यक्ति सुपर प्रोग्रामर नहीं है।


क्या आपका कथन सही है? (यदि यह स्वीकार किया जाता है, तो क्या आप मान सकते हैं कि वह एक सुपर प्रोग्रामर है?) मुझे लगता है कि यह स्पष्टीकरण का उपयोग कर सकता है।
वैकल्पिक

मैंने उस पुस्तक के लेखक के लिए जो भी सम्मान पाया, उसे पढ़ते ही मैंने एक सम्मान खो दिया कि वह कभी "जावा-आधारित लेन-देन संदेश प्रणाली के वास्तुकार" थे। ओह, ठीक है, कम से कम उसके पास उस नौकरी को छोड़ने का भाव था।
डैन मोल्डिंग

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

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

@ अलकौरी: यदि सुपरस्टार के समान सुपर का अर्थ है , तो हाँ, सुपर-प्रोग्रामर होने का मतलब प्रसिद्ध होना भी है।
rwong

2

ऐसे लोग हैं जो दूसरों की तुलना में अधिक उत्पादन कर सकते हैं।

ऐसे लोग हैं जो दूसरों की तुलना में कम दोष दर के साथ उत्पादन कर सकते हैं।

जो सामान्य रूप से सामान्य दोष दर की तुलना में कम उत्पादन के साथ अधिक उत्पादन कर सकते हैं, वे सुपर-प्रोग्रामर कहे जाने के योग्य हो सकते हैं।

के रूप में जाना जाता है या इस तरह के बारे में सोचा जा रहा है आमतौर पर केवल एक प्रबुद्ध प्रबंधक को दृष्टि के लाभ के साथ स्पष्ट है।

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

मनोवृत्ति <> क्षमता।


1

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


0

क्या आप एक सुपर प्रोग्रामर भर में आए हैं? क्या उसे या उसके रूप में पहचान करता है

जो प्रोग्राम / प्रोजेक्ट बनाए गए हैं , उसका सोर्स कोड, जो अध्ययन किया है।

उनका मानना ​​है कि वह एक सुपर प्रोग्रामर हैं

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

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