अटक जाने पर, स्टैक ओवरफ्लो का कितनी जल्दी सहारा लेना चाहिए? [बन्द है]


51

मैं आईट्यून्स यू CS193p कोर्स के माध्यम से आईओएस विकास सीख रहा हूं, और मैं अक्सर खुद को ठगा हुआ पाता हूं। मैं खुद को अस्थिर करने की कोशिश कर रहा हूं, लेकिन मुझे यह पता लगाने में घंटों और घंटों का समय लग सकता है कि मैं क्या गलत कर रहा हूं, यह एक तरीका याद आ रहा है या वास्तव में प्रतिनिधिमंडल जैसी पूरी अवधारणा नहीं मिल रही है।

मुझे चिंता है कि मैं बहुत अधिक समय बर्बाद कर रहा हूं, और मैं अटक जाने के तुरंत बाद स्टैक ओवरफ्लो में जाना बेहतर होगा ताकि मैं आगे बढ़ सकूं।

आपके अनुभव में, स्टैक ओवरफ्लो पर जल्दी से पूछना सीखने की प्रक्रिया में बाधा डालता है या इसमें सुधार करता है?


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

1
@ डेविडवैलस अधिक सहमत नहीं हो सके। बहुत से लोग बिना सोचे-समझे (कम गुणवत्ता वाले प्रश्न) पूछते हैं, कुछ लोग सोचते हैं और पूछते हैं (बेहतर सवाल), लेकिन मेरी इच्छा है कि अधिक लोग वास्तव में पूछने से पहले खोजें (कम (पास) डुप्लिकेट)
मार्जन वेनेमा

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

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

6
मुझे लगता है कि एसओ के मेटा पर शायद यह पूछा जाना चाहिए था।
ह्यूजोम

जवाबों:


35

जब मैं नए डेवलपर्स के साथ काम कर रहा हूं, तो मैं उन्हें पांच या दस मिनट के बाद सवाल पूछने के लिए प्रोत्साहित करता हूं जहां वे प्रगति नहीं कर रहे हैं।

इसके दो फ़ायदे हैं: पहला यह है कि वे बिना किसी समस्या के घूरने में बहुत अधिक समय तक मदद ले सकते हैं, लेकिन वे केवल तभी पूछते हैं जब वे कहीं नहीं मिल रहे हों। यदि वे सीख रहे हैं - यहां तक ​​कि किसी ऐसी चीज पर भी जो अंततः जवाब नहीं है - तो वे उस जानकारी को उपयोगी रूप से बनाए रखने की अधिक संभावना रखते हैं।

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

चूंकि ऐसा लगता है कि आप अकेले ऐसा कर रहे हैं, एक भरवां खिलौना, या घड़ी, या दीवार की ओर मुड़कर देखें और समस्या के बारे में पूछें। इसे किसी व्यक्ति को समझाइए, और देखिए कि क्या चीजें ठीक होती हैं।

यदि यह नहीं है, और आप प्रगति नहीं कर रहे हैं, तो किसी से पूछें। पाँच या दस मिनट से अधिक समय बिताना आपके समय की बर्बादी है - जब तक आप कुछ और करने के लिए नहीं जाते हैं, तब तक नए दिमाग के साथ समस्या पर वापस आएं।


17
अपने कुत्ते से अनस्टक होने के लिए बात करने जैसा कुछ नहीं है। :-)
मार्जन वेनमा

2
और जब आप महसूस करते हैं कि आप क्या गलत कर रहे हैं, तो आपका कुत्ता " वाह! मैं ऐसा कभी नहीं सोचा होगा!" एक अहंकार को बढ़ावा देने के लिए कुछ upvotes धड़कता है। ;-)
एक CVn

4
+1 इसे आपके खिलौना डकी से बात करने से "डक डिबगिंग" कहा जाता है। मेरे पास एक वूडू गुड़िया है। मैं इसे वूडू डिबगिंग कहता हूं।
सरदारथियन

