जब कोडिंग उबाऊ लगने लगे तो क्या करें, जैसे यह सब एक जैसा है? [बन्द है]


33

मैंने 6 साल की उम्र में कमोडोर 64 पर प्रोग्रामिंग शुरू की थी। अब मैं 28 साल का हो गया हूं, और मुझे कंप्यूटर साइंस में पहली डिग्री से 4 कोर्स पूरे करने हैं।

मैं इन सभी वर्षों के बाद कोड लिखने से ऊबने लगा हूं। मैंने सैद्धांतिक कंप्यूटर भाषाओं में कंप्यूटर साइंस और नेटवर्क सुरक्षा क्षेत्र में 10 साल की सी कोडिंग का कोर्स किया है और मुझे अभी कोड लिखने से कोई उत्तेजना नहीं है।

मैं सी, सी ++, पायथन या आप जो भी भाषा चाहते हैं उसमें कोड लिख सकते हैं, लेकिन मैं जो कर रहा हूं उसके बारे में उत्साहित नहीं हो सकता। मैं किसी भी चुनौती को महसूस नहीं कर सकता। मैंने किसी विशिष्ट एल्गोरिदम कौशल की आवश्यकता के बिना मल्टी-थ्रेडेड कोड, HTTPS MITM प्रॉक्सी और एक WSGI एप्लिकेशन लिखा है।

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

अपने रोजमर्रा के काम में मैं कीड़े की खोज, या कोड पर बेंचमार्क करने, या लाइब्रेरी एक्स, वाई, जेड के साथ समस्या को ठीक करने के साथ भी ऊब महसूस कर रहा हूं।

मैं बहुत जिज्ञासु व्यक्ति हूं। मैं हमेशा किसी चीज से उत्तेजित होता हूं। लेकिन मैं तब भी नहीं कर सकता जब मैं महान कोड को देखता हूं। मैं और अधिक सहज महसूस करता हूं कि चीजें कैसे काम करती हैं।

क्या यह मेरे करियर में आगे बढ़ने का समय है? या कंप्यूटर विज्ञान में अधिक चुनौतीपूर्ण सामान प्राप्त करने के लिए? शायद सीएस में एक प्रमुख डिग्री प्राप्त करें?

मैंने प्रोजेक्ट मैनेजमेंट "पीपुलवेयर" पर अपनी पहली पुस्तक पढ़ना शुरू कर दिया है और मुझे सॉफ्टवेयर विकास जीवनचक्र में अधिक रुचि है। आप क्या करने का सुझाव देते हैं?

शायद Google या Microsoft या Apple में जाने की कोशिश कर रहा हूँ जैसे मेरे कुछ दोस्तों ने किया है। या शायद एक अधिक प्रबंधकीय कैरियर पथ। मैंने प्रबंधन में आने की संभावना के लिए मुझे तैयार करने के लिए संचार नियमों और "लोगों के व्यक्तित्व" के बारे में एक अच्छी किताब खोजने की कोशिश की है।

कोई सुझाव?

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


सभी के लिए धन्यवाद, सभी उत्तर के बारे में सोचकर मुझे अपना रास्ता और अधिक स्पष्ट करने का अवसर मिलता है।

एक सारांश उद्देश्य के लिए हम सबसे अधिक मतदान वाले उत्तर के बारे में सामान्यीकरण कर सकते हैं।

सबसे पहले सभी लोग हमारे काम को आपके जीवन का समर्थन बनाने की आवश्यकता को मानते हैं और जीवन में बने रहने का एकमात्र कारण नहीं है (यह मेरा मामला नहीं है), इसलिए, यदि आप जीवन का एकमात्र कारण हैं, यदि आप तेजी से काम करते हैं वास्तव में अवसादग्रस्तता की स्थिति में। जैसा कि लोगों का कहना है, वियना आप के लिए इंतजार नहीं कर रहा है :)

इस अनुस्मारक के बाद लोगों को सुझाव है:

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

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


10
यह वास्तव में निराशाजनक है। आप प्रबंधक क्यों बनना चाहते हैं?

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

