तकनीकों को फिर से बनाकर प्रोग्रामिंग में महारत हासिल करें
आप हर दिन ऐसे टूल्स का उपयोग करते हैं बिना यह जाने कि वे कैसे काम करते हैं। Frameworks और libraries जटिलता को छिपा देते हैं ताकि आप तेज़ी से काम कर सकें। इससे आपके ज्ञान में कमियाँ रह जाती हैं।
'build-your-own-x' तरीका इसे ठीक करता है। आप अपने द्वारा उपयोग किए जाने वाले किसी टूल का एक सरल संस्करण शून्य से (from scratch) बनाते हैं। आप तकनीक का उपयोग करना बंद कर देते हैं और उसे आर्किटेक्ट करना शुरू कर देते हैं।
यह क्यों काम करता है:
यह रहस्य को दूर करता है। आप टूल्स को जादू के रूप में देखना बंद कर देते हैं। आप सीखते हैं कि एक web server रिक्वेस्ट को कैसे रूट करता है या Git डेटा को कैसे स्टोर करता है।
यह बुनियादी बातें सिखाता है। एक server बनाना आपको sockets और HTTP के बारे में सीखने के लिए मजबूर करता है। एक hash map बनाना आपको collision resolution के बारे में सिखाता है। ये सॉफ्टवेयर के आधारभूत घटक (building blocks) हैं।
यह समस्या सुलझाने के कौशल (problem solving) में सुधार करता है। जब आप किसी चीज़ को शुरुआत से बनाते हैं, तो आप इंटरनेट से समाधान कॉपी नहीं कर सकते। आपको समस्याओं को छोटे हिस्सों में तोड़ना होगा और अपने स्वयं के उत्तर खोजने होंगे।
यह आत्मविश्वास बढ़ाता है। एक जटिल सिस्टम बनाना आपको बड़े प्रोजेक्ट्स को संभालने का कौशल प्रदान करता है।
यह सिद्धांत (theory) को लागू करता है। आप नेटवर्किंग और algorithms के बारे में क्लासरूम के पाठों को व्यावहारिक कौशल में बदल देते हैं।
आप छोटी शुरुआत कर सकते हैं। किसी database या command-line tool जैसे टूल को चुनें और उसके बुनियादी कार्यों को फिर से बनाने (replicate) का प्रयास करें।