- एक शांत शनिवार दोपहर, कोडिंग के लिए कुछ घंटे निकालकर प्रोजेक्ट में डूब जाने के इरादे से टर्मिनल खोला
- प्रोजेक्ट डायरेक्टरी में आधे-अधूरे लागू किए गए आइडिया और बीच में रुके हुए काम पड़े हैं
- चाहे कोई भी प्रोजेक्ट चुनें, मूल समस्या के साथ-साथ नए चैलेंज भी सामने आ जाते हैं
- IDE खोलकर नवीनतम बदलाव लाते हैं और commit history देखते हैं
- अधूरा frontend काम, अप्रत्याशित सीमाओं से टकराया हुआ library integration, और over-engineering की वजह से जटिल बना architecture जैसी चीज़ें दिखती हैं
- थोड़ा आगे बढ़ने के लिए घंटों तक code refactoring, debugging, CSS पर काम आदि करते हैं
- तय किया हुआ समय जल्दी बीत जाता है और अब सीट से उठने की तैयारी होती है
- शुरुआत आशावाद से हुई थी, लेकिन अब निराशा और अपनी अपर्याप्तता का एहसास होता है
- codebase अभी भी TODO comments और आधे-अधूरे features से भरा हुआ है
- जुनून, संघर्ष और निराशा का यह चक्र बहुत परिचित लगने लगता है
- प्रोजेक्ट Hydra प्रभाव: प्रगति करने पर भी नए चैलेंज लगातार पैदा होते रहते हैं
- यह पैटर्न टूटेगा नहीं, ऐसा लग सकता है, लेकिन इस दैत्य को काबू करने का तरीका खोजने का निश्चय किया जाता है
- अंतहीन शुरुआतों और असंतोषजनक बीच की स्थिति से बाहर निकलने की रणनीतियाँ खोजी जाएँगी
- पूरा करने की कला सीखकर, Hydra को हराकर, एक पूर्ण प्रोजेक्ट की संतुष्टि महसूस करना लक्ष्य है
प्रोजेक्ट Hydra का प्रलोभन
- जब प्रोजेक्ट प्रगति में होता है, तब उसमें असीम संभावनाएँ दिखाई देती हैं
- जिस क्षण किसी प्रोजेक्ट को "पूरा" घोषित किया जाता है, वह बाहरी और आंतरिक आलोचना के लिए खुल जाता है
- नए आइडिया का उत्साह और पूरा करने का डर, दोनों मिलकर प्रोजेक्ट में देरी करवाते हैं
- अधूरे प्रोजेक्ट अपनी संभावनाओं की वजह से ज़्यादा रोचक महसूस होते हैं
- नया प्रोजेक्ट शुरू करना, उसे पूरा करने की तुलना में आसान और अधिक productive लगता है
- जब तक कुछ करते हुए दिख रहे हैं, तब तक productive होने का भ्रम बना रहता है
- personal projects में deadline नहीं होती, इसलिए perfectionism में फँसना आसान है
- सफलता का डर भी मौजूद होता है
कभी पूरा न करने की कीमत
- किसी प्रोजेक्ट को पूरा करने से मिलने वाली संतुष्टि, उसे शुरू करने से तुलना ही नहीं की जा सकती
- अधूरे प्रोजेक्ट मानसिक बोझ बन जाते हैं
- प्रोजेक्ट पूरा करने की प्रक्रिया में मिलने वाले सबक, सिर्फ शुरू करने से मिलने वाले सबक से अलग होते हैं
- असली skill growth आख़िरी मुश्किल समस्याओं को हल करने वाली completion process में होती है
- अधूरे छोड़े गए प्रोजेक्ट आत्मविश्वास को कम कर सकते हैं
- प्रोजेक्ट के अंतिम चरण में optimization, refactoring जैसी मूल्यवान learning experiences होती हैं
- अधूरे प्रोजेक्ट मानसिक जगह घेरते हैं और रचनात्मकता व productivity को कम करते हैं
- पूरे किए गए प्रोजेक्ट feedback पाने का मौका देते हैं
- आप खुद को अपने पूर्ण प्रोजेक्ट को दुनिया के सामने लाने की खुशी से वंचित कर देते हैं
प्रोजेक्ट Hydra को काबू करने की रणनीतियाँ
- "पूरा" की परिभाषा तय करें: प्रोजेक्ट शुरू करने से पहले साफ़ करें कि "पूरा" होने का मतलब क्या है, और उसे दस्तावेज़ित करें ताकि scope creep रोका जा सके
- MVP को स्वीकार करें: पूर्णता को लक्ष्य न बनाकर "काफ़ी अच्छा" स्थिति को लक्ष्य बनाएँ। पहले basic version जारी करें, बाद में सुधार करें
- प्रोजेक्ट के लिए समय-सीमा तय करें: प्रोजेक्ट के लिए deadline रखें ताकि urgency बने और feature expansion रोका जा सके
- छोटे काम पूरे करने का अभ्यास करें: छोटे प्रोजेक्ट या कार्य नियमित रूप से पूरा करके "पूरा करने वाली मांसपेशी" को मज़बूत करें
- आइडिया और implementation को अलग रखें: नया आइडिया आते ही उसे तुरंत लागू न करें, बल्कि idea log में लिख लें
- पूरा होने का जश्न मनाएँ: हर बार प्रोजेक्ट पूरा होने पर उसका जश्न मनाएँ, ताकि सकारात्मक reinforcement मिले
- जवाबदेही अपनाएँ: प्रोजेक्ट पूरा करने की जिम्मेदारी बनाए रखने के लिए कोई partner ढूँढें या सार्वजनिक रूप से वादा करें
आगे की राह
- आदतों और सोचने के तरीके को बदलने में समय लगता है और लगातार प्रयास चाहिए
- नए प्रोजेक्ट का प्रलोभन या अपूर्णता का डर बना रह सकता है
- "पूरा करने वाली मांसपेशी" को विकसित करना महत्वपूर्ण है
- प्रोजेक्ट Hydra का सीधे सामना करें, planning रोकें और execution शुरू करें
GN⁺ की राय
- यह लेख उस अधूरे प्रोजेक्ट वाली समस्या को अच्छी तरह उठाता है जिससे हर developer जुड़ाव महसूस कर सकता है
- इसमें साफ़ बताया गया है कि प्रोजेक्ट पूरे क्यों नहीं हो पाते और इसके नकारात्मक असर क्या होते हैं
- यह व्यावहारिक और अमल करने योग्य समाधान रणनीतियाँ देता है, इसलिए उपयोगी लगता है
- यह development process के मनोवैज्ञानिक पहलू और motivation की अहमियत पर भी ज़ोर देता है
- perfectionism और नई चीज़ों के प्रलोभन जैसे developers की पुरानी समस्याओं को ईमानदारी से सामने रखना प्रभावशाली है
- Atomic Habits और Deep Work जैसी self-help किताबों के विचारों को development context में लागू करना भी दिलचस्प है
- personal project management में कठिनाई झेल रहे developers के लिए यह एक अनुशंसित लेख है
3 टिप्पणियां
वाह... ये वे बातें हैं जिन्हें मैं आमतौर पर बहुत महत्वपूर्ण मानता/मानती हूँ, और इतनी सहमति जगाने वाली बातों की लगातार श्रृंखला होने के कारण मैंने इसे सचमुच प्रशंसा के साथ पढ़ा! अभिव्यक्ति बस अलग है, लेकिन जब मिलते-जुलते विचार रखे गए हैं तो यह देखकर बहुत अच्छा लगा.
मैं अक्सर '60 प्रतिशत संतुष्टि' वाला वाक्यांश इस्तेमाल करता/करती हूँ। मेरा मानना है कि खासकर जिन लोगों में महत्वाकांक्षा और जुनून बहुत अधिक होता है, उन्हें अपने हिसाब से 60 प्रतिशत जैसी उस थोड़ी अस्पष्ट संतुष्टि के स्तर पर भी प्रोजेक्ट को खत्म करने की कोशिश करनी चाहिए, तभी वे खुद को बिगाड़ देने वाले perfectionism से बाहर निकल सकते हैं।
मैंने भी इसे पढ़ते हुए बहुत गहराई से सहमति महसूस की, लेकिन यह देखकर और भी हैरानी हुई कि कमेंट्स में किसी ने बिल्कुल मेरे जैसी अभिव्यक्ति इस्तेमाल की थी!
60 प्रतिशत का आंकड़ा वाकई बहुत सटीक है। इस insight के लिए धन्यवाद।