9
@ जॉर्ज: मुझे लगता है (लेकिन मैं मानता हूं कि मुझे यकीन नहीं है) यह किसी ऐसे व्यक्ति द्वारा लिखा गया है जो पहली भाषा के रूप में अंग्रेजी नहीं बोलता / लिखता है।
FrustratedWithFormsDesigner

2
देखें कि इस विषय पर एक मजेदार रूपक के लिए मेटाप्रोग्रामिंग का उपयोग क्या है (पूरे समय एक ही चीज़)।

2
@ जॉर्ज: ऑफ कोर्स, अंग्रेजी मेरी पहली भाषा नहीं है। मैं अपनी अंग्रेजी को बेहतर बनाने के लिए कुछ संपादन करना शुरू करता हूं और कोडिंग के बारे में अपनी हताशा को स्पष्ट करता हूं।
बोस

जवाबों:


50

ऐसा होना तय था।

यदि आपकी प्राथमिक रुचि कोड के साथ है, तो यह आपको पागल, निराश और उदास एक बार, किसी दिन स्थायी रूप से चलाएगा।

विकासशील उत्पादों में दिलचस्पी लें और लोगों को उनका उपयोग करते हुए देखने का आनंद लें। यह कोड लिखने का अंतिम लक्ष्य है, है ना? कोड केवल कुछ बड़ा करने के लिए एक उपकरण है।


मेरी पहली दिलचस्पी केवल कोडिंग पर नहीं है, मैं एक खेल पर्वतारोही हूं, मुझे थिएटर में जाना पसंद है, यात्रा करने के लिए प्यार करता हूं और हर साल 2/3 यूरोपीय शहर देखता हूं और मेरी गर्मियों की छुट्टी पर 4000 किमी। यह बात नहीं है। मुझे लगता है कि मैं कोडिंग के बारे में कोई वापसी नहीं कर रहा हूं। मेरे काम में सभी समस्या को संभालना इतना मुश्किल नहीं है और मुझे अधिक चुनौती नहीं मिल सकती है। मुझे लगता है कि सही उत्तर नौकरी बदलना और अधिक जटिल समस्या में अधिक चुनौती प्राप्त करना है। वास्तव में मैं पहले से ही एक अनुसंधान एवं विकास प्रभाग में हूँ।
boos


2
+1 लक्ष्यहीन कोडिंग क्या अच्छा है? घर के बजाय दीवार का निर्माण करने के लिए इसकी आदत।
मयंक

+1 मैंने कोडिंग शुरू कर दी है और अब तक (10 वर्ष से अधिक) केवल खेल बनाने और लोगों को उनका आनंद लेने के लिए देखता रहा। मैं कुछ कठिन दौरों में रहा हूँ जहाँ मुझे समझ आने लगा था कि मुझे अंत में कुछ भी पता नहीं था। मैंने उस पल में शुरू से सब कुछ फिर से सीखा, क्योंकि मैं अभी भी लोगों के लिए खेल बनाना चाहता था।
१२

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

21

मैं आपके प्रश्न का उत्तर एक प्रश्न के साथ दूंगा ...

प्रोग्रामर का काम कोड करना या समस्या-समाधान करना है?

आप कहते हैं कि आप बोर हो गए हैं क्योंकि कोड लिखना ऐसा लगता है जैसे आपने पहले कुछ किया है, जैसे हर बिट कोड पहले भी हो चुका है।

लेकिन आप इस निष्कर्ष पर कैसे पहुंचे कि वह कोड वह कोड है जिसे लिखा जाना चाहिए? अधिकांश समस्याओं के समाधान के लिए सैकड़ों तरीके हैं, लेकिन केवल एक सबसे अच्छा तरीका है।

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

यदि आपको समस्या-समाधान पसंद है, लेकिन कोडिंग से प्यार नहीं है, तो शायद आपको हल करने के लिए पर्याप्त समस्याएं नहीं मिल रही हैं। किसी भी समय मेरा काम थकाऊ लगने लगता है मेरा मानना ​​है कि हल करने के लिए एक समस्या है। मैं काम में व्यस्त क्यों हूं? मैं किस समाधान के साथ आ सकता हूं जो मेरी नौकरी से व्यस्त काम को हटा देगा? यही प्रोग्रामिंग की खूबसूरती है।