4
शानदार जवाब +1। मैं वर्षों से बहुत बार "अटक" गया हूं, और मैंने पाया कि जब मैं किसी और को समझाता हूं तो इसका उत्तर मेरे लिए स्पष्ट हो जाता है। मुझे यह भी पता चलता है कि स्पष्ट सिर पाने के लिए कुछ दूर चलना / कुछ करना अक्सर काम करता है। मैं बहुत जल्दी से स्टैक ओवरफ्लो का सहारा नहीं लूंगा, अगर आप इस समाधान का पता लगा लेंगे तो आप इसे भूल जाएंगे! इन दिनों के आसपास बहुत सारे मस्तिष्क-मृत प्रोग्रामर हैं जो वेब पर भरोसा करते हैं।
एंथनीब्लके

2
और मेरे बहुत सारे सवालों का जवाब खुद को दिया क्योंकि मैं एसओ पर सवाल का मसौदा तैयार कर रहा था। आपके प्रश्न का विवरण तैयार करने का बहुत ही कार्य कुछ उत्तर बताता है
एल्ड्रिन

22

मेरे सभी के महान जवाब के लिए केवल इसके अलावा:

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

तो, मैं कहूंगा कि आगे बढ़ें और (निश्चित रूप से खोज करने के बाद), बस "सबमिट" करने के लिए संलग्न न हों।


+1 - यह ओवरस्टैट नहीं किया जा सकता है। यह एक और कारण है कि सावधानीपूर्वक प्रश्न तैयार करना इतना महत्वपूर्ण है। (और साइडबार में स्वचालित उत्तर-सुझाव एल्गोरिथ्म अन्य प्रासंगिक प्रश्नों को और भी सटीक रूप से प्रदर्शित करेगा)।
kmote

@kmote - उस चीज़ को प्यार करता हूँ। यह मेरे लिए बहुत सारी समस्याओं का हल है।
डैन रे

1
मेरे जीवन की कहानी .. प्रस्तुत करने से पहले कई समस्याओं का समाधान।
आयुष गोयल

20

स्टैक ओवरफ्लो, और हर दूसरे स्टैक एक्सचेंज साइट में सवाल पूछने के लिए दिशानिर्देशों का एक सेट है :

  • अपना होमवर्क करें
  • विशिष्ट होना
  • इसे दूसरों के लिए प्रासंगिक बनाएं
  • विषय पर रहो
  • उदार दिमाग रखो

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

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


1
मैंने पिछले कुछ महीनों में केवल वेबसाइटों (StackOverflow आदि) के इस परिवार का उपयोग करना शुरू किया और मुझे कहना होगा कि मैं एक चीज से बेहद प्रभावित हूं: वर्तनी और सुसंगत लेखन। भले ही पंजीकृत सदस्यों का केवल एक छोटा सा प्रतिशत अंग्रेजी में उनकी मूल भाषा के रूप में है, वस्तुतः हर कोई इस बारे में बेहद सावधान है कि वे कैसे लिखते हैं। मुझे लगता है कि इंटरनेट पर कोई अन्य जगह नहीं है जहां एक विशाल उपयोगकर्ता-आधार ऐसी गुणवत्ता रखता है। यह अजीब है, लेकिन प्रभावशाली है। पुनश्च: मैं कुछ समय के लिए यह कहना चाहता था, बस इसे किसी तरह से ऑनटॉपिक बनाने के लिए एक जगह की आवश्यकता थी :)।
रादु मुराज़े

1
@SoboLAN यह विकि दर्शन है। हम छोटी-मोटी वर्तनी की गलतियों के लिए भी एक-दूसरे के पोस्ट को लगातार संपादित करते हैं। एक गैर-देशी अंग्रेजी बोलने वाले के रूप में, जब मैं पहली बार स्टैक एक्सचेंज में शामिल हुआ तो मैंने यह देखने की आदत बनाई कि किस तरह के संपादन लोगों ने किए हैं, दूसरे की गलतियों से सीखते हुए। स्टैक एक्सचेंज के अनुभव का एक और सकारात्मक उपोत्पाद, मुझे लगता है। कौन जानता है, कुछ बिंदु पर मैं अपनी अंग्रेजी के साथ अंग्रेजी भाषा और उपयोग स्टैक एक्सचेंज में जवाब देने की कोशिश करने के लिए पर्याप्त आश्वस्त हो सकता हूं । : पी
यानि

