मैंने एक चुनौतीपूर्ण कार्य हाथ में लिया है। वह है कुछ बदसूरत एंटरप्राइज़ C# कोड लेना और उसे Python में अनुवाद करना। इससे पहले कि मैं गहरा गोता लगाऊं, मुझे लगता है कि मुझे कुछ समझाने की ज़रूरत है।
यह C# प्रोजेक्ट कुछ मशीन लर्निंग मॉडल के लिए डेटा प्लंबिंग लेयर के रूप में कार्य करता है। जब आप डेटा सुनते हैं तो पहली चीज़ जो आपके दिमाग में आनी चाहिए वह है पायथन। दुर्भाग्य से यह मामला नहीं था, और इसे बेहतर बनाने के लिए यह अपाचे स्पार्क के लिए .NET एक्सटेंशन का उपयोग कर रहा है। इसे पायथन में स्थानांतरित करना समझ में आता है, क्योंकि यह समस्या के लिए गैर-मानक तकनीक का उपयोग कर रहा है, जिससे भविष्य की प्रतिभा को काम पर रखना मुश्किल हो जाता है। और अन्य स्पष्ट समस्याएं भी हैं, जो अन्य एंटरप्राइज़ ओओपी भाषाओं में भी आम हैं, जैसे अमूर्तता के एकाधिक स्तर, हर जगह विरासत, नियंत्रण का उलटा होना, फिर से ऐसी चीजें जो आप डेटा प्लंबिंग में नहीं करते हैं। और शैतान को आगे बढ़ाने के लिए, ठेकेदारों/सलाहकारों की मूल टीम (क्योंकि कुछ एंटरप्राइज़ सलाहकारों के अलावा सी# का उपयोग कौन करेगा) अगले महीने छोड़ने जा रही है।
बीटीडब्ल्यू, मैं नियोविम का उपयोग करता हूं, और मैं लगभग दो वर्षों से जीथब कोपायलट का उपयोग कर रहा हूं, जब से मुझे पूर्वावलोकन संस्करण मिला है तब से कोपायलट चैट (तकनीकी रूप से चैटजीपीटी) का भी उपयोग कर रहा हूं, इसलिए मैं किसी भी तरह से बिल्कुल नौसिखिया नहीं हूं, जब यह एलएलएम और कोड के लिए आता है।
क्लाउड 3.5 के साथ कोड करना कैसा लगता है, खैर इसमें कुछ अच्छे, बुरे और बदसूरत हिस्से हैं। लेकिन ज़्यादातर आपको पता नहीं होता कि क्या हो रहा है, भले ही आप शुरू से ही वही कार्यक्षमता लिखने में सक्षम हों।
क्लाउड 3.5 आश्चर्यजनक रूप से सही परिणाम देता है, हालांकि, कभी-कभी यह स्मार्ट बनने की कोशिश करता है, और विफल हो जाता है, लेकिन आप इसे समस्याओं को ठीक करने के लिए मार्गदर्शन कर सकते हैं। कुल मिलाकर यह प्रश्न पूछने के लिए एक अच्छा साथी है, और मेरे लिए, चूँकि मेरे पास एक सख्त वर्कफ़्लो था और मैंने बहुत सारे उदाहरणों और एजकेस के साथ एक परिष्कृत संकेत तैयार करने के लिए बहुत प्रयास किया था, मैं संतुष्ट से अधिक था। मैं C# कक्षा ले सकता हूं और महत्वपूर्ण भागों का पायथन में अनुवाद कर सकता हूं जिसके लिए बहुत कम अतिरिक्त निर्देशों की आवश्यकता होती है।
मैं आमतौर पर 12 घंटों के लिए कोड लिख सकता हूं, कभी-कभार बाथरूम ब्रेक के साथ और अपनी वाटर कैंटीन को फिर से भरने के लिए। और हाँ, जब मैं वास्तव में इसमें शामिल हो जाता हूँ तो मुझे भूख महसूस नहीं होती। क्लॉड के साथ मैं प्रवाह में आ गया, लेकिन लगभग 3 घंटे के बाद मुझे लगा कि मैं मर गया हूँ। इन 3 घंटों के दौरान मैंने बहुत सारे कोड तैयार किए, और मुझे उत्पादक महसूस हुआ, लेकिन यह नॉनस्टॉप कोड समीक्षा करने, बदलावों के लिए पूछने और अक्सर जो दस्तावेज़ तैयार किया गया था वह मान्य है या नहीं, उसे देखने जैसा था।
यदि आप एक कोडर हैं, तो संभवतः आप अपने द्वारा लिखे गए कोड से कुछ हद तक परिचित हैं। यह परिचय समय के साथ फीका पड़ जाता है, लेकिन यदि आप कोडबेस के साथ पर्याप्त समय तक काम करते हैं तो आपको अपना रास्ता पता चल जाता है। एलएलएम जनित कोड के साथ ऐसा नहीं होता है। मुझे बहुत कम समझ आ रहा था कि क्या हो रहा है। कई दिनों तक मैंने बहुत सारे कोड तैयार किए, प्रत्येक पंक्ति की समीक्षा की, समय-समय पर मैंने कुछ बदलाव का अनुरोध किया, लेकिन अंत में मुझे कुछ भी पता नहीं था कि वास्तव में क्या हो रहा है। अंत में कोडबेस एक अजनबी जैसा लगा, कुछ ऐसा जो मैंने नहीं लिखा। और चीजों को बदतर बनाने के लिए, वास्तविक कोड शैली असंगत थी, आप अलग-अलग बता सकते थे कि एक ही दिन में कौन सी फाइलें लिखी गईं, ऐसा लगा कि अलग-अलग लोगों ने इसे लिखा है।
मैंने इस पूर्ण विकसित एलएलएम कोडिंग दृष्टिकोण की समीक्षा करने, पुनर्विचार करने, इसमें बदलाव करने में बहुत समय बिताया, हालांकि परिणाम ज्यादातर समय सिर्फ कोड होता है, जो कुछ हद तक काम करता है, लेकिन आपको पता नहीं क्यों या कैसे। बड़ा सवाल यह है:
क्या यह एक ऐसे कोड बेस के साथ समाप्त होने के लायक है जिसके साथ आपको थोड़ा लगाव है, जो तुरंत महसूस होता है कि आपने इसे एक साल पहले एक समय के काल्पनिक सहयोगियों के साथ लिखा था।
संक्षेप में कहें तो, मुझे लगा कि मैंने अधिक कोड तैयार किया है, हालाँकि गुणवत्ता सामान्य से कम थी। कुछ मामलों में यह निम्न गुणवत्ता उचित है, खासकर यदि आपको इसकी परवाह नहीं है। लेकिन मुझे डर है कि वह समय आ रहा है, जहां हर कोडबेस रिकॉर्ड समय में "विरासत" बन जाएगा।
अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।
Copyright© 2022 湘ICP备2022001581号-3