1
@Rnesis: मैं समस्या को हल करने के लिए प्यार करता हूँ, मैं प्यार कोडिंग बंद कर रहा हूँ! यह मेरे "सवाल" का दिल है। सभी कार्यक्रमों की समस्या हमेशा एक जैसी होती है, एक सामान की खोज करें, दूसरे को ऑर्डर करें, यदि ऐसा करते हैं, तो अन्य, अगर, दूसरे से, डीबी से कनेक्ट, एक दूरस्थ सेवा से संबंध बनाते हैं, तो उससे संवाद करें, दूसरी सेवा पर वापस जाएं, आदि
boos

1
@boos - प्रतिक्रिया के लिए धन्यवाद, "अगर आपको समस्या-समाधान पसंद है" के लिए एक पैराग्राफ जोड़ा।
निकोल

9

मुझे लगता है कि आपने प्रक्रियात्मक प्रोग्रामिंग का एक बहुत कुछ किया है और इसके बारे में थक गया है - जिसे मैं पूरी तरह से समझता हूं। चरण दर चरण को निर्दिष्ट करना है बहुत हर प्रक्रियात्मक भाषा में एक ही।

चूँकि ऐसा लगता है कि आपके पास बहुत सारी गैर-कार्य गतिविधियाँ हैं, जिनमें से कुछ अवधारणाओं को सीखने का सुझाव दूंगा, जो अब आप जो जानते हैं, उससे मिलते-जुलते नहीं हैं, और - हाँ - बहुत हैं, लेकिन शुरू करने के लिए मैं हास्केल की सिफारिश करूँगा क्योंकि यह है

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

यहाँ एक पूरा छँटाई समारोह है:

qsort []     = []
qsort (x:xs) = qsort (filter (< x) xs) ++ [x] ++ qsort (filter (>= x) xs)

( स्पष्टीकरण के लिए http://www.haskell.org/haskellwiki/Introduction#Ease_of_understanding देखें )

यदि इनमें से कोई भी आपके लिए नया है, तो मैं आपको रोमांच शुरू करने के लिए प्रोत्साहित करूंगा।

गुड लक मजे करो।


+1 यह वही निष्कर्ष है जो मैं ओपी पढ़ने के बाद आता हूं। ओपी को प्रक्रियात्मक से दूर जाने की जरूरत है। प्रोग्रामिंग की दुनिया बहुत बड़ी है, उसे बस बाहर जाने और तलाशने की जरूरत है! :)
रात्रि

8

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

मुझे फोटोग्राफी के साथ प्रेरणा मिली है, और उपयोगकर्ता अनुभव का अध्ययन कर रहा है। इसके बारे में सोचें, यह कैसे होता है कि सांता क्लारा से बाहर आने के लिए ऐपल खुद को लार टपका रहे लोगों का गॉब्स पा सकता है, जब अन्य वेंडर्स को ल्यूक वार्म रिस्पॉन्स मिलता है? क्या आप गंभीरता से सोचते हैं कि एंड्रॉइड ने बड़ी प्रतिक्रिया के रूप में प्राप्त किया होगा यदि Apple ने इतने लंबे समय तक Verizon पर iPhone जारी करने का विरोध नहीं किया था? मैं आपको एक बड़ा संकेत दूंगा: जरूरी नहीं कि ये उत्पाद इतने तकनीकी रूप से उन्नत हों। उन्माद के लिए एक विशाल मनोवैज्ञानिक घटक है।

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


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

गेम प्रोग्रामिंग का प्रयास करें: डी, ​​यह ज्यादातर दृश्य समस्याएं हैं
डोमिनिक मैकडोनेल

7

