जवाबों:
स्व-शिक्षा केवल अच्छा नहीं है , लेकिन आवश्यक है यदि आप एक उपरोक्त औसत डेवलपर बनना चाहते हैं।
आपकी व्यावसायिक प्रगति के लिए जिम्मेदार एकमात्र व्यक्ति आप हैं । निश्चित रूप से, औपचारिक शिक्षा, प्रशिक्षण पाठ्यक्रम आदि मदद कर सकते हैं, लेकिन दिन के अंत में, यह आपका करियर है।
मैं सौभाग्यशाली हूं कि मुझे बहुत अच्छी शिक्षा का लाभ मिला है, और मेरे पास अच्छे नियोक्ता हैं जिन्होंने हर तरह के विभिन्न तरीकों से मेरी शिक्षा का समर्थन किया है। हालाँकि, मैंने जो कुछ भी प्रोग्रामिंग के बारे में सीखा है उसका अधिकांश हिस्सा मैंने खुद उठाया है - बहुत पढ़कर और अधिक अभ्यास करके।
आम तौर पर जितना अधिक आप जानते हैं, उतना ही अधिक आत्म सीखना अपने आप को सिखाने का एकमात्र कुशल तरीका बन जाता है।
जब आप एक किक स्टार्ट के रूप में शुरुआत कर रहे होते हैं तो पाठ्यक्रम बहुत अच्छा होता है लेकिन उसके बाद आपको कक्षा में बैठे हुए दिनों के लिए कम रिटर्न मिलता है क्योंकि कोर्स सबसे धीमी प्रतिभागी की गति से चलता है। एक बार जब आप अनुभव का एक उचित स्तर प्राप्त कर लेते हैं तो लगभग कभी भी आप ऐसा नहीं करते हैं ताकि आप हमेशा समय बर्बाद करते रहें।
दूसरी ओर आत्म अध्ययन आपको अपने आप को गति देने की अनुमति देता है। यदि आपको जल्दी से कुछ मिलता है तो आप साथ में स्किम कर सकते हैं, अगर आपको समझ में नहीं आता है तो वापस जाएं और फिर से जाएं। अगर आपको लगता है कि कोई विषय अप्रासंगिक है तो आप इसे अनदेखा कर सकते हैं।
मैंने खुद को क्या सिखाया है? स्क्रैच से सीखी गई चीजों के संदर्भ में: HTML, ASP, VB.NET, जावास्क्रिप्ट, लोटस्क्रिप्ट, पायथन का एक बिट, जावा का एक सा।
लेकिन वास्तव में लगभग हर चीज उपयोगी है जो काम पर सिखाया जाता है। आप एक पाठ्यक्रम पर मूल बातें सीख सकते हैं, लेकिन जहां आप वास्तव में सीखते हैं वह इसका उपयोग कर रहा है इसलिए मैं कहूंगा कि मैं जो जानता हूं (यदि अधिक नहीं है) का 95% स्वयं सिखाया जाता है।
मैंने .NET, C #, ASP.NET और ASP.NET MVC को अपने आप सफलतापूर्वक सीखा है।
ऐसा नहीं है कि कोई उन्हें मुझे पढ़ाने जा रहा था।
स्व-शिक्षा प्रोग्रामर सीखने का मूल है। विश्वविद्यालय, सहकर्मियों, वे सभी आपको सुझाव और संकेत देते हैं जब आपको उनकी आवश्यकता होती है लेकिन आपको अभी भी अपने दम पर बड़ा हिस्सा सीखना होगा। किताबें, ब्लॉग, लेख, प्रलेखन, आपके व्यक्तिगत समय पर प्रयोग, यही आप सीखते हैं।
स्वयं सीखने के कई पहलू हैं, बेशक पहला स्वतंत्र अध्ययन है जहां आप ज्ञान प्राप्त करते हैं और इसे व्यावहारिक उपयोग में लाना शुरू करते हैं। इसका मतलब यह हो सकता है कि कुछ किताबें खरीदना, खुले स्रोत कोड का अध्ययन करना, सुबह के समय तक प्रयोग करना या (आमतौर पर) उपरोक्त सभी।
कुछ बिंदु पर, हालांकि, आपको कैविट्स, कठिन विषयों, सर्वोत्तम प्रथाओं और ठोस इंजीनियरिंग सिद्धांतों के माध्यम से मार्गदर्शन करने के लिए एक या कई संरक्षक की आवश्यकता है। एक कुशल स्व शिक्षार्थी इन आकाओं को बाद की तुलना में बहुत जल्द खोज लेंगे, और अपने कोड को यथासंभव उच्च अनुभवी लोगों के सामने प्राप्त करेंगे।
मैंने क्लास लेने के बिना BASIC, पास्कल, C, PHP, अल्पविकसित x86 असेंबली सीखी, लेकिन इसका मतलब यह नहीं है कि जब मुझे एक की जरूरत थी तो मुझे कॉल करने के लिए एक शिक्षक नहीं था। तो, तथ्य यह है कि मुझे लगता है कि मैं मुक्त / खुले स्रोत समुदाय में पाया आकाओं से काफी मात्रा में सीखा दिया .. मैं कठिन कहना है कि मैं कुछ भी सीखा दबाया होगी अपने दम पर या अपने आप से ।
सीखने का यह तरीका एकमात्र तरीका है जो मेरे लिए काम करता है, प्रोग्रामिंग के अध्ययन से बहुत आगे तक पहुंचता है।
मुझे लगता है कि हम हर समय नौकरी के साथ सीखते हैं।
जब मैंने जावा / जेएसपी परियोजनाओं पर काम कर रहा था, तब मैंने स्ट्रट्स, स्प्रिंग और अन्य ओपन सोर्स जावा फ्रेमवर्क और यहां तक कि टॉमकैट का उपयोग करके होस्ट किया है। कंपनी इसके लिए भुगतान करने वाली नहीं थी;)
और अब ये ऐसी तकनीकें हैं जिनका मैं अपने काम में दैनिक उपयोग करता हूं।
विषय पर यादृच्छिक रम्बलिंग के एक जोड़े ...
जैसा कि अन्य सभी ने कहा है, जैसे-जैसे आपका करियर आगे बढ़ता है, आपको बहुत अधिक सेल्फ स्टडी करनी पड़ती है। एक चीज़ जो मैंने वास्तव में यहाँ नहीं देखी है, हालाँकि, वास्तविकता यह है कि आपको यह ढूंढना बहुत मुश्किल होगा कि संबंधित क्षेत्र में कुछ औपचारिक शिक्षा के बिना पहली नौकरी, विशेष रूप से मंदी में। बहुत सारे रिज्यूमे "फ़िल्टरिंग डेस्क" के ऊपर से गुजरते हैं, और अगर वहाँ पर संबंधित शिक्षा के साथ वहाँ पर कुछ भी नहीं है, तो इसे पारित होने की संभावना है। यदि आपके पास संबंधित अनुभव बहुत अधिक है, तो आप इसे दरकिनार कर सकते हैं, लेकिन यह इस बात पर निर्भर करता है कि कोई व्यक्ति आपके रिज्यूमे को कितनी बारीकी से पढ़ता है (जो कि पहले दौर में, दुर्भाग्य से बहुत संभावना नहीं है)। यह स्पष्ट नहीं है कि यह आपके लिए लागू होता है, लेकिन यह किसी पर लागू होगा, मुझे यकीन है।
कुछ (कुछ) असंबंधित नोट पर, स्व-अध्ययन महान है, लेकिन ऐसा करने का समय और भी अधिक है (और अधिक दुर्लभ, मैं बहस करूँगा)। हम सभी इसे किसी न किसी तरह से फिट करते हैं, लेकिन अगर आपको कुछ सीखने का काम करने के लिए हर दिन कुछ समय लेने का मौका दिया जाता है, तो इसे पकड़ो और अपनी पूरी ताकत से पकड़ लो।
डेल्फी। मैंने हाई-स्कूल में पास्कल सीखा है और एक बार आईडीई को देखें, जैसे, कुछ ट्यूटोरियल डाउनलोड करें और सीखना शुरू करें। और आज, सीखने की प्रक्रिया जारी है। जब आप सीखते हैं कि अच्छे हिस्से और बुरे हिस्से हैं: 1) आत्म-सीखना सीखने की सबसे अच्छी विधि है, क्योंकि आप वास्तव में समझते हैं कि वहाँ क्या हो रहा है (अच्छा हिस्सा) 2) आप किसी चीज़ को गलत समझकर बड़ी गलतियाँ कर सकते हैं / एक बुरा पा सकते हैं आदत और फिर अगर आप इस तरीके से जारी रखते हैं, तो इसे ठीक करना बहुत मुश्किल है। (बुरा हिस्सा)
सादर,
राडू
आपको उस बिंदु को प्राप्त करने की आवश्यकता है जिसे आपको हाथ से पकड़ने की आवश्यकता नहीं है। आपको उस बिंदु पर होना चाहिए जहां आप एक पुस्तक उठा सकते हैं, एक मदद फ़ाइल देख सकते हैं, एक ट्यूटोरियल ढूंढ सकते हैं, आदि और उन प्रिंसिपलों को सीख सकते हैं जिन्हें आपको अपनी नौकरी की आवश्यकता है।
BTW, आप किसी भी और हर काम के लिए यह जरूरत है, न सिर्फ प्रोग्रामिंग। आप स्वयं कैसे सीखते हैं इसका माध्यम अलग हो सकता है लेकिन आपको यह करना ही चाहिए।
मैंने कक्षा में अपना अधिकांश C / C ++ ज्ञान सीखा, लेकिन मेरी अन्य प्रोग्रामिंग भाषाओं, मेरे सभी सिद्धांत, मेरे सभी परियोजना प्रबंधन और अन्य ज्ञान के टन जो मुझे हैकर बनाता है मैं स्वयं-सिखाया गया था।
जैसा कि दूसरों ने कहा है, हमारे उद्योग में स्व-शिक्षा केवल अच्छा नहीं है, यह आवश्यक है । यह एक प्लम्बर या बेकिंग ब्रेड होने जैसा नहीं है: प्रौद्योगिकी हमेशा विकसित हो रही है, और हमें इसके साथ चलना होगा या अप्रासंगिक हो जाएगा।
यह पूछने के लायक है: इसके निहितार्थ क्या हैं? सबसे अच्छा हैकर्स सिर्फ कोड बंदरों को बाहर रखने वाले कोड नहीं हैं - हम बड़े-चित्र सामान को सीखने के लिए समय लेते हैं। एल्गोरिदम, जटिलता, भाषा डिजाइन, आदि हमारे साथ रहेंगे और हमारी अच्छी तरह से सेवा करेंगे चाहे हम खुद को किस भाषा का उपयोग कर पाते हों, या हम इसका उपयोग करते हुए खुद को क्या पाते हैं। मैंने टेक इंडस्ट्री के एक हिस्से से इस तरह के हैकर जंप को पूरी तरह से अलग, सहजता से देखा है।
बहुत से लोग सोचते हैं कि "बड़ी तस्वीर" अवधारणाएं सभी लेकिन शिक्षाविदों के सिर के ऊपर हैं, और मैं दृढ़ता से असहमत हूं। जब आप उन्हें सीखने के लिए समय लेते हैं, तो आप पाएंगे कि कुछ पहले से ही अच्छे कोडर्स द्वारा सहज ज्ञान युक्त अभ्यास कर रहे हैं, और बाकी एक बार समझ में आने के बाद आप उनसे परिचित हो जाते हैं।
स्व-शिक्षा आवश्यक है जब तक कि आपके पास औपचारिक प्रशिक्षण समय और फिर से समर्थन करने के लिए एक उदार उपकारक न हो। मुझे क्लास रूम के बाहर बहुत सी चीजें सीखनी पड़ती हैं, जिनमें से कुछ बड़े लोगों के नाम हैं:
ASP और ASP.Net वे चीजें होंगी जो मुझे नौकरी पर सीखनी थीं क्योंकि मैंने काम किया था कि मैं नई साइट को फिर से लिखने का उपयोग करना चाहता हूं और इस तरह मुझे कक्षा में नहीं बल्कि अपने स्थान पर इसे चुनना पड़ा।
IIS और MS-SQL सर्वर चीजों की एक और जोड़ी होगी, जिनके बारे में मुझे आवश्यकतानुसार पता था और इस तरह मैं कहूंगा कि मैं यहां पढ़ाया गया था। जबकि मेरे पास सह-कार्यकर्ता थे जो सवालों के साथ मदद कर सकते थे अगर मैं वास्तव में फंस गया तो बस मेरे सिर को इन चारों ओर से प्राप्त करना मेरे करियर के शुरुआती दिनों में कुछ और था।
AJAX कुछ साल पहले एक ऐसी चीज होगी जिसे अब मैंने फ्रेमवर्क पर शोध करने और Microsoft ASP.Net AJAX के लॉन्च से ठीक पहले काम करने की कोशिश में सीखा।
उसी समय, केवल आत्म-शिक्षा करना खतरनाक हो सकता है क्योंकि हर कोई इस तरह से सब कुछ नहीं करना चाहता है। कुछ लोगों के लिए वे अधिक संरचना चाहते हैं और कुछ सीखने के माध्यम से अपने तरीके से ड्राइविंग करने में इतने स्वतंत्र नहीं हो सकते हैं।
@Kramii सही है; प्रोग्रामर को अपने करियर के दौरान आत्म-शिक्षित होना होगा
प्रश्न: मैंने खुद से सफलतापूर्वक क्या सीखा है?
शिक्षण एक मिथक है; शिक्षक केवल जानकारी उपलब्ध करा सकता है, छात्र को सीखने और न सीखने और क्या सीखना है, यह सुनना और तय करना होगा। शिक्षक ही आपको रास्ता दिखा सकता है। दूसरे शब्दों में, सभी शिक्षा मौलिक रूप से स्व-शिक्षा है
अब अगर आपको सिर्फ 'एक कक्षा के बाहर क्या सीखा जो उपयोगी था' का मतलब है, तो मेरा जवाब होगा
क्योंकि जब मैं स्कूल में था तो विश्वविद्यालय जो पढ़ाते थे उसमें बाजार के पीछे सामान्य रूप से 12-15 साल थे। उदाहरण के लिए, दिन के दौरान विश्वविद्यालय पीएल / 1 का उपयोग करके मुझे प्रक्रियात्मक प्रोग्रामिंग सिखा रहा था, और रात में मैं विधानसभा में एक वस्तु-उन्मुख प्रोग्रामिंग भाषा लिख रहा था।
तब से, किताबें और Google मेरे शिक्षक हैं।
जाहिरा तौर पर सभी जवाब सहमत हैं कि आत्म-शिक्षा सब कुछ है। मुझे नहीं लगता कि यह पूरी तरह से सही है। एक अच्छा शिक्षक आपको बहुत कुछ सिखा सकता है और विशेष रूप से आपको तेज़ सिखा सकता है। जाहिर है कुछ बिंदु पर आपको मामलों को अपने हाथों में लेना होगा और शोध, पढ़ना, प्रयास करना शुरू करना होगा। यहां तक कि एक पुस्तक किसी (शिक्षक) द्वारा लिखी गई है और आपको कुछ सिखाने की कोशिश करती है। वही व्यक्ति कमरे में खड़ा हो सकता है और आपको खोज में समय बर्बाद करने के बजाय आपके सभी सवालों के जवाब दे सकता है। दूसरी ओर दीवार के खिलाफ अपने सिर को खोजना और पीटना सबक बहुत मूल्यवान सीखा जाएगा और भूल जाने की संभावना नहीं है।
विशेष रूप से एक नए विषय को शुरू करने के लिए मुझे लगता है कि एक अच्छा शिक्षक बहुत बहुत मददगार होता है। और जो लोग आत्म-शिक्षा के लिए उत्सुक हैं, उन्हें विकिपीडिया के बिना, स्टैकओवरफ्लो के बिना, बिना किताबों के और बिना ब्लॉग्स के आत्म-शिक्षित होना चाहिए;;