बाहर की दुनिया के लिए, प्रोग्रामर, कंप्यूटर वैज्ञानिक, सॉफ्टवेयर इंजीनियर, और डेवलपर्स सभी एक जैसे लग सकते हैं, लेकिन यह उन लोगों के लिए मामले से बहुत दूर है, जो जीवन जीने के लिए सॉफ्टवेयर बनाते हैं। किसी भी प्रोग्रामर की क्षमता और ज्ञान बहुत व्यापक रूप से, साथ ही साथ उनके टूल (ओएस, भाषा, और हां, पसंदीदा संपादक), और विविधता विविधता सॉफ्टवेयर में कई उप-संस्कृतियों को जन्म दे सकती है - जैसे प्रोग्रामर जो सक्रिय रूप से स्टैक ओवरफ्लो और इस साइट का उपयोग करते हैं। बनाम कई और कौन नहीं।
मैं दूसरों से सुनने के लिए उत्सुक हूं कि वे कौन-से सॉफ़्टवेयर उप-संस्कृतियों का सामना कर चुके हैं, जो कि प्रशंसा, नापसंद, या यहां तक कि बनाए गए हैं। शुरुआत के लिए, मैंने सामना किया है:
- Microsoft द्वारा संचालित कंपनियां और डेवलपर : उनका पूरा स्टैक Redmond, WA से है। ई-मेल आउटलुक ई-मेल है। वेब IE और IIS है। उनके पास वीबी, .नेट, विज़ुअल स्टूडियो, आदि के कई संस्करणों से भरे उनके एमएस डेवलपर नेटवर्क सदस्यता के बड़े बाइंडर हैं, जो शेल / कमांड-लाइन के साथ काम करने से बचते हैं। खुले स्रोत के साथ उपद्रव और इस तरह के बारे में सब कुछ नहीं है। एमएस-केंद्रित कंपनियां 9-5 और काफी कॉर्पोरेट (व्यापार प्रबंधकों द्वारा संचालित होती हैं, न कि सॉफ्टवेयर लोग)। आजकल (गैर-एमएस उपकरणों की व्यापक उपलब्धता को देखते हुए), यह हैकर संस्कृति का विरोध है।
- पुराने स्कूल के सीएस लोग : वे अक्सर लिस्प और यूनिक्स को अच्छी तरह से जानते हैं; कभी-कभी, उन्होंने खुद को एक अर्ध-लोकप्रिय लिस्प लिखा होगा, या एक सिस्टम उपयोगिता। कुछ, यदि कोई हो, "सॉफ्टवेयर इंजीनियरिंग" चीजें उनके लिए नई हैं, और न ही वे इस तरह से प्रभावित हैं। लिस्प, सी, प्रोलॉग और स्मॉलटाक जैसी प्रोग्रामिंग भाषाओं के संदर्भ, इतिहास और उच्च-स्तरीय निहितार्थों को जानें। 80 और 90 के दशक के AI परिणामों के बारे में कड़वा हो सकता है। Emacs उपयोगकर्ता बनें। बिना पलक झपकाए मल्टी-लाइन शेल कमांड टाइप कर सकते हैं। उनकी सलाह क्रिप्टिक द्वारा की जा सकती है, लेकिन एक बार समझे जाने वाले सोने में शामिल है।
- नए-स्कूल वेब डेवलपर्स : कंप्यूटर और वीडियो गेम के साथ बड़े हो रहे हैं, लेकिन अक्सर वास्तव में केवल 90 के दशक के उत्तरार्ध या 00 के दशक की शुरुआत में प्रोग्रामिंग शुरू हुई। 1 से 1.5 स्क्रिप्टिंग / गतिशील भाषाओं के साथ सहज; लगता है कि C और रूबी / पर्ल / पायथन के बाहर की भाषाएँ अनावश्यक / जादुई हैं। शुरू में HTML को प्रोग्रामिंग माना जा सकता है। एक मैक प्राप्त करने के लिए और इसके बारे में कट्टर / तर्कहीन हो। उनके निर्माण से अधिक चौखटों का उपयोग करें। अक्सर NoSQL और / या रूबी ऑन रेल्स के बारे में अत्यधिक उत्साही।
- न्यू-स्कूल सीएस : सांख्यिकी, बेयसियन मॉडल और अनुमान में बहुत सारे प्रशिक्षण; "ऐ," मत कहो "मशीन लर्निंग।" लिस्प की तुलना में अधिक जावा, लेकिन विशेषज्ञ हास्केल प्रोग्रामर भी हो सकते हैं। अपने क्षेत्र के विशेषज्ञों (Google, वित्त / क्वेंट) द्वारा वास्तविक वास्तविक दुनिया की सफलताओं को देखकर अक्सर उन्हें (अति विश्वास) कर दिया जाता है। लेकिन बड़ा डेटा, और इस तरह के वितरित प्रसंस्करण, वास्तव में दुनिया बदल रहे हैं।
ऊपर दिए गए उदाहरण किसी भी तरह से पूर्ण, सही, ऑर्थोगोनल या उद्देश्य से नहीं हैं। :) बस जो मैंने व्यक्तिगत रूप से देखा है, और व्यापक चर्चा के कुछ चर्चा और रूपरेखा प्रदान करने के लिए प्रदान किया है। असहमति महसूस करें!