संभवतः आपको अभी पर्याप्त तकनीकी चुनौती नहीं मिली है?

  • अत्यधिक वितरित प्रणालियों का प्रयास करें। क्या आप आसानी से माइक्रोसेकंड परिशुद्धता के साथ एक क्लस्टर में 1000 कंप्यूटरों से लॉग इकट्ठा करने के लिए एक सिस्टम कोड कर सकते हैं?
  • कठिन-वास्तविक समय का प्रयास करें। एक इंजन के एक रोटेशन में अपनी सभी प्रक्रियाओं को पैक करें।
  • कंप्यूटर विज़न या इमेज प्रोसेसिंग का प्रयास करें। गणित कौशल, फार्मूला-टू-कोड कौशल, अनुकूलन कौशल सभी काम में आते हैं।
  • ऐ की कोशिश करो। देखें कि आईबीएम का कंप्यूटर कैसे खतरे में है? संभवतः इस क्षेत्र में कुछ एल्गोरिथम परिष्कार शामिल हैं।

आदि, निश्चित रूप से एक ऐसे क्षेत्र में कम से कम कमाने के लिए तैयार रहें जहां सामान आपके लिए चुनौतीपूर्ण है, उबाऊ नहीं।


4

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

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

लेकिन यह एक विकल्प है जो विचार करने लायक हो सकता है।


4

हां, मुझे कभी-कभी यह अहसास होता है कि वास्तव में एक ही तरह का कोड बार-बार लिखने से होता है। लेकिन नहीं, मैं अभी इससे ऊब नहीं हूं। ऐसा क्यों है?

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

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

दूसरा, एक नई लाइब्रेरी, फ्रेमवर्क, या एपीआई सीखना: जैसा कि आपने सही कहा है, नए फ्रेमवर्क अक्सर नई समस्याओं को हल नहीं करते हैं; वे बस इसे एक अलग तरीके से हल करते हैं, उदाहरण के लिए अमूर्त की एक अतिरिक्त परत जोड़कर। यह संभव है क्योंकि आज के कंप्यूटर पहले की मशीनों की तुलना में अधिक शक्तिशाली हैं; या, शायद, क्योंकि हम एक पूरे के रूप में सॉफ्टवेयर लेखन में बेहतर हो रहे हैं।

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

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

क्षमा करें यदि यह उत्तर कुछ लंबा है। मैंने यह दिखाने की कोशिश की कि प्रोग्रामिंग में मेरी प्रेरणा कहाँ से आती है ... और मुझे यह जानने में दिलचस्पी होगी कि क्या किसी समय आपको भी ऐसा ही महसूस हुआ था, और क्या (और क्यों) आपकी प्रेरणा अंततः छोड़ दी गई, वैसे भी।


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

1
+1 मैं भी ऐसा महसूस करता हूं। मुझे लगता है कि मेरी व्यक्तिगत पसंदीदा चुनौती कुछ नया करने के लिए नहीं है, लेकिन इसे सर्वश्रेष्ठ तरीके से कर रही हूं। सबसे अच्छी तारीफ मुझे मिल सकती है, "मैंने आपका कोड पढ़ा और पूरी तरह से समझा।" मुझे ऐसे कोड समीक्षाएँ पसंद हैं जहाँ कोई भी बेहतर बनाने के लिए कुछ भी नहीं सोच सकता है।
माइकल के

@boos, यदि आप सिद्धांत पसंद करते हैं, तो आपके सिर को खोने के लिए सीएस / गणित / भौतिकी में हजारों विषय हैं।
जॉब

3

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

या, आप करियर को पूरी तरह से बदल सकते हैं, कुछ ऐसा करने के लिए जिसका कंप्यूटर से कोई लेना-देना नहीं है। क्या आपने अपने आप से पूछा है कि आपका सपना नौकरी क्या होगा, अगर कोई आपको दे सकता है?


3

माइक्रोकंट्रोलर्स के साथ खेलना शुरू करें। यह प्रोग्रामिंग प्रतिभा का सबसे ताज़ा और रोमांचक अनुप्रयोग है जिसके बारे में मैं सोच सकता हूँ।


2

