- हम features जोड़ते समय या किसी खास हिस्से को optimize करते समय complexity को अब ध्यान में नहीं रखकर software को बर्बाद कर रहे हैं
- हम जटिल build systems के साथ software को बर्बाद कर रहे हैं
- हम बेहूदी dependency chains के साथ हर चीज़ को फुलाकर और नाज़ुक बनाकर software को बर्बाद कर रहे हैं
- हम नए programmers से "Don’t reinvent the wheel!" कहकर software को बर्बाद कर रहे हैं। लेकिन wheel को फिर से बनाना यह सीखने का तरीका है कि चीज़ें कैसे काम करती हैं, और एक नए, अलग wheel को बनाने का पहला कदम भी है
- हम API backward compatibility को अब ध्यान में नहीं रखकर software को बर्बाद कर रहे हैं
- हम पहले से काम कर रही चीज़ों को rewrite करने के लिए दबाव डालकर software को बर्बाद कर रहे हैं
- हम हर नई language, paradigm, framework आते ही उस पर कूद पड़कर software को बर्बाद कर रहे हैं
- हम मौजूदा जटिल libraries को संभालने की मुश्किल को, उसे खुद implement करने की तुलना में, हमेशा कम आँककर software को बर्बाद कर रहे हैं
- हम यह मानकर software को बर्बाद कर रहे हैं कि XYZ का de facto standard हमारी खास ज़रूरत के मुताबिक खुद implement की जा सकने वाली चीज़ से हमेशा बेहतर होता है
- हम यह दावा करके software को बर्बाद कर रहे हैं कि code comments बेकार हैं
- हम software को सिर्फ़ एक शुद्ध engineering discipline समझने की भूल करके software को बर्बाद कर रहे हैं
- हम ऐसे systems बनाकर software को बर्बाद कर रहे हैं जिन्हें अब छोटा नहीं किया जा सकता: किसी भी system में साधारण चीज़ें साधारण तरीके से हासिल की जानी चाहिए
- हम जितनी जल्दी हो सके code निकालने की कोशिश करते हुए, जितना अच्छा design किया हुआ code हो सके उतना बनाने की कोशिश न करके software को बर्बाद कर रहे हैं
- हम software को बर्बाद कर रहे हैं, और जो बचेगा वह अब hacking की खुशी नहीं देगा
7 टिप्पणियां
पहिए को दोबारा बनाना <-> जो पहले से लिखा जा रहा है उसे फिर से बनाना
क्या ये दोनों एक-दूसरे के बिल्कुल विपरीत अवधारणाएँ नहीं हैं?
कमेंट्स का बूम आने वाला है
बिलकुल relatable है हाहाहा जब भी नए जूनियर्स आते हैं... मैं सोचता रहता हूँ कि उन्हें कैसे सिखाऊँ। लगता है, यह एक अच्छा तरीका हो सकता है..
कृपया मारना बंद करें, प्लीज़ प्लीज़
....मैं बस चुप ही रहूंगा...
ऐसा लगता है कि इसमें Han Feizi द्वारा कही गई "देश के पतन के 10 संकेत" वाली बातों से काफ़ी समानताएँ हैं।
Hacker News राय
Jonathan Blow की एक talk याद दिलाती है। software को manage न किया जाए तो वह बाकी हर चीज़ की तरह degrade होता है
Dieter Rams के "अच्छे design के 10 सिद्धांत" याद आते हैं
2000s में company में काम करने का अनुभव साझा किया गया
कई परस्पर विरोधी राय हैं
पहली job का अनुभव साझा किया गया
software को बर्बाद करने के कारणों पर राय
हर कथन एक trade-off है
antirez का सम्मान है, लेकिन लगता है कि यह post ऐसे short statements से भरी है जो सुनने में अच्छे लगते हैं, पर discussion में टिक नहीं पाएंगे
complexity/dependency graph पर राय
software को बर्बाद करने वाले तत्व