टॉप वेब डेवलपर से जुड़ी समस्याओं के बारे में ज़्यादा जानें

डेवलपर की अलग-अलग समस्याओं के बारे में अहम जानकारी का कलेक्शन. यह जानकारी, अलग-अलग से एक बातचीत से इकट्ठा की जाती है.

कुछ महीने पहले, पॉल किनलान ने साल 2021 में डेवलपर के लिए मुख्य समस्याओं के बारे में पोस्ट किया था. इसलिए, हमें पिछली दो तिमाहियों के बारे में अपडेट के साथ इस लेख की शुरुआत करना सही रहेगा. रैंकिंग में थोड़ा बदलाव हुआ है, लेकिन रैंकिंग में कोई बदलाव नहीं हुआ है.

चुनौती साल 2021 की पहली तिमाही साल 2021 की दूसरी तिमाही 2021 की तीसरी तिमाही 2021 की चौथी तिमाही
वेब प्लैटफ़ॉर्म या वेब स्टैंडर्ड में होने वाले बदलावों के मुताबिक काम करना. 27% 26% 27% 22 प्रतिशत
बड़ी संख्या में नए और मौजूदा टूल या फ़्रेमवर्क को ध्यान में रखकर काम करना. 26% 26% 25% 21%
डिज़ाइन या अनुभव को सभी ब्राउज़र पर एक जैसा काम करने की सुविधा. 26% 28% 24% 21%
अलग-अलग ब्राउज़र में टेस्ट करना. 23% 24% 20% 20%
सुरक्षा से जुड़े तरीकों को समझना और उन्हें लागू करना. 23% 25% 20% 19%

जैसा कि पॉल के ब्लॉग पोस्ट में बताया गया है, हमें इन समस्याओं को हल करना होगा. ऐसा करने की एक बड़ी कोशिश के तहत, मेरे साथ काम करने वाले कादिर टोपल और मैंने 18 से ज़्यादा डेवलपर का इंटरव्यू लिया है. हमारा मकसद, डेवलपर की मुख्य समस्याओं की जांच करना और उन्हें ठीक करना शुरू करना है.

डेवलपर चर्चाएं

डिसक्लेमर: यह अहम जानकारी, डेवलपर के साथ हुई कुछ बातचीत के आधार पर दी गई है. "सभी" का इस्तेमाल करते समय या "कुछ" का मतलब, पूरी कम्यूनिटी के बजाय उन डेवलपर से है जिनका इंटरव्यू लिया गया. इस जानकारी का बड़े पैमाने पर आकलन करने के लिए, और रिसर्च की ज़रूरत है.

ये बातचीत, इस बात की याद दिलाती हैं कि वेब डेवलपर कम्यूनिटी कितनी बेहतरीन और अलग-अलग तरह की है. मुझे उन सभी डेवलपर को धन्यवाद देना है जिन्होंने हमसे बात की. कुछ डेवलपर को 25 सालों से ज़्यादा का अनुभव है, जबकि कुछ डेवलपर ने साल 2020 में ही इसकी शुरुआत की है. कुछ डेवलपर ने अपने करियर की शुरुआत कंप्यूटर साइंस की औपचारिक डिग्री से की थी. वहीं, कुछ डेवलपर ने स्वतंत्र तौर पर अपना करियर शुरू किया. कुछ डेवलपर सक्रिय रूप से यह खोजते रहते हैं कि नया क्या है और ब्राउज़र के रिलीज़ नोट पढ़कर करते हैं, जबकि कुछ डेवलपर अपने सहकर्मियों और दोस्तों के ज़रिए नई चीज़ों के बारे में सीखते हैं. कुछ लोगों को लगता है कि मुश्किल काम करना काम का हिस्सा है और चुनौतियों का सामना करना अच्छा लगता है, जबकि कुछ लोग अपना काम पूरा करना चाहते हैं. इन मुश्किल समस्याओं को हल करने के लिए, यह ज़रूरी है कि हमारे दिमाग में हर तरह के लोग शामिल हों!

सभी डेवलपर के बीच एक आम बात यह है कि वे सभी अपना काम करने के लिए किसी कॉन्टेंट मैनेजमेंट सिस्टम या फ़्रेमवर्क का इस्तेमाल करते हैं. WordPress, React, बूटस्ट्रैप, Angular, और Tailwind जैसे सभी डेवलपर के बारे में बताया गया था. इनमें से कोई भी डेवलपर प्रोडक्शन में वनिला वेब प्लैटफ़ॉर्म का इस्तेमाल नहीं कर रहा था. कोई प्रोजेक्ट शुरू करते समय फ़्रेमवर्क चुनना एक मुश्किल काम है. डेवलपर अक्सर गैर-तकनीकी ज़रूरतों को ध्यान में रखते हैं. उदाहरण के लिए, क्या उस फ़्रेमवर्क के साथ काम करने के लिए, किसी डेवलपर की मदद लेना आसान होगा. अगर समाधान में फ़्रेमवर्क और सीएमएस शामिल नहीं किए जाते हैं, तो हम डेवलपर की समस्याओं को बेहतर नहीं बना सकते.