ऐसा लगता है कि हमारी पृष्ठभूमि के शुरुआती बिंदु समान हैं, क्योंकि हम दोनों ने समान मशीनों पर 6 साल की उम्र के बारे में प्रोग्रामिंग करना शुरू कर दिया है और विभिन्न कारणों से दोनों प्रोग्रामिंग से बाहर हैं। मेरी किसी भी डिग्री का प्रोग्रामिंग से कोई लेना-देना नहीं है - मेरे पास सभी संगीत डिग्रियां हैं - हालांकि मैंने कुछ स्नातक स्तर के कंप्यूटर साइंस कोर्स किए हैं।

आप सही हैं, मुझे लगता है, कि प्रोग्रामर अक्सर एक ही समस्या को बार-बार हल करते हैं, यह देखते हुए कि "नया" सभी "पुराने" पर आधारित है। आपको इस तथ्य का एहसास है कि यह आपके क्रेडिट के लिए है; बहुत से डेवलपर्स और व्यवसायी लोग नई तकनीकों को पुराने से पूरी तरह से डिस्कनेक्ट कर देते हैं।

तो, उन प्रकार की समस्याओं को हल करना आपके लिए निर्बाध है। क्या दिलचस्प होगा? क्या आप आम तौर पर समस्या-समाधान पसंद करते हैं? शायद "व्यवसाय" सॉफ़्टवेयर डेवलपर के रूप में एक जीवन आपके लिए नहीं है।

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


2

यह मुझे लगता है जैसे आप फंस गए हैं। आप ऐसी स्थिति में हैं, जिसमें आप नहीं होना चाहते हैं और आप नहीं जानते कि इससे कैसे बाहर निकला जाए। मेरी सलाह सरल है: बस कुछ अलग करने के लिए कुछ अलग करें। यहां तक ​​कि अगर यह आपकी समस्या का समाधान नहीं करता है, तो यह संभवतः आपको अस्थिर कर देगा।

मैं C, C ++, Python या जो भी भाषा आप चाहते हैं, में कोड लिख सकता हूं, लेकिन मैं जो कर रहा हूं उसके बारे में उत्साहित नहीं हो सकता। मैं किसी भी चुनौती को महसूस नहीं कर सकता। मैंने किसी विशिष्ट एल्गोरिदम कौशल की आवश्यकता के बिना मल्टी-थ्रेडेड कोड, HTTPS MITM प्रॉक्सी और एक WSGI एप्लिकेशन लिखा है।

इसे गलत तरीके से न लें (ये सभ्य उपलब्धियां हैं), लेकिन यह शायद ही प्रोग्रामिंग में सभी चुनौतीपूर्ण और रोमांचक समस्याओं की एक व्यापक सूची है। हल करने के लिए अभी भी बहुत सारी चुनौतीपूर्ण समस्याएं हैं। सबसे चुनौतीपूर्ण समस्याओं में बड़े पैमाने पर काम करना शामिल है। आपने एक WSGI एप्लिकेशन लिखा है, लेकिन क्या आपने एक ऐसा लिखा है जो एक दिन में एक बिलियन पेज व्यू को हैंडल कर सकता है? आपने मल्टी-थ्रेडेड कोड लिखा है, लेकिन क्या आपने मल्टी-कंप्यूटर कोड (सैकड़ों कंप्यूटरों के साथ) लिखा है?

संक्षेप में, यदि आप कुछ गैर-तकनीकी करने की कोशिश करना चाहते हैं, तो इसके लिए जाएं। लेकिन ऐसा न करें क्योंकि आपको लगता है कि आपने वहां हल की गई सभी समस्याओं को हल कर दिया है क्योंकि ऐसा नहीं है।


बेशक, मुझे पता है कि यहाँ बहुत सारी चुनौतीपूर्ण चीजें हैं :) मैं अभी थोड़ा सा कोडर हूँ! समस्या यह है कि प्रोग्रामिंग सामान के आसपास की जटिलता मुझे खुश नहीं करती है। सभी प्रतिक्रिया के साथ मुझे बात मिलती है, मुझे बेटेन महसूस करने के लिए अधिक अकादमिक सामान का अध्ययन करने की आवश्यकता है। वैसे भी धन्यवाद :)
boos
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.