यहाँ एक असफल और कुछ बहुत अच्छे प्रयासों के बाद मेरा इस पर लेना है:
प्रोग्रामिंग समस्या समाधान है।
उन ठोस चीज़ों के साथ शुरू करें जिन्हें प्रोग्राम किया जाता है कि वे हर दिन उपयोग करते हैं - इंटरनेट ब्राउज़र (फेसबुक), सेल फोन, कैश रजिस्टर, आदि। उन्हें आपको बहुत सारे उदाहरण देने के लिए प्राप्त करें। स्थापित करें कि इन सभी चीजों में एक तरह का कंप्यूटर है। कंप्यूटर का दिल प्रोसेसर है।
प्रोसेसर एक बहुत तेज, लेकिन बहुत गूंगा कार्यकर्ता की तरह है। यदि आप इसे कुछ निर्देश देते हैं, तो यह ठीक वैसा ही करेगा जैसा आप कहते हैं। यह कुछ भी अतिरिक्त नहीं करेगा और यह आपको यह नहीं बताएगा कि आपने जो कुछ करने के लिए कहा था वह गलत था। यह प्रोसेसर सब कुछ करता है, हालांकि - यदि आप इसे वास्तव में कैसे करना है, यह बताते हैं, तो यह एक फोन कॉल कर सकता है या एक ई-मेल में तस्वीर डाल सकता है।
उससे पूछें कि वह सोडा मशीन से सोडा की कैन खरीदने के लिए एक बहुत तेज़ लेकिन बहुत गूंगा कार्यकर्ता को कैसे बताएगी। जैसा कि वह चरणों का वर्णन करना शुरू कर देता है ("मशीन में पैसे डालें और बटन दबाएं।") इसे प्रोग्राम की तरह विच्छेदित करना शुरू करें ("पैसा क्या है? मैं इसे मशीन में कैसे डालूं? जब मैं मशीन में पैसा डालूं और दबाऊं?" एक ही समय में बटन, कुछ नहीं होता है। ")। यदि आपके पास एक व्हाइटबोर्ड है, तो निर्देशों के पहले सेट के साथ बाईं ओर शुरू करें। जैसा कि वह उन्हें संशोधित करता है, नई बड़ी सूची को दाईं ओर रखें। जब आपके पास निर्देशों का एक अच्छा सेट होता है, तो टुकड़ों को सामान्य करना शुरू करें ("अपनी जेब से पैसे निकालें और सोडा को ट्रे ध्वनि से समान हटा दें - क्या हिस्से समान / अलग हैं?") सामान्यीकरण लें और उन्हें बीच में डालें? और उन टुकड़ों को पार कर लेते हैं जो अब वे शामिल करते हैं। अंततः उसके मूल निर्देशों के साथ मिलान करने के लिए टुकड़ों को टाई करने की कोशिश करें, फ़ंक्शन कॉल की तरह। अन्य अच्छे अभ्यास: एक पत्र मेल करें, एक दरवाजे के माध्यम से जाएं, एक चक्र / वर्ग / त्रिकोण खींचें।
इसलिए प्रोग्रामिंग समस्या निवारण है: समस्याओं को भागों में तोड़ना, उन भागों की पहचान करना जो सामान्य हैं, और उन भागों को समूह बनाकर समस्याओं को हल करना है। जल्द ही, आपको पता चलता है कि कुछ भाग कई समस्याओं के लिए सामान्य हैं, और फिर आप उन समस्याओं को हल करने के लिए एक साथ पुर्जों को रखना शुरू करते हैं जिन्हें आपने जाना भी नहीं था।
ठीक है, इस बिंदु से वह समझ सकती है लेकिन वह शायद ऊब चुकी है। शांत प्रोग्रामिंग उदाहरणों के एक सेट के साथ इसका पालन करें। शेडर्स और संबंधित दृश्य कोड डेमो करना आसान है - आप एक तस्वीर डाल सकते हैं और बहुत छोटे कोड परिवर्तनों के साथ इसमें बदलाव करना शुरू कर सकते हैं। यदि उसने फेसबुक में रुचि व्यक्त की, तो दोस्तों के दोस्तों (उसके 6-डिग्री) डेटा को देखने के लिए REST के माध्यम से फेसबुक से बात करना बंद करें। अगर वह वीडियो गेम पसंद करती है, तो अपने कोड के कुछ स्निपेट के साथ एक युगल ओपन सोर्स गेम डेमो दिखाएं और वे गेम के काम में कैसे मदद करते हैं। घर पर उसकी जांच कर सकने वाले कुछ मुफ्त उपकरण और संसाधन दिखाकर इसे खत्म करें। (अजगर, सी #, आदि)
मेरे असफल प्रयास: पीआई गणना (वे पूछ रहे थे), सी-जंप बोर्ड गेम http://c-jump.com/ (वे इसे नहीं मिला और निर्देश बगिया थे), और लाइव कोडिंग 2d खेल (बस कोई दिलचस्पी नहीं रख सकता, चाहे मैं डेमो के बीच कितने भी छोटे कदम उठाऊं)।
सौभाग्य!