दूसरे दिन मेरे पिताजी ने मुझसे एक सवाल किया, जिसकी मैंने उनसे कभी उम्मीद नहीं की थी।
"मैं C ++ कैसे सीख सकता हूं?"
मेरे पिताजी इस वर्ष 56 वर्ष के हैं और कंप्यूटर उनके लिए एक दूर की अवधारणा है। वह कॉलिंग नंबर (नो स्पीड डायल या कॉन्टैक्ट्स) के अलावा फोन का अच्छी तरह से इस्तेमाल करना नहीं जानता है; हालाँकि उसने कंप्यूटरों को थोड़ा बेहतर सीखना शुरू कर दिया है - इस बात के लिए कि वह जानता है कि इंटरनेट कैसे खोलें (विंडोज़ में) और चारों ओर ब्राउज़ करें (और पूरी तरह से ऑनलाइन कई कामों को सफलतापूर्वक पूरा कर लिया है, जिनमें से उन्हें पदों की पेशकश भी की गई थी। )। लेकिन फिर भी, ये बहुत संकीर्ण खिड़की के अनुभव हैं, जो वास्तव में बहुत मायने रखते हैं।
जबकि वह पृष्ठभूमि नहीं हो सकता है, मेरे पिताजी को पता है कि कैसे पढ़ना है। और मेरा मतलब है एक कौशल के रूप में पढ़ना, न कि एक क्षमता। उनके पास कोई कॉलेज शिक्षा (वित्तीय समस्याएं, परिवार, आदि) के लिए बहुत कम है और हाई स्कूल खत्म करने के लिए काफी भाग्यशाली था, लेकिन फिर भी खुद को एक मास्टर इलेक्ट्रीशियन बनने के लिए सिखाया और अब लगभग 30 वर्षों से एक है। उन्होंने गिटार के साथ भी ऐसा ही किया, बहुत ही पेशेवर स्तर पर खेलना सीखा और उनके कौशल के लिए उनकी प्रशंसा की गई। हाई स्कूल में, उन्होंने एक वजन उठाने वाली किताब उठाई - और राष्ट्रीय मानकों द्वारा "एथलीट" के रूप में आधिकारिक रूप से अर्हता प्राप्त करने के लिए अपने हाई स्कूल में एकमात्र व्यक्ति था।
सभी मामलों में, उसे पढ़ने के लिए बस कुछ चाहिए था। उसे कुछ सिखाना है। वह स्पंज जैसी जानकारी को अवशोषित करता है।
मुझे अपने पिता की प्रेरणा या ऐसा करने की क्षमता पर कोई संदेह नहीं है, इसलिए मेरा सामान्य लक्ष्य बस है:
मेरे पिताजी को कंप्यूटर की दुनिया में ले जाओ, और उन्हें प्रोग्रामिंग के लिए सड़क पर ले आओ।
मेरा दृढ़ता से मानना है कि एक बार जब मैं उसे मूल सिद्धांतों के माध्यम से प्राप्त कर लेता हूं, तो उसकी ड्राइव और रीडिंग स्किल उसे इसी तरह आगे बढ़ाती रहेगी।
तो मैं आप सभी से पूछ रहा हूं: मुझे यह सब कहां से शुरू करना चाहिए? और वहाँ सबसे अच्छे संसाधन क्या हैं? क्या मुझे उसे विंडोज के बजाय लिनक्स शुरू करने के लिए मिलना चाहिए? क्या C ++ एक बुरा विचार है?
याद रखें, उसे पहले (IMO) कंप्यूटर सीखने की ज़रूरत है, और फिर प्रोग्रामिंग का पहला ग्रैस्प ("हैलो वर्ल्ड" अनुभव) प्राप्त करें।
पैसे की खातिर और सर्वोच्च प्राथमिकता पर, मैं मुफ्त ऑनलाइन संसाधनों को पसंद कर सकता हूं जो वह पढ़ सकता है, लेकिन हर तरह से प्रिंट या भुगतान-के-लिए-ऑनलाइन किसी भी अच्छे सुझाव का स्वागत है (जो मैं संभवतः बाद में खरीद करने के लिए देख सकता हूं)।
और यह भी, मैं उसे सी ++ (कोई पायथन, जावा, आदि) के साथ शुरू करने का इरादा नहीं करता, क्योंकि मैं इसे सबसे अच्छा जानता हूं और कोड के साथ रास्ते में उसकी मदद करने में सक्षम होगा। (मुझे अभी अन्य भाषाओं में न्यूनतम ज्ञान है)।
संपादित करें: मुझे पायथन का उपयोग करने के लिए बहुत सारे लगातार सुझाव मिल रहे हैं। एकमात्र कारण जो मैं सी ++ करना चाहता था, वह यह है कि मैं इसे जानता हूं और जब मेरे पिताजी को मदद की जरूरत हो, तो यह हो सकता है। प्रोग्रामिंग के लिए मेरे बहुत पहले जोखिम जावा था। मैंने जावा सीखा, और मैं इसमें अच्छा हो गया। मैं अन्य सुझावों के लिए खुला हूं, लेकिन कृपया अपने सुझावों का एक प्रभावी अनुप्रयोग प्रदान करें।
EDIT # 2: मैं समझता हूं कि मेरे दृष्टिकोण / सोच / ज्ञान का यहां अभाव हो सकता है। मैं एक प्रमुख स्तर के स्नातक सीएस प्रमुख हूँ। यदि आप मेरी पोस्ट के किसी भी बात से सहमत नहीं हैं, तो मुझे बताएं - मुझे विचार, जानकारी क्यों दें - इसीलिए मैं पहली जगह पर पूछ रहा हूं। मेरे सामान्य लक्ष्य को विशिष्ट पहुंच योग्य लक्ष्यों तक सीमित करने के लिए।