3

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

फिर एक सवाल है कि कैसे जल्दी से पूछना है, मैं कहूंगा कि एक विशेष समस्या पर कुछ घंटे बिताना लंबा नहीं है (ध्यान दें कि मैं एक अकादमिक पृष्ठभूमि से आता हूं, शायद व्यावसायिक पृष्ठभूमि में यह कम स्वीकार किया जाता है)।

और जब आप SO पर कोई प्रश्न पूछते हैं, तो प्रश्न में समय का निवेश करें:

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

ये केवल कुछ बिंदु हैं। एक सवाल में समय का निवेश करके आप एसओ पर लोगों का सम्मान करते हैं, आप उनके समय का उपयोग मुफ्त में करते हैं। इससे भी महत्वपूर्ण बात, आप समस्या की संरचना करते हैं। इससे आपकी समस्या पहले से ही हल हो सकती है :)।

बस मेरे 2 ct ...


1

मेरा मानना ​​है कि यहां महत्वपूर्ण बात यह है कि आप वास्तव में समझ रहे हैं कि आप क्या कर रहे हैं और सिद्धांत समस्या को प्राप्त करने की कोशिश कर रहे हैं। आपके द्वारा वास्तव में वास्तविक मुद्दे को जड़ से समाप्त करने के बाद स्टैक ओवरफ्लो का उपयोग करना पहली चीजों में से एक है जो मैं करता हूं।

लेकिन, यह एक सवाल नहीं पूछ रहा है।

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

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


1

यह पूरी तरह से व्यक्तिपरक है, लेकिन यहां मेरे उपयोग के लिए मेरे बुनियादी नियम हैं।

1) क्या मेरे घर में आग लगी है? जाहिर है, शाब्दिक रूप से नहीं, लेकिन क्या यह एक समस्या है, जिसे न केवल एक तत्काल समाधान, बल्कि एक आपातकालीन समाधान की आवश्यकता है। यदि ऐसा है, तो उस पर एक दरार ले लो, जल्दी से असफल हो जाओ, सबसे अच्छा संभव सहायता प्राप्त करें।

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

3) क्या यह कुछ ऐसा है जो मेरे कौशल-सेट के बाहर है / इतना अस्पष्ट है कि शायद 100 लोग हैं जिन्होंने कभी इसे देखा है? ऐसा होता है, और अक्सर होता है। मैं आम तौर पर एक या दो घंटे के लिए शोध करने की कोशिश करूँगा या फिर यहाँ या अन्य संसाधनों के लिए।

मैं जानता हूं कि बैठकर अनुसंधान करना और समय बिताना अधिक श्रेयस्कर है, लेकिन अक्सर हमारे पास समय की कमी होती है और आप उपलब्ध हर संसाधन का उपयोग करते हैं, भले ही यह सिस्टम को 'धोखा' देने जैसा लगे।


0

"कितनी जल्दी" अपने स्वभाव से, व्यक्तिपरक होने जा रहा है। हर किसी की राय थोड़ी अलग है।

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

ध्यान रखें कि यह वास्तव में उस प्रश्न को पोस्ट करने के लिए ठीक नहीं है; कई बार ऐसा हुआ है, जब प्रश्न को लिखित शब्दों में रखा जाता है, समाधान स्वयं प्रस्तुत किया गया है और मुझे वास्तव में इसे आप लोगों के पास नहीं रखना है।


0

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

यदि आप ठीक से ऐसा करते हैं, तो आप पाएंगे कि कई बार आप अपनी समस्या खुद सुलझा लेंगे।

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