स्नातक शिक्षा
Originalमार्च 2005
(इस निबंध के कुछ भाग उन छात्रों के उत्तर के रूप में शुरू हुए जिन्होंने मुझसे सवाल पूछे थे।)
हाल ही में मुझे कंप्यूटर विज्ञान के कई स्नातक छात्रों के ईमेल मिले हैं जो कॉलेज में क्या करना है, पूछ रहे हैं। मैं सलाह का सबसे अच्छा स्रोत नहीं हो सकता, क्योंकि मैं कॉलेज में दर्शनशास्त्र का छात्र था। लेकिन मैंने इतनी सारी CS कक्षाएँ लीं कि अधिकांश CS प्रमुखों ने सोचा कि मैं एक हूँ। मैं निश्चित रूप से एक हैकर था, कम से कम।
हैकिंग
आपको कॉलेज में क्या करना चाहिए ताकि आप एक अच्छे हैकर बन सकें? आप दो मुख्य चीजें कर सकते हैं: प्रोग्रामिंग में बहुत अच्छे बनें, और विशिष्ट, दिलचस्प समस्याओं के बारे में बहुत कुछ सीखें। ये एक समान साबित होते हैं, क्योंकि प्रत्येक आपको दूसरे को करने के लिए प्रेरित करता है।
प्रोग्रामिंग में अच्छे होने का तरीका है (a) बहुत काम करना (b) कठिन समस्याओं पर। और कठिन समस्याओं पर काम करने के लिए खुद को प्रेरित करने का तरीका है किसी बहुत आकर्षक प्रोजेक्ट पर काम करना।
संभावना है कि यह प्रोजेक्ट एक कक्षा का असाइनमेंट नहीं होगा। मेरे दोस्त रॉबर्ट ने एक अंडरग्रेड के रूप में नेटवर्क सॉफ़्टवेयर लिखकर बहुत कुछ सीखा। उनके प्रोजेक्ट में हार्वर्ड को आर्पानेट से जोड़ना था; यह मूल नोड्स में से एक था, लेकिन 1984 तक कनेक्शन खत्म हो गया था। [1] यह काम न केवल कक्षा के लिए नहीं था, बल्कि क्योंकि उन्होंने अपना सारा समय इस पर खर्च किया और अपनी पढ़ाई की अनदेखी की, उन्हें एक साल के लिए स्कूल से निकाल दिया गया। [2] अंत में सब कुछ ठीक हो गया, और अब वह MIT में प्रोफेसर हैं। लेकिन आप शायद खुश रहेंगे अगर आप उस चरम पर नहीं जाते; उस समय ने उन्हें बहुत चिंता दी।
प्रोग्रामिंग में अच्छे होने का एक और तरीका है अन्य लोगों को ढूंढना जो इसमें अच्छे हैं, और जो वे जानते हैं, सीखना। प्रोग्रामर आमतौर पर अपने काम के प्रकार और उपयोग किए जाने वाले उपकरणों के अनुसार जनजातियों में खुद को वर्गीकृत करते हैं, और कुछ जनजातियाँ अधिक बुद्धिमान होती हैं। अपने चारों ओर देखें और देखें कि स्मार्ट लोग किस पर काम कर रहे हैं; आमतौर पर इसका एक कारण होता है।
आपके चारों ओर के कुछ सबसे स्मार्ट लोग प्रोफेसर हैं। इसलिए दिलचस्प काम खोजने का एक तरीका शोध सहायक के रूप में स्वेच्छा से काम करना है। प्रोफेसर विशेष रूप से उन लोगों में रुचि रखते हैं जो उनके लिए थकाऊ सिस्टम-प्रशासन प्रकार की समस्याओं को हल कर सकते हैं, इसलिए यह दरवाजे में पैर रखने का एक तरीका है। उन्हें जो डर है वह हैं फ्लेक्स और रिज्यूमे पैडर्स। एक सहायक का परिणाम अक्सर काम में शुद्ध वृद्धि होता है। इसलिए आपको यह स्पष्ट करना होगा कि आप शुद्ध कमी का मतलब रखते हैं।
अगर वे नहीं कहते हैं तो निराश न हों। अस्वीकृति लगभग हमेशा उस व्यक्ति के लिए कम व्यक्तिगत होती है जो अस्वीकृत होता है। बस अगले पर आगे बढ़ें। (यह डेटिंग पर भी लागू होता है।)
सावधान रहें, क्योंकि हालांकि अधिकांश प्रोफेसर स्मार्ट होते हैं, लेकिन उनमें से सभी दिलचस्प चीजों पर काम नहीं करते। प्रोफेसरों को अपने करियर को आगे बढ़ाने के लिए नए परिणाम प्रकाशित करने होते हैं, लेकिन दिलचस्प अनुसंधान क्षेत्रों में अधिक प्रतिस्पर्धा होती है। इसलिए जो कम महत्वाकांक्षी प्रोफेसर करते हैं वह एक श्रृंखला के पेपर तैयार करना है जिनके निष्कर्ष नए होते हैं क्योंकि कोई और उनकी परवाह नहीं करता। आप इनसे बचने में बेहतर हैं।
मैंने कभी शोध सहायक के रूप में काम नहीं किया, इसलिए मुझे उस मार्ग की सिफारिश करते समय थोड़ा बेईमान लगता है। मैंने अपने खुद के काम लिखकर प्रोग्रामिंग करना सीखा, विशेष रूप से विनोग्राद के SHRDLU को रिवर्स-इंजीनियर करने की कोशिश करके। मैं उस प्रोग्राम के प्रति उतना ही जुनूनी था जितना एक माँ अपने नए बच्चे के प्रति होती है।
आपके अपने प्रोजेक्ट्स में आपको नवीनता (जैसे प्रोफेसर करते हैं) या लाभप्रदता (जैसे व्यवसाय करते हैं) की चिंता करने की आवश्यकता नहीं है। केवल यह मायने रखता है कि प्रोजेक्ट तकनीकी रूप से कितना कठिन है, और इसका अनुप्रयोग की प्रकृति से कोई संबंध नहीं है। "गंभीर" अनुप्रयोग जैसे डेटाबेस अक्सर तकनीकी रूप से तुच्छ और उबाऊ होते हैं (यदि आप कभी अनिद्रा से पीड़ित होते हैं, तो डेटाबेस के बारे में तकनीकी साहित्य पढ़ने की कोशिश करें) जबकि "फ्रिवोलस" अनुप्रयोग जैसे खेल अक्सर बहुत परिष्कृत होते हैं। मुझे यकीन है कि वहाँ गेम कंपनियाँ हैं जो ऐसे उत्पादों पर काम कर रही हैं जिनमें विश्वविद्यालय के CS विभागों के नीचे के नौ-दशवें अनुसंधान की तुलना में अधिक बौद्धिक सामग्री है।
अगर मैं अब कॉलेज में होता, तो शायद मैं ग्राफिक्स पर काम करता: उदाहरण के लिए, एक नेटवर्क गेम, या 3D एनीमेशन के लिए एक उपकरण। जब मैं एक अंडरग्रेड था, तब ग्राफिक्स को दिलचस्प बनाने के लिए पर्याप्त साइकिलें नहीं थीं, लेकिन अब काम करने के लिए इससे अधिक मजेदार कुछ कल्पना करना कठिन है।
गणित
जब मैं कॉलेज में था, तो कई प्रोफेसरों का मानना था (या कम से कम वे चाहते थे) कि कंप्यूटर विज्ञान गणित की एक शाखा है। यह विचार हार्वर्ड में सबसे मजबूत था, जहाँ 1980 के दशक तक कोई CS प्रमुख नहीं था; तब तक एक को अनुप्रयुक्त गणित में प्रमुख होना पड़ता था। लेकिन यह कॉर्नेल में भी लगभग उतना ही बुरा था। जब मैंने डरावने प्रोफेसर कॉनवे को बताया कि मैं AI में रुचि रखता हूँ (तब एक गर्म विषय), तो उन्होंने मुझसे कहा कि मुझे गणित में प्रमुख होना चाहिए। मुझे अभी भी यकीन नहीं है कि क्या उन्होंने सोचा कि AI को गणित की आवश्यकता है, या क्या उन्होंने सोचा कि AI बकवास है और कि कुछ कठोर में प्रमुख होना मुझे ऐसी बेवकूफी की महत्वाकांक्षाओं से ठीक कर देगा।
वास्तव में, एक हैकर के रूप में आपको जो गणित की आवश्यकता होती है, वह अधिकांश विश्वविद्यालय विभागों की तुलना में बहुत कम होती है। मुझे नहीं लगता कि आपको हाई स्कूल के गणित के अलावा और अधिक की आवश्यकता है, साथ ही कुछ अवधारणाएँ गणना के सिद्धांत से। (यदि आप उन्हें लिखने से बचना चाहते हैं तो आपको यह जानना होगा कि n^2 एल्गोरिदम क्या है।) बशर्ते कि आप गणित अनुप्रयोग लिखने की योजना नहीं बना रहे हैं, निश्चित रूप से। रोबोटिक्स, उदाहरण के लिए, पूरी तरह से गणित है।
लेकिन जबकि आपको अधिकांश प्रकार की हैकिंग के लिए शाब्दिक रूप से गणित की आवश्यकता नहीं है, सूत्रों को विभाजित करने के लिए 1001 तरकीबें जानने के संदर्भ में, गणित अपने आप में अध्ययन करने के लिए बहुत मूल्यवान है। यह लगभग किसी भी प्रकार के काम के लिए उपमा का एक मूल्यवान स्रोत है। [3] मैं इस कारण से कॉलेज में अधिक गणित पढ़ने की कामना करता हूँ।
कई लोगों की तरह, मुझे बचपन में गणित के साथ दुर्व्यवहार किया गया। मैंने गणित को सूत्रों के एक संग्रह के रूप में सोचना सीखा जो न तो सुंदर थे और न ही मेरे जीवन से कोई संबंध था (हालांकि उन्हें "शब्द समस्याओं" में अनुवाद करने के प्रयास किए गए), लेकिन उन्हें याद करना आवश्यक था ताकि मैं परीक्षाओं में अच्छा कर सकूँ।
कॉलेज में आप जो सबसे मूल्यवान चीज कर सकते हैं, वह यह सीखना होगा कि गणित वास्तव में किस बारे में है। यह आसान नहीं हो सकता, क्योंकि कई अच्छे गणितज्ञ बुरे शिक्षक होते हैं। और जबकि गणित पर कई लोकप्रिय पुस्तकें हैं, उनमें से कुछ ही अच्छी लगती हैं। जो सबसे अच्छा मैं सोच सकता हूँ वह W. W. Sawyer की हैं। और निश्चित रूप से यूक्लिड। [4]
सब कुछ
थॉमस हक्सले ने कहा "हर चीज के बारे में कुछ सीखने की कोशिश करें और किसी चीज के बारे में सब कुछ।" अधिकांश विश्वविद्यालय इस आदर्श की ओर प्रयास करते हैं।
लेकिन सब कुछ क्या है? मेरे लिए इसका मतलब है, सभी चीजें जो लोग ईमानदारी से कठिन समस्याओं पर काम करते समय सीखते हैं। इस तरह का काम आमतौर पर संबंधित होता है, क्योंकि एक क्षेत्र से विचार और तकनीक अक्सर सफलतापूर्वक दूसरों में स्थानांतरित की जा सकती हैं। यहां तक कि अन्य जो काफी दूर लगते हैं। उदाहरण के लिए, मैं निबंध उसी तरह लिखता हूँ जैसे मैं सॉफ़्टवेयर लिखता हूँ: मैं बैठता हूँ और जितनी जल्दी टाइप कर सकता हूँ उतनी जल्दी एक बेकार संस्करण 1 निकालता हूँ, फिर इसे फिर से लिखने में कई सप्ताह बिताता हूँ।
कठिन समस्याओं पर काम करना अपने आप में पर्याप्त नहीं है। मध्यकालीन अल्केमिस्ट एक कठिन समस्या पर काम कर रहे थे, लेकिन उनका दृष्टिकोण इतना बोगस था कि इसे अध्ययन करने से बहुत कुछ सीखने के लिए कुछ नहीं था, सिवाय इसके कि लोगों की खुद को धोखा देने की क्षमता के बारे में। दुर्भाग्यवश, जिस प्रकार की AI मैं कॉलेज में सीखने की कोशिश कर रहा था, उसमें वही दोष था: एक बहुत कठिन समस्या, निराशाजनक रूप से अपर्याप्त तकनीकों के साथ हल करने का प्रयास किया गया। साहसी? धोखाधड़ी के करीब।
सामाजिक विज्ञान भी काफी बोगस हैं, क्योंकि वे बौद्धिक फैशन से बहुत प्रभावित होते हैं। यदि एक भौतिक विज्ञानी 100 साल पहले के एक सहयोगी से मिलता है, तो वह उसे कुछ नई चीजें सिखा सकता है; यदि एक मनोवैज्ञानिक 100 साल पहले के एक सहयोगी से मिलता है, तो वे बस एक वैचारिक तर्क में पड़ जाएंगे। हाँ, निश्चित रूप से, आप मनोविज्ञान की कक्षा लेकर कुछ सीखेंगे। मुद्दा यह है कि, आप किसी अन्य विभाग में कक्षा लेकर अधिक सीखेंगे।
मेरे विचार में, मूल्यवान विभाग गणित, कठिन विज्ञान, इंजीनियरिंग, इतिहास (विशेष रूप से आर्थिक और सामाजिक इतिहास, और विज्ञान का इतिहास), वास्तुकला, और शास्त्रीय अध्ययन हैं। कला के इतिहास में एक सर्वेक्षण पाठ्यक्रम मूल्यवान हो सकता है। आधुनिक साहित्य महत्वपूर्ण है, लेकिन इसके बारे में जानने का तरीका बस पढ़ना है। मुझे संगीत के बारे में कहने के लिए पर्याप्त जानकारी नहीं है।
आप सामाजिक विज्ञान, दर्शनशास्त्र, और हाल ही में राजनीतिक दबावों के जवाब में बनाए गए विभिन्न विभागों को छोड़ सकते हैं। इनमें से कई क्षेत्र निश्चित रूप से महत्वपूर्ण समस्याओं के बारे में बात करते हैं। लेकिन जिस तरह से वे उनके बारे में बात करते हैं, वह बेकार है। उदाहरण के लिए, दर्शनशास्त्र, अन्य चीजों के बीच, हमारे एक-दूसरे के प्रति कर्तव्यों के बारे में बात करता है; लेकिन आप इस बारे में एक समझदार दादी या ई. बी. व्हाइट से अधिक सीख सकते हैं, बजाय एक अकादमिक दार्शनिक के।
मैं यहाँ अनुभव से बोल रहा हूँ। मुझे शायद तब offended होना चाहिए था जब लोगों ने क्लिंटन पर हंसते हुए कहा "यह इस पर निर्भर करता है कि 'है' का अर्थ क्या है।" मैंने कॉलेज में "है" के अर्थ पर लगभग पांच कक्षाएँ लीं।
यह पता लगाने का एक और तरीका कि कौन से क्षेत्र अध्ययन के लायक हैं, ड्रॉपआउट ग्राफ बनाना है। उदाहरण के लिए, मैं कई लोगों को जानता हूँ जिन्होंने गणित से कंप्यूटर विज्ञान में स्विच किया क्योंकि उन्हें गणित बहुत कठिन लगा, और कोई भी जिसने इसके विपरीत किया। लोग कठिन चीजें बिना किसी कारण के नहीं करते; कोई भी एक कठिन समस्या पर काम नहीं करेगा जब तक कि यह अनुपात में (या कम से कम log(n)) अधिक पुरस्कृत न हो। इसलिए शायद गणित कंप्यूटर विज्ञान की तुलना में अध्ययन के लिए अधिक योग्य है। इसी तरह की तुलना से आप विश्वविद्यालय के सभी विभागों का एक ग्राफ बना सकते हैं। नीचे आपको उन विषयों का पता चलेगा जिनमें सबसे कम बौद्धिक सामग्री होती है।
यदि आप इस विधि का उपयोग करते हैं, तो आपको लगभग वही उत्तर मिलेगा जो मैंने अभी दिया है।
भाषा पाठ्यक्रम एक विसंगति हैं। मुझे लगता है कि उन्हें अतिरिक्त पाठ्यक्रम गतिविधियों के रूप में बेहतर माना जाना चाहिए, जैसे कि मिट्टी के बर्तन बनाने की कक्षाएँ। वे उस देश में कुछ समय बिताने के साथ मिलाकर बहुत अधिक उपयोगी होंगे जहाँ भाषा बोली जाती है। एक इच्छा पर मैंने एक फ्रेशमैन के रूप में अरबी का अध्ययन किया। यह बहुत काम था, और एकमात्र स्थायी लाभ एक अजीब क्षमता थी जो सेमिटिक जड़ों की पहचान करने की थी और यह कुछ अंतर्दृष्टि थी कि लोग शब्दों को कैसे पहचानते हैं।
स्टूडियो कला और रचनात्मक लेखन पाठ्यक्रम वाइल्डकार्ड हैं। आमतौर पर आपको बहुत कुछ नहीं सिखाया जाता है: आप बस उस पर काम करते हैं (या काम नहीं करते हैं) जो आप चाहते हैं, और फिर शिक्षक की अस्पष्ट निगरानी के तहत एक-दूसरे की रचनाओं की "क्रिट्स" देने के लिए बैठते हैं। लेकिन लेखन और कला दोनों बहुत कठिन समस्याएँ हैं जिन पर (कुछ) लोग ईमानदारी से काम करते हैं, इसलिए उन्हें करना सार्थक है, विशेष रूप से यदि आप एक अच्छे शिक्षक को खोज सकते हैं।
नौकरियाँ
बेशक कॉलेज के छात्रों को केवल सीखने के बारे में नहीं सोचना चाहिए। विचार करने के लिए दो व्यावहारिक समस्याएँ भी हैं: नौकरियाँ, और स्नातक स्कूल।
सिद्धांत में, एक उदार शिक्षा को नौकरी प्रशिक्षण प्रदान नहीं करना चाहिए। लेकिन हर कोई जानता है कि यह थोड़ा झूठ है। हर कॉलेज में हैकर व्यावहारिक कौशल सीखते हैं, और यह संयोग से नहीं होता।
आपको नौकरी पाने के लिए क्या सीखना चाहिए, यह उस प्रकार पर निर्भर करता है जिसे आप चाहते हैं। यदि आप एक बड़ी कंपनी में काम करना चाहते हैं, तो Windows पर ब्लब हैक करना सीखें। यदि आप एक अच्छे छोटे कंपनी या शोध प्रयोगशाला में काम करना चाहते हैं, तो Linux पर रूबी सीखना बेहतर होगा। और यदि आप अपनी खुद की कंपनी शुरू करना चाहते हैं, जो मुझे लगता है कि अधिक से अधिक सामान्य होगा, तो सबसे शक्तिशाली उपकरणों में महारत हासिल करें जो आप पा सकते हैं, क्योंकि आप अपने प्रतिस्पर्धियों के खिलाफ दौड़ में होंगे, और वे आपके घोड़े होंगे।
कॉलेज में आपको जो कौशल सीखना चाहिए और जो आप नौकरी में उपयोग करेंगे, उनके बीच कोई सीधा संबंध नहीं है। आपको कॉलेज में थोड़ा ऊँचा लक्ष्य रखना चाहिए।
वर्कआउट में एक फुटबॉल खिलाड़ी 300 पाउंड बेंच प्रेस कर सकता है, भले ही उसे खेल के दौरान इतनी शक्ति लगाने की आवश्यकता न हो। इसी तरह, यदि आपके प्रोफेसर आपको ऐसी चीजें सीखने के लिए मजबूर करते हैं जो नौकरी में आपकी आवश्यकता से अधिक उन्नत हैं, तो यह केवल इसलिए नहीं हो सकता कि वे अकादमिक हैं, जो वास्तविक दुनिया से अलग हैं। वे आपको अपने मस्तिष्क के साथ वजन उठाने की कोशिश कर रहे हो सकते हैं।
आप कक्षाओं में जो प्रोग्राम लिखते हैं, वे तीन महत्वपूर्ण तरीकों से वास्तविक दुनिया में लिखे जाने वाले प्रोग्राम से भिन्न होते हैं: वे छोटे होते हैं; आपको शुरुआत से शुरू करने की अनुमति होती है; और समस्या आमतौर पर कृत्रिम और पूर्वनिर्धारित होती है। वास्तविक दुनिया में, प्रोग्राम बड़े होते हैं, मौजूदा कोड शामिल करने की प्रवृत्ति होती है, और अक्सर आपको यह पता लगाने की आवश्यकता होती है कि समस्या क्या है इससे पहले कि आप इसे हल कर सकें।
आपको इन कौशलों को सीखने के लिए कॉलेज छोड़ने (या यहां तक कि प्रवेश करने) की प्रतीक्षा करने की आवश्यकता नहीं है। यदि आप मौजूदा कोड के साथ काम करना सीखना चाहते हैं, उदाहरण के लिए, आप ओपन-सोर्स प्रोजेक्ट्स में योगदान कर सकते हैं। जिस प्रकार के नियोक्ता के लिए आप काम करना चाहते हैं, वह इस पर उतना ही प्रभावित होगा जितना कक्षा के असाइनमेंट पर अच्छे ग्रेड से।
मौजूदा ओपन-सोर्स प्रोजेक्ट्स में आपको तीसरे कौशल, यह तय करने का बहुत अभ्यास नहीं मिलता कि कौन सी समस्याएँ हल करनी हैं। लेकिन आपको अपने नए प्रोजेक्ट शुरू करने से रोकने के लिए कुछ नहीं है। और अच्छे नियोक्ता इससे भी अधिक प्रभावित होंगे।
आपको किस प्रकार की समस्या हल करने की कोशिश करनी चाहिए? इसका एक उत्तर यह है कि आप उपयोगकर्ता के रूप में क्या आवश्यकता है, पूछना है। उदाहरण के लिए, मैंने स्पैम फ़िल्टरिंग के लिए एक अच्छा एल्गोरिदम खोजा क्योंकि मैं स्पैम प्राप्त करना बंद करना चाहता था। अब मैं जो चाहता हूँ वह एक मेल रीडर है जो किसी तरह मेरे इनबॉक्स को भरने से रोकता है। मैं अपने इनबॉक्स का उपयोग एक टूडू लिस्ट के रूप में करता हूँ। लेकिन यह बोतलें खोलने के लिए स्क्रूड्राइवर का उपयोग करने के समान है; वास्तव में जो चाहिए वह एक बोतल खोलने वाला है।
स्नातक स्कूल
स्नातक स्कूल के बारे में क्या? क्या आपको जाना चाहिए? और आप एक अच्छे में कैसे प्रवेश करते हैं?
सिद्धांत में, स्नातक स्कूल अनुसंधान में पेशेवर प्रशिक्षण है, और आपको नहीं जाना चाहिए जब तक कि आप एक करियर के रूप में अनुसंधान करना नहीं चाहते। और फिर भी, कंप्यूटर विज्ञान में पीएचडी प्राप्त करने वाले आधे लोग अनुसंधान में नहीं जाते। मैंने प्रोफेसर बनने के लिए स्नातक स्कूल नहीं गया। मैं गया क्योंकि मैं अधिक सीखना चाहता था।
तो यदि आप मुख्य रूप से हैकिंग में रुचि रखते हैं और आप स्नातक स्कूल जाते हैं, तो आप बहुत से अन्य लोगों को पाएंगे जो इसी तरह से अपने तत्व से बाहर हैं। और यदि आपके चारों ओर के आधे लोग उसी तरह से अपने तत्व से बाहर हैं, तो क्या आप वास्तव में अपने तत्व से बाहर हैं?
"कंप्यूटर विज्ञान" में एक मौलिक समस्या है, और यह इस तरह की स्थितियों में उभरती है। कोई नहीं जानता कि "अनुसंधान" क्या होना चाहिए। बहुत सा अनुसंधान हैकिंग है जिसे एक अकादमिक पेपर के रूप में एक और क्वांटम प्रकाशन देने के लिए ठूसना पड़ा।
इसलिए यह पूछना थोड़ा भ्रामक है कि क्या आप स्नातक स्कूल में घर पर होंगे, क्योंकि बहुत कम लोग वास्तव में कंप्यूटर विज्ञान में घर पर होते हैं। पूरा क्षेत्र अपनी त्वचा में असहज है। इसलिए तथ्य यह है कि आप मुख्य रूप से हैकिंग में रुचि रखते हैं, आपको स्नातक स्कूल जाने से नहीं रोकना चाहिए। बस चेतावनी दी जाती है कि आपको बहुत सी चीजें करनी होंगी जो आपको पसंद नहीं हैं।
नंबर एक आपका शोध प्रबंध होगा। लगभग हर कोई अपने शोध प्रबंध से नफरत करता है जब तक कि वे इसके साथ खत्म नहीं हो जाते। यह प्रक्रिया स्वाभाविक रूप से एक अप्रिय परिणाम उत्पन्न करने की प्रवृत्ति रखती है, जैसे कि साबुत गेहूं के आटे से बना एक केक जो बारह घंटे तक बेक किया गया हो। बहुत कम शोध प्रबंधों को खुशी से पढ़ा जाता है, विशेष रूप से उनके लेखकों द्वारा।
लेकिन आपसे पहले हजारों लोगों ने शोध प्रबंध लिखने के दौरान पीड़ा सहन की है। और इसके अलावा, स्नातक स्कूल स्वर्ग के करीब है। कई लोग इसे अपने जीवन का सबसे खुशहाल समय मानते हैं। और लगभग सभी बाकी, जिसमें मैं भी शामिल हूँ, इसे एक अवधि के रूप में याद करते हैं जो होती, यदि उन्हें शोध प्रबंध नहीं लिखना होता। [5]
स्नातक स्कूल के साथ खतरा यह है कि आप पहले से डरावने भाग को नहीं देखते हैं। पीएचडी कार्यक्रम कॉलेज का भाग 2 के रूप में शुरू होते हैं, जिसमें कई वर्षों की कक्षाएँ होती हैं। इसलिए जब आप शोध प्रबंध लिखने के डरावने भाग का सामना करते हैं, तो आप पहले से ही कई वर्षों में होते हैं। यदि आप अब छोड़ते हैं, तो आप स्नातक स्कूल के ड्रॉपआउट होंगे, और आपको शायद यह विचार पसंद नहीं आएगा। जब रॉबर्ट को 1988 के इंटरनेट वर्म को लिखने के लिए स्नातक स्कूल से निकाल दिया गया, तो मैं उसे इस बात के लिए बहुत ईर्ष्या करता था कि उसने बिना असफलता के कलंक के बाहर निकलने का एक तरीका खोज लिया।
कुल मिलाकर, स्नातक स्कूल शायद अधिकांश विकल्पों से बेहतर है। आप बहुत से स्मार्ट लोगों से मिलते हैं, और आपकी उदास procrastination कम से कम एक शक्तिशाली सामान्य बंधन होगी। और निश्चित रूप से आपके पास अंत में एक पीएचडी है। मैं इसे भूल गया। मुझे लगता है कि यह कुछ मायने रखता है।
पीएचडी का सबसे बड़ा लाभ (बेशक, अकादमिकता का यूनियन कार्ड होने के अलावा) यह हो सकता है कि यह आपको कुछ बुनियादी आत्मविश्वास देता है। उदाहरण के लिए, मेरे घर में हनीवेल थर्मोस्टेट का सबसे भयानक UI है। मेरी माँ, जिसके पास वही मॉडल है, ने अपने थर्मोस्टेट को संचालित करने के लिए उपयोगकर्ता के मैनुअल को पढ़ने में एक दिन बिताया। उसने मान लिया कि समस्या उसके साथ है। लेकिन मैं सोच सकता हूँ "यदि कंप्यूटर विज्ञान में पीएचडी रखने वाला कोई व्यक्ति इस थर्मोस्टेट को नहीं समझ सकता, तो यह बदतर होना चाहिए।"
यदि आप इस अस्पष्ट सिफारिश के बाद भी स्नातक स्कूल जाना चाहते हैं, तो मैं आपको इसमें प्रवेश पाने के लिए ठोस सलाह दे सकता हूँ। मेरे कई दोस्त अब CS प्रोफेसर हैं, इसलिए मुझे प्रवेश के बारे में अंदर की कहानी है। यह कॉलेज से काफी अलग है। अधिकांश कॉलेजों में, प्रवेश अधिकारी तय करते हैं कि कौन प्रवेश लेता है। पीएचडी कार्यक्रमों के लिए, प्रोफेसर करते हैं। और वे इसे अच्छी तरह से करने की कोशिश करते हैं, क्योंकि जिन लोगों को वे स्वीकार करते हैं, वे उनके लिए काम करने वाले होते हैं।
स्पष्ट रूप से, केवल सिफारिशें ही सबसे अच्छे स्कूलों में वास्तव में मायने रखती हैं। मानकीकृत परीक्षणों का कोई मूल्य नहीं है, और ग्रेड का थोड़ा। निबंध मुख्य रूप से खुद को कुछ बेवकूफी कहकर अयोग्य ठहराने का एक अवसर है। प्रोफेसर केवल सिफारिशों पर भरोसा करते हैं, विशेष रूप से उन लोगों से जिन्हें वे जानते हैं। [6]
इसलिए यदि आप पीएचडी कार्यक्रम में प्रवेश लेना चाहते हैं, तो कुंजी है अपने प्रोफेसरों को प्रभावित करना। और मेरे प्रोफेसर दोस्तों से मुझे पता है कि उन्हें क्या प्रभावित करता है: केवल उन्हें प्रभावित करने की कोशिश नहीं करना। उन्हें अच्छे ग्रेड पाने वाले छात्रों या अपने शोध सहायकों के रूप में काम करने की इच्छा रखने वाले छात्रों से प्रभावित नहीं होता ताकि वे स्नातक स्कूल में प्रवेश ले सकें। उन्हें उन छात्रों से प्रभावित किया जाता है जो अच्छे ग्रेड प्राप्त करते हैं और अपने शोध सहायकों के रूप में काम करना चाहते हैं क्योंकि वे वास्तव में विषय में रुचि रखते हैं।
इसलिए कॉलेज में आप जो सबसे अच्छा काम कर सकते हैं, चाहे आप स्नातक स्कूल में जाना चाहते हों या बस हैकिंग में अच्छे होना चाहते हों, यह पता लगाना है कि आप वास्तव में क्या पसंद करते हैं। प्रोफेसरों को स्नातक स्कूल में प्रवेश लेने के लिए धोखा देना कठिन है, और समस्याओं को आपको हल करने के लिए धोखा देना असंभव है। कॉलेज वह जगह है जहाँ धोखा देना काम करना बंद कर देता है। इस बिंदु से, जब तक आप एक बड़ी कंपनी के लिए काम करने नहीं जाना चाहते, जो हाई स्कूल में लौटने के समान है, आगे बढ़ने का एकमात्र तरीका है जो आप पसंद करते हैं।
नोट्स
[1] कोई भी ऐसा प्रतीत नहीं होता कि इससे कोई फर्क पड़ा, जो दिखाता है कि आर्पानेट (जो इंटरनेट बन गया) 1984 में कितना अप्रासंगिक था।
[2] यही कारण है कि जब मैं एक नियोक्ता बना, तो मुझे GPA की परवाह नहीं थी। वास्तव में, हमने सक्रिय रूप से उन लोगों की तलाश की जो स्कूल से बाहर हो गए थे। हमने एक बार हार्वर्ड के चारों ओर पोस्टर लगाए, जिसमें लिखा था "क्या आप किसी प्रोजेक्ट पर काम करने में अपना सारा समय बिताने के कारण अपनी कक्षाओं में खराब प्रदर्शन के लिए निकाल दिए गए? हमारे लिए काम करने आएं!" हमने एक बच्चे को खोजने में सफल रहे जो ऐसा कर चुका था, और वह एक महान हैकर था।
जब हार्वर्ड स्नातकों को एक साल के लिए निकालता है, तो उन्हें नौकरियाँ मिलनी होती हैं। विचार यह है कि उन्हें यह दिखाना है कि असली दुनिया कितनी भयानक है, ताकि वे समझ सकें कि वे कॉलेज में कितने भाग्यशाली हैं। यह योजना उस व्यक्ति के साथ विफल हो गई जो हमारे लिए काम करने आया, क्योंकि उसने स्कूल में जितना मज़ा नहीं किया था, उससे अधिक मज़ा किया, और उस वर्ष स्टॉक विकल्पों से अपने प्रोफेसरों की सैलरी से अधिक कमाई की। इसलिए एक साल के अंत में पछताते हुए वापस लौटने के बजाय, उसने एक और साल की छुट्टी ली और यूरोप चला गया। वह अंततः लगभग 26 साल की उम्र में स्नातक हुआ।
[3] एरिक रेयमंड कहते हैं कि हैकरों के लिए सबसे अच्छे उपमा सेट सिद्धांत, संयोजन और ग्राफ सिद्धांत में हैं।
ट्रेवर ब्लैकवेल आपको याद दिलाते हैं कि गणित की कक्षाएँ गणित के प्रमुखों के लिए निर्धारित की गई हैं। "'इंजीनियरों के लिए गणित' की कक्षाएँ बहुत खराब थीं। वास्तव में, कोई भी 'इंजीनियरों के लिए x' खराब होता है, जहाँ x में गणित, कानून, लेखन और दृश्य डिजाइन शामिल हैं।"
[4] अन्य अत्यधिक अनुशंसित पुस्तकें: गणित क्या है?, द्वारा कौरंट और रॉबिन्स; ज्यामिति और कल्पना द्वारा हिल्बर्ट और कोहन-वॉसेन। और जो लोग ग्राफिक डिज़ाइन में रुचि रखते हैं, उनके लिए बर्न का यूक्लिड।
[5] यदि आप एक परिपूर्ण जीवन जीना चाहते हैं, तो करने वाली चीज़ यह होगी कि स्नातक स्कूल जाएँ, पहले वर्ष या दो में अपने शोध प्रबंध को गुप्त रूप से लिखें, और फिर अगले तीन वर्षों के लिए बस आनंद लें, एक बार में एक अध्याय छोड़ते हुए। यह संभावना स्नातक छात्रों के मुँह में पानी लाएगी, लेकिन मुझे कोई ऐसा नहीं पता जो इसे पूरा करने के लिए अनुशासन रखता हो।
[6] एक प्रोफेसर मित्र कहते हैं कि वे हर साल जो स्नातक छात्रों को स्वीकार करते हैं, उनमें से 15-20% "लंबी शॉट्स" होते हैं। लेकिन जो वह लंबी शॉट्स से मतलब रखते हैं, वे लोग हैं जिनके आवेदन हर तरह से परिपूर्ण होते हैं, सिवाय इसके कि प्रवेश समिति में कोई भी उन प्रोफेसरों को नहीं जानता जिन्होंने सिफारिशें लिखी हैं।
इसलिए यदि आप विज्ञान में स्नातक स्कूल में प्रवेश लेना चाहते हैं, तो आपको कहीं ऐसे कॉलेज में जाना होगा जहाँ वास्तविक शोध प्रोफेसर हों। अन्यथा, आप प्रवेश समितियों के लिए एक जोखिम भरी शर्त लगेंगे, चाहे आप कितने भी अच्छे क्यों न हों।
जिसका अर्थ है एक आश्चर्यजनक लेकिन स्पष्ट रूप से अनिवार्य परिणाम: छोटे उदार कला कॉलेजों का भविष्य अंधकारमय है। अधिकांश स्मार्ट हाई स्कूल के बच्चे कम से कम विज्ञान में जाने पर विचार करते हैं, भले ही वे अंततः ऐसा न करने का निर्णय लें। क्यों किसी ऐसे कॉलेज में जाना जो उनके विकल्पों को सीमित करता है?
धन्यवाद ट्रेवर ब्लैकवेल, एलेक्स ल्यूविन, जेसिका लिविंगस्टन, रॉबर्ट मॉरिस, एरिक रेयमंड, और कई गुमनाम CS प्रोफेसरों को इस पर ड्राफ्ट पढ़ने के लिए, और उन छात्रों को जिनके सवालों ने इसे शुरू किया।