अगर हम वेब प्लैटफ़ॉर्म की बात करें, तो ज़्यादातर डेवलपर यह समझते हैं कि प्लैटफ़ॉर्म एक ऐसी चीज़ है जिसे वे डेवलप कर रहे हैं. इसमें न सिर्फ़ वेब प्लैटफ़ॉर्म की क्लासिक तरीके से परिभाषा, बल्कि सीएमएस, फ़्रेमवर्क, टूल, और पॉलीफ़िल भी शामिल हैं. कई मामलों में, उन्हें अप-टू-डेट रखना सबसे बड़ी मुश्किलें होती है. इससे उस सवाल का हमारा मतलब बदल गया. अब हम जानते हैं कि हमें अपने सर्वे को अपडेट करना होगा, ताकि उसे अलग-अलग हिस्सों में बांटा जा सके और उनके बारे में ज़्यादा साफ़ तौर पर पता न चले.

वेब मानकों की परिभाषा, अस्पष्टता से जुड़ी दूसरी चीज़ है. जब मानकों का पालन करने से जुड़े उदाहरणों के बारे में पूछा गया, तो कई डेवलपर ने बताया कि इसके बजाय सबसे सही तरीके अपनाने में आने वाली दिक्कतें हैं. इस सर्वे में हमें इन चीज़ों के बारे में भी साफ़ तौर पर बताना होगा.

इस्तेमाल के कुछ उदाहरणों और पैटर्न को लागू करते समय, डेवलपर सबसे सही तरीके अपनाते हैं. ब्लॉग पोस्ट और StackOverflow का ज़िक्र सबसे सही तरीकों के सोर्स के तौर पर किया जाता है. हालांकि, डेवलपर अक्सर इस बारे में सोचते हैं कि क्या पढ़ी जा रही जानकारी वाकई सबसे सही है. साथ ही, क्या वह नई सुविधाओं और एपीआई के साथ अप-टू-डेट है. उन्हें इन लेखों को पढ़ने के लिए एक ज़्यादा आधिकारिक स्रोत चाहिए.

नए इस्तेमाल के उदाहरण चालू करने वाली सुविधाओं और एपीआई के साथ काम करते रहना छोटी समस्या है. डेवलपर को सुविधाओं, एपीआई, और प्लैटफ़ॉर्म में होने वाले बदलावों को लेकर ज़्यादा परेशानी होती है. इसकी वजह से सबसे सही तरीकों में बदलाव होता है.

ज़्यादातर डेवलपर मानते हैं कि साथ काम करना सबसे बड़ी चुनौतियों में से एक है. Compat 2021 और Interop 2022 जैसी कोशिशों से चीज़ें बेहतर हो रही हैं. हालांकि, यह साफ़ है कि डेवलपर को अभी यह समस्या हल नहीं हुई है.

ज़्यादातर डेवलपर, पॉलीफ़िल का इस्तेमाल किसी न किसी तरीके से करते हैं. हालांकि, कई मामलों में डेवलपर को इनके इस्तेमाल की जानकारी नहीं होती, क्योंकि पॉलीफ़िल को बेबल जैसे टूल या फ़्रेमवर्क की मदद से अपने-आप जोड़ा जा सकता है. जो लोग अपनी पॉलीफ़िल खुद मैनेज कर रहे हैं वे यह जानना चाहते हैं कि पॉलीफ़िल "अच्छा" है या नहीं परेशानी हो सकती है. डेवलपर ने बताया है कि NPM पर इंस्टॉल की संख्या और पॉलीफ़िल को बनाने वाले को सिग्नल के तौर पर इस्तेमाल किया गया है. कुछ डेवलपर ने बताया कि वे पॉलीफ़िल को हटाने के लिए काम कर रहे हैं, जो IE 11 पर काम करना बंद करने की वजह से गैर-ज़रूरी हो गया था.

फ़्रेमवर्क में फ़्रैगमेंटेशन की समस्याएं होती हैं. हमें ऐसी शिकायतें मिली थीं जिनमें डेवलपर "अटके हुए" थे पुराने वर्शन में ट्रांसफ़र किया जा सकता है और उस वजह से उन पर सीमित सुविधाएं ही इस्तेमाल की जा सकती हैं. हालांकि, उसी फ़्रेमवर्क के नए वर्शन पर माइग्रेट करने की प्रोसेस काफ़ी महंगा और सही साबित हो सकती है.

नतीजा

आधुनिक वेब डेवलपमेंट के कई तरीके हैं, जिनमें स्टैंडर्ड, ब्राउज़र, लाइब्रेरी, पॉलीफ़िल, कॉन्टेंट मैनेजमेंट सिस्टम, फ़्रेमवर्क, सबसे सही तरीके, और टूल शामिल हैं. यह विविधता वेब के बारे में बेहतरीन चीज़ों में से एक है, लेकिन अभी, यह हर डेवलपर के ऊपर है कि वे इसके हर टुकड़े को समझ सकें और यह जान सकें कि वे एक-दूसरे के साथ कैसे काम करते हैं.

मुझे लगता है कि क्या कोई ऐसा तरीका है जिससे डेवलपर को इस बारे में साफ़ तौर पर जानकारी मिल सके कि हर चीज़ एक-दूसरे से कैसे जुड़ी हुई है और विविधता पर समझौता किए बिना हर चीज़ एक-दूसरे से किस तरह जुड़ी हुई है. यह एक बड़ी, जटिल समस्या है और इसे एक साथ कर पाना मुश्किल है. इसकी शुरुआत कैसे की जाए?

अगर आपके पास कोई व्यू और राय है, तो उसे शेयर करें. मुझे भी आपसे बात करके खुशी होगी. मैं बातचीत के लिए बुकिंग करने का तरीक़ा सेट अप करूँगी. हालाँकि, इस दौरान मेरे DM Twitter पर खुले रहेंगे. हमसे संपर्क करें और हम चैट करने का समय